@foundation0/git 1.0.0 → 1.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (117) hide show
  1. package/{packages/git/README.md → README.md} +14 -5
  2. package/{packages/git/mcp → mcp}/README.md +3 -1
  3. package/{packages/git/mcp → mcp}/cli.mjs +0 -0
  4. package/package.json +43 -13
  5. package/{packages/git/src → src}/git-service-api.ts +3 -0
  6. package/{packages/git/src → src}/index.ts +8 -0
  7. package/src/label-management.ts +587 -0
  8. package/src/platform/config.ts +60 -0
  9. package/.codex.example/config.toml +0 -10
  10. package/.env.example +0 -10
  11. package/packages/fs/README.md +0 -47
  12. package/packages/fs/node_modules/.bin/f0-git-mcp +0 -21
  13. package/packages/fs/node_modules/.bin/f0-git-mcp-server +0 -21
  14. package/packages/fs/node_modules/.bin/f0-git-mcp-server.CMD +0 -12
  15. package/packages/fs/node_modules/.bin/f0-git-mcp-server.ps1 +0 -41
  16. package/packages/fs/node_modules/.bin/f0-git-mcp.CMD +0 -12
  17. package/packages/fs/node_modules/.bin/f0-git-mcp.ps1 +0 -41
  18. package/packages/fs/node_modules/.bin/tsc +0 -21
  19. package/packages/fs/node_modules/.bin/tsc.CMD +0 -12
  20. package/packages/fs/node_modules/.bin/tsc.ps1 +0 -41
  21. package/packages/fs/node_modules/.bin/tsserver +0 -21
  22. package/packages/fs/node_modules/.bin/tsserver.CMD +0 -12
  23. package/packages/fs/node_modules/.bin/tsserver.ps1 +0 -41
  24. package/packages/fs/node_modules/.bin/vite +0 -21
  25. package/packages/fs/node_modules/.bin/vite.CMD +0 -12
  26. package/packages/fs/node_modules/.bin/vite.ps1 +0 -41
  27. package/packages/fs/node_modules/.bin/vitest +0 -21
  28. package/packages/fs/node_modules/.bin/vitest.CMD +0 -12
  29. package/packages/fs/node_modules/.bin/vitest.ps1 +0 -41
  30. package/packages/fs/package.json +0 -28
  31. package/packages/fs/src/cli.ts +0 -74
  32. package/packages/fs/src/git-fs.ts +0 -705
  33. package/packages/fs/src/index.ts +0 -33
  34. package/packages/fs/src/mount.ts +0 -297
  35. package/packages/fs/tsconfig.json +0 -7
  36. package/packages/git/mcp/tests/e2e/git-mcp-e2e.spec.ts +0 -157
  37. package/packages/git/mcp/tests/e2e/server.fixture.ts +0 -109
  38. package/packages/git/node_modules/.bin/tsc +0 -21
  39. package/packages/git/node_modules/.bin/tsc.CMD +0 -12
  40. package/packages/git/node_modules/.bin/tsc.ps1 +0 -41
  41. package/packages/git/node_modules/.bin/tsserver +0 -21
  42. package/packages/git/node_modules/.bin/tsserver.CMD +0 -12
  43. package/packages/git/node_modules/.bin/tsserver.ps1 +0 -41
  44. package/packages/git/node_modules/.bin/vite +0 -21
  45. package/packages/git/node_modules/.bin/vite.CMD +0 -12
  46. package/packages/git/node_modules/.bin/vite.ps1 +0 -41
  47. package/packages/git/node_modules/.bin/vitest +0 -21
  48. package/packages/git/node_modules/.bin/vitest.CMD +0 -12
  49. package/packages/git/node_modules/.bin/vitest.ps1 +0 -41
  50. package/packages/git/node_modules/.vite/vitest/results.json +0 -1
  51. package/packages/git/package.json +0 -60
  52. package/packages/git/scripts/create-issue.mjs +0 -93
  53. package/packages/git/scripts/extract-git-spec.mjs +0 -234
  54. package/packages/git/scripts/fetch-gitea-swagger.mjs +0 -22
  55. package/packages/git/src/platform/config.ts +0 -140
  56. package/packages/git/tests/api.spec.ts +0 -55
  57. package/packages/git/tests/e2e/git-service-feature-e2e.spec.ts +0 -232
  58. package/packages/git/tests/git-service-api-object.spec.ts +0 -97
  59. package/packages/git/tests/git-service-feature-matrix.spec.ts +0 -182
  60. package/packages/git/tests/issue-dependencies.spec.ts +0 -81
  61. package/packages/git/tsconfig.json +0 -7
  62. package/packages/git/vitest.config.ts +0 -7
  63. package/packages/utils/package.json +0 -9
  64. package/packages/utils/src/awk.ts +0 -6
  65. package/packages/utils/src/cat.ts +0 -6
  66. package/packages/utils/src/cd.ts +0 -6
  67. package/packages/utils/src/chgrp.ts +0 -6
  68. package/packages/utils/src/chmod.ts +0 -6
  69. package/packages/utils/src/chown.ts +0 -6
  70. package/packages/utils/src/cp.ts +0 -6
  71. package/packages/utils/src/curl.ts +0 -6
  72. package/packages/utils/src/cut.ts +0 -6
  73. package/packages/utils/src/date.ts +0 -6
  74. package/packages/utils/src/echo.ts +0 -6
  75. package/packages/utils/src/find.ts +0 -6
  76. package/packages/utils/src/grep.ts +0 -6
  77. package/packages/utils/src/gunzip.ts +0 -6
  78. package/packages/utils/src/gzip.ts +0 -6
  79. package/packages/utils/src/head.ts +0 -6
  80. package/packages/utils/src/hostname.ts +0 -6
  81. package/packages/utils/src/index.ts +0 -37
  82. package/packages/utils/src/ls.ts +0 -6
  83. package/packages/utils/src/mkdir.ts +0 -6
  84. package/packages/utils/src/mv.ts +0 -6
  85. package/packages/utils/src/ping.ts +0 -6
  86. package/packages/utils/src/pwd.ts +0 -6
  87. package/packages/utils/src/rm.ts +0 -6
  88. package/packages/utils/src/rmdir.ts +0 -6
  89. package/packages/utils/src/sed.ts +0 -6
  90. package/packages/utils/src/sort.ts +0 -6
  91. package/packages/utils/src/tail.ts +0 -6
  92. package/packages/utils/src/tar.ts +0 -6
  93. package/packages/utils/src/touch.ts +0 -6
  94. package/packages/utils/src/tr.ts +0 -6
  95. package/packages/utils/src/uname.ts +0 -6
  96. package/packages/utils/src/uniq.ts +0 -6
  97. package/packages/utils/src/unzip.ts +0 -6
  98. package/packages/utils/src/util.ts +0 -4
  99. package/packages/utils/src/wc.ts +0 -6
  100. package/packages/utils/src/wget.ts +0 -6
  101. package/packages/utils/src/whoami.ts +0 -6
  102. package/packages/utils/src/zip.ts +0 -6
  103. package/pnpm-workspace.yaml +0 -2
  104. package/tsconfig.base.json +0 -12
  105. /package/{packages/git/gitea-swagger.json → gitea-swagger.json} +0 -0
  106. /package/{packages/git/mcp → mcp}/src/cli.ts +0 -0
  107. /package/{packages/git/mcp → mcp}/src/client.ts +0 -0
  108. /package/{packages/git/mcp → mcp}/src/index.ts +0 -0
  109. /package/{packages/git/mcp → mcp}/src/server.ts +0 -0
  110. /package/{packages/git/src → src}/api.ts +0 -0
  111. /package/{packages/git/src → src}/git-service-feature-spec.generated.ts +0 -0
  112. /package/{packages/git/src → src}/issue-dependencies.ts +0 -0
  113. /package/{packages/git/src → src}/platform/gitea-adapter.ts +0 -0
  114. /package/{packages/git/src → src}/platform/gitea-rules.ts +0 -0
  115. /package/{packages/git/src → src}/platform/index.ts +0 -0
  116. /package/{packages/git/src → src}/repository.ts +0 -0
  117. /package/{packages/git/src → src}/spec-mock.ts +0 -0
@@ -1,21 +0,0 @@
1
- #!/bin/sh
2
- basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3
-
4
- case `uname` in
5
- *CYGWIN*|*MINGW*|*MSYS*)
6
- if command -v cygpath > /dev/null 2>&1; then
7
- basedir=`cygpath -w "$basedir"`
8
- fi
9
- ;;
10
- esac
11
-
12
- if [ -z "$NODE_PATH" ]; then
13
- export NODE_PATH="/mnt/c/Users/marko/Dev/F0/git/packages/git/mcp/node_modules:/mnt/c/Users/marko/Dev/F0/git/packages/git/node_modules:/mnt/c/Users/marko/Dev/F0/git/packages/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules:/mnt/c/Users/marko/Dev/F0/node_modules:/mnt/c/Users/marko/Dev/node_modules:/mnt/c/Users/marko/node_modules:/mnt/c/Users/node_modules:/mnt/c/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/node_modules"
14
- else
15
- export NODE_PATH="/mnt/c/Users/marko/Dev/F0/git/packages/git/mcp/node_modules:/mnt/c/Users/marko/Dev/F0/git/packages/git/node_modules:/mnt/c/Users/marko/Dev/F0/git/packages/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules:/mnt/c/Users/marko/Dev/F0/node_modules:/mnt/c/Users/marko/Dev/node_modules:/mnt/c/Users/marko/node_modules:/mnt/c/Users/node_modules:/mnt/c/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/node_modules:$NODE_PATH"
16
- fi
17
- if [ -x "$basedir/node" ]; then
18
- exec "$basedir/node" "$basedir/../@foundation0/git/mcp/cli.mjs" "$@"
19
- else
20
- exec node "$basedir/../@foundation0/git/mcp/cli.mjs" "$@"
21
- fi
@@ -1,21 +0,0 @@
1
- #!/bin/sh
2
- basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3
-
4
- case `uname` in
5
- *CYGWIN*|*MINGW*|*MSYS*)
6
- if command -v cygpath > /dev/null 2>&1; then
7
- basedir=`cygpath -w "$basedir"`
8
- fi
9
- ;;
10
- esac
11
-
12
- if [ -z "$NODE_PATH" ]; then
13
- export NODE_PATH="/mnt/c/Users/marko/Dev/F0/git/packages/git/mcp/node_modules:/mnt/c/Users/marko/Dev/F0/git/packages/git/node_modules:/mnt/c/Users/marko/Dev/F0/git/packages/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules:/mnt/c/Users/marko/Dev/F0/node_modules:/mnt/c/Users/marko/Dev/node_modules:/mnt/c/Users/marko/node_modules:/mnt/c/Users/node_modules:/mnt/c/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/node_modules"
14
- else
15
- export NODE_PATH="/mnt/c/Users/marko/Dev/F0/git/packages/git/mcp/node_modules:/mnt/c/Users/marko/Dev/F0/git/packages/git/node_modules:/mnt/c/Users/marko/Dev/F0/git/packages/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules:/mnt/c/Users/marko/Dev/F0/node_modules:/mnt/c/Users/marko/Dev/node_modules:/mnt/c/Users/marko/node_modules:/mnt/c/Users/node_modules:/mnt/c/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/node_modules:$NODE_PATH"
16
- fi
17
- if [ -x "$basedir/node" ]; then
18
- exec "$basedir/node" "$basedir/../@foundation0/git/mcp/cli.mjs" "$@"
19
- else
20
- exec node "$basedir/../@foundation0/git/mcp/cli.mjs" "$@"
21
- fi
@@ -1,12 +0,0 @@
1
- @SETLOCAL
2
- @IF NOT DEFINED NODE_PATH (
3
- @SET "NODE_PATH=C:\Users\marko\Dev\F0\git\packages\git\mcp\node_modules;C:\Users\marko\Dev\F0\git\packages\git\node_modules;C:\Users\marko\Dev\F0\git\packages\node_modules;C:\Users\marko\Dev\F0\git\node_modules;C:\Users\marko\Dev\F0\node_modules;C:\Users\marko\Dev\node_modules;C:\Users\marko\node_modules;C:\Users\node_modules;C:\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\node_modules"
4
- ) ELSE (
5
- @SET "NODE_PATH=C:\Users\marko\Dev\F0\git\packages\git\mcp\node_modules;C:\Users\marko\Dev\F0\git\packages\git\node_modules;C:\Users\marko\Dev\F0\git\packages\node_modules;C:\Users\marko\Dev\F0\git\node_modules;C:\Users\marko\Dev\F0\node_modules;C:\Users\marko\Dev\node_modules;C:\Users\marko\node_modules;C:\Users\node_modules;C:\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\node_modules;%NODE_PATH%"
6
- )
7
- @IF EXIST "%~dp0\node.exe" (
8
- "%~dp0\node.exe" "%~dp0\..\@foundation0\git\mcp\cli.mjs" %*
9
- ) ELSE (
10
- @SET PATHEXT=%PATHEXT:;.JS;=;%
11
- node "%~dp0\..\@foundation0\git\mcp\cli.mjs" %*
12
- )
@@ -1,41 +0,0 @@
1
- #!/usr/bin/env pwsh
2
- $basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
3
-
4
- $exe=""
5
- $pathsep=":"
6
- $env_node_path=$env:NODE_PATH
7
- $new_node_path="C:\Users\marko\Dev\F0\git\packages\git\mcp\node_modules;C:\Users\marko\Dev\F0\git\packages\git\node_modules;C:\Users\marko\Dev\F0\git\packages\node_modules;C:\Users\marko\Dev\F0\git\node_modules;C:\Users\marko\Dev\F0\node_modules;C:\Users\marko\Dev\node_modules;C:\Users\marko\node_modules;C:\Users\node_modules;C:\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\node_modules"
8
- if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
9
- # Fix case when both the Windows and Linux builds of Node
10
- # are installed in the same directory
11
- $exe=".exe"
12
- $pathsep=";"
13
- } else {
14
- $new_node_path="/mnt/c/Users/marko/Dev/F0/git/packages/git/mcp/node_modules:/mnt/c/Users/marko/Dev/F0/git/packages/git/node_modules:/mnt/c/Users/marko/Dev/F0/git/packages/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules:/mnt/c/Users/marko/Dev/F0/node_modules:/mnt/c/Users/marko/Dev/node_modules:/mnt/c/Users/marko/node_modules:/mnt/c/Users/node_modules:/mnt/c/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/node_modules"
15
- }
16
- if ([string]::IsNullOrEmpty($env_node_path)) {
17
- $env:NODE_PATH=$new_node_path
18
- } else {
19
- $env:NODE_PATH="$new_node_path$pathsep$env_node_path"
20
- }
21
-
22
- $ret=0
23
- if (Test-Path "$basedir/node$exe") {
24
- # Support pipeline input
25
- if ($MyInvocation.ExpectingInput) {
26
- $input | & "$basedir/node$exe" "$basedir/../@foundation0/git/mcp/cli.mjs" $args
27
- } else {
28
- & "$basedir/node$exe" "$basedir/../@foundation0/git/mcp/cli.mjs" $args
29
- }
30
- $ret=$LASTEXITCODE
31
- } else {
32
- # Support pipeline input
33
- if ($MyInvocation.ExpectingInput) {
34
- $input | & "node$exe" "$basedir/../@foundation0/git/mcp/cli.mjs" $args
35
- } else {
36
- & "node$exe" "$basedir/../@foundation0/git/mcp/cli.mjs" $args
37
- }
38
- $ret=$LASTEXITCODE
39
- }
40
- $env:NODE_PATH=$env_node_path
41
- exit $ret
@@ -1,12 +0,0 @@
1
- @SETLOCAL
2
- @IF NOT DEFINED NODE_PATH (
3
- @SET "NODE_PATH=C:\Users\marko\Dev\F0\git\packages\git\mcp\node_modules;C:\Users\marko\Dev\F0\git\packages\git\node_modules;C:\Users\marko\Dev\F0\git\packages\node_modules;C:\Users\marko\Dev\F0\git\node_modules;C:\Users\marko\Dev\F0\node_modules;C:\Users\marko\Dev\node_modules;C:\Users\marko\node_modules;C:\Users\node_modules;C:\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\node_modules"
4
- ) ELSE (
5
- @SET "NODE_PATH=C:\Users\marko\Dev\F0\git\packages\git\mcp\node_modules;C:\Users\marko\Dev\F0\git\packages\git\node_modules;C:\Users\marko\Dev\F0\git\packages\node_modules;C:\Users\marko\Dev\F0\git\node_modules;C:\Users\marko\Dev\F0\node_modules;C:\Users\marko\Dev\node_modules;C:\Users\marko\node_modules;C:\Users\node_modules;C:\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\node_modules;%NODE_PATH%"
6
- )
7
- @IF EXIST "%~dp0\node.exe" (
8
- "%~dp0\node.exe" "%~dp0\..\@foundation0\git\mcp\cli.mjs" %*
9
- ) ELSE (
10
- @SET PATHEXT=%PATHEXT:;.JS;=;%
11
- node "%~dp0\..\@foundation0\git\mcp\cli.mjs" %*
12
- )
@@ -1,41 +0,0 @@
1
- #!/usr/bin/env pwsh
2
- $basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
3
-
4
- $exe=""
5
- $pathsep=":"
6
- $env_node_path=$env:NODE_PATH
7
- $new_node_path="C:\Users\marko\Dev\F0\git\packages\git\mcp\node_modules;C:\Users\marko\Dev\F0\git\packages\git\node_modules;C:\Users\marko\Dev\F0\git\packages\node_modules;C:\Users\marko\Dev\F0\git\node_modules;C:\Users\marko\Dev\F0\node_modules;C:\Users\marko\Dev\node_modules;C:\Users\marko\node_modules;C:\Users\node_modules;C:\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\node_modules"
8
- if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
9
- # Fix case when both the Windows and Linux builds of Node
10
- # are installed in the same directory
11
- $exe=".exe"
12
- $pathsep=";"
13
- } else {
14
- $new_node_path="/mnt/c/Users/marko/Dev/F0/git/packages/git/mcp/node_modules:/mnt/c/Users/marko/Dev/F0/git/packages/git/node_modules:/mnt/c/Users/marko/Dev/F0/git/packages/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules:/mnt/c/Users/marko/Dev/F0/node_modules:/mnt/c/Users/marko/Dev/node_modules:/mnt/c/Users/marko/node_modules:/mnt/c/Users/node_modules:/mnt/c/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/node_modules"
15
- }
16
- if ([string]::IsNullOrEmpty($env_node_path)) {
17
- $env:NODE_PATH=$new_node_path
18
- } else {
19
- $env:NODE_PATH="$new_node_path$pathsep$env_node_path"
20
- }
21
-
22
- $ret=0
23
- if (Test-Path "$basedir/node$exe") {
24
- # Support pipeline input
25
- if ($MyInvocation.ExpectingInput) {
26
- $input | & "$basedir/node$exe" "$basedir/../@foundation0/git/mcp/cli.mjs" $args
27
- } else {
28
- & "$basedir/node$exe" "$basedir/../@foundation0/git/mcp/cli.mjs" $args
29
- }
30
- $ret=$LASTEXITCODE
31
- } else {
32
- # Support pipeline input
33
- if ($MyInvocation.ExpectingInput) {
34
- $input | & "node$exe" "$basedir/../@foundation0/git/mcp/cli.mjs" $args
35
- } else {
36
- & "node$exe" "$basedir/../@foundation0/git/mcp/cli.mjs" $args
37
- }
38
- $ret=$LASTEXITCODE
39
- }
40
- $env:NODE_PATH=$env_node_path
41
- exit $ret
@@ -1,21 +0,0 @@
1
- #!/bin/sh
2
- basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3
-
4
- case `uname` in
5
- *CYGWIN*|*MINGW*|*MSYS*)
6
- if command -v cygpath > /dev/null 2>&1; then
7
- basedir=`cygpath -w "$basedir"`
8
- fi
9
- ;;
10
- esac
11
-
12
- if [ -z "$NODE_PATH" ]; then
13
- export NODE_PATH="/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/bin/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/typescript@5.9.3/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/node_modules"
14
- else
15
- export NODE_PATH="/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/bin/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/typescript@5.9.3/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/node_modules:$NODE_PATH"
16
- fi
17
- if [ -x "$basedir/node" ]; then
18
- exec "$basedir/node" "$basedir/../typescript/bin/tsc" "$@"
19
- else
20
- exec node "$basedir/../typescript/bin/tsc" "$@"
21
- fi
@@ -1,12 +0,0 @@
1
- @SETLOCAL
2
- @IF NOT DEFINED NODE_PATH (
3
- @SET "NODE_PATH=C:\Users\marko\Dev\F0\git\node_modules\.pnpm\typescript@5.9.3\node_modules\typescript\bin\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\typescript@5.9.3\node_modules\typescript\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\typescript@5.9.3\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\node_modules"
4
- ) ELSE (
5
- @SET "NODE_PATH=C:\Users\marko\Dev\F0\git\node_modules\.pnpm\typescript@5.9.3\node_modules\typescript\bin\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\typescript@5.9.3\node_modules\typescript\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\typescript@5.9.3\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\node_modules;%NODE_PATH%"
6
- )
7
- @IF EXIST "%~dp0\node.exe" (
8
- "%~dp0\node.exe" "%~dp0\..\typescript\bin\tsc" %*
9
- ) ELSE (
10
- @SET PATHEXT=%PATHEXT:;.JS;=;%
11
- node "%~dp0\..\typescript\bin\tsc" %*
12
- )
@@ -1,41 +0,0 @@
1
- #!/usr/bin/env pwsh
2
- $basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
3
-
4
- $exe=""
5
- $pathsep=":"
6
- $env_node_path=$env:NODE_PATH
7
- $new_node_path="C:\Users\marko\Dev\F0\git\node_modules\.pnpm\typescript@5.9.3\node_modules\typescript\bin\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\typescript@5.9.3\node_modules\typescript\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\typescript@5.9.3\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\node_modules"
8
- if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
9
- # Fix case when both the Windows and Linux builds of Node
10
- # are installed in the same directory
11
- $exe=".exe"
12
- $pathsep=";"
13
- } else {
14
- $new_node_path="/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/bin/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/typescript@5.9.3/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/node_modules"
15
- }
16
- if ([string]::IsNullOrEmpty($env_node_path)) {
17
- $env:NODE_PATH=$new_node_path
18
- } else {
19
- $env:NODE_PATH="$new_node_path$pathsep$env_node_path"
20
- }
21
-
22
- $ret=0
23
- if (Test-Path "$basedir/node$exe") {
24
- # Support pipeline input
25
- if ($MyInvocation.ExpectingInput) {
26
- $input | & "$basedir/node$exe" "$basedir/../typescript/bin/tsc" $args
27
- } else {
28
- & "$basedir/node$exe" "$basedir/../typescript/bin/tsc" $args
29
- }
30
- $ret=$LASTEXITCODE
31
- } else {
32
- # Support pipeline input
33
- if ($MyInvocation.ExpectingInput) {
34
- $input | & "node$exe" "$basedir/../typescript/bin/tsc" $args
35
- } else {
36
- & "node$exe" "$basedir/../typescript/bin/tsc" $args
37
- }
38
- $ret=$LASTEXITCODE
39
- }
40
- $env:NODE_PATH=$env_node_path
41
- exit $ret
@@ -1,21 +0,0 @@
1
- #!/bin/sh
2
- basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3
-
4
- case `uname` in
5
- *CYGWIN*|*MINGW*|*MSYS*)
6
- if command -v cygpath > /dev/null 2>&1; then
7
- basedir=`cygpath -w "$basedir"`
8
- fi
9
- ;;
10
- esac
11
-
12
- if [ -z "$NODE_PATH" ]; then
13
- export NODE_PATH="/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/bin/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/typescript@5.9.3/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/node_modules"
14
- else
15
- export NODE_PATH="/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/bin/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/typescript@5.9.3/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/node_modules:$NODE_PATH"
16
- fi
17
- if [ -x "$basedir/node" ]; then
18
- exec "$basedir/node" "$basedir/../typescript/bin/tsserver" "$@"
19
- else
20
- exec node "$basedir/../typescript/bin/tsserver" "$@"
21
- fi
@@ -1,12 +0,0 @@
1
- @SETLOCAL
2
- @IF NOT DEFINED NODE_PATH (
3
- @SET "NODE_PATH=C:\Users\marko\Dev\F0\git\node_modules\.pnpm\typescript@5.9.3\node_modules\typescript\bin\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\typescript@5.9.3\node_modules\typescript\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\typescript@5.9.3\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\node_modules"
4
- ) ELSE (
5
- @SET "NODE_PATH=C:\Users\marko\Dev\F0\git\node_modules\.pnpm\typescript@5.9.3\node_modules\typescript\bin\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\typescript@5.9.3\node_modules\typescript\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\typescript@5.9.3\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\node_modules;%NODE_PATH%"
6
- )
7
- @IF EXIST "%~dp0\node.exe" (
8
- "%~dp0\node.exe" "%~dp0\..\typescript\bin\tsserver" %*
9
- ) ELSE (
10
- @SET PATHEXT=%PATHEXT:;.JS;=;%
11
- node "%~dp0\..\typescript\bin\tsserver" %*
12
- )
@@ -1,41 +0,0 @@
1
- #!/usr/bin/env pwsh
2
- $basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
3
-
4
- $exe=""
5
- $pathsep=":"
6
- $env_node_path=$env:NODE_PATH
7
- $new_node_path="C:\Users\marko\Dev\F0\git\node_modules\.pnpm\typescript@5.9.3\node_modules\typescript\bin\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\typescript@5.9.3\node_modules\typescript\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\typescript@5.9.3\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\node_modules"
8
- if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
9
- # Fix case when both the Windows and Linux builds of Node
10
- # are installed in the same directory
11
- $exe=".exe"
12
- $pathsep=";"
13
- } else {
14
- $new_node_path="/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/bin/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/typescript@5.9.3/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/node_modules"
15
- }
16
- if ([string]::IsNullOrEmpty($env_node_path)) {
17
- $env:NODE_PATH=$new_node_path
18
- } else {
19
- $env:NODE_PATH="$new_node_path$pathsep$env_node_path"
20
- }
21
-
22
- $ret=0
23
- if (Test-Path "$basedir/node$exe") {
24
- # Support pipeline input
25
- if ($MyInvocation.ExpectingInput) {
26
- $input | & "$basedir/node$exe" "$basedir/../typescript/bin/tsserver" $args
27
- } else {
28
- & "$basedir/node$exe" "$basedir/../typescript/bin/tsserver" $args
29
- }
30
- $ret=$LASTEXITCODE
31
- } else {
32
- # Support pipeline input
33
- if ($MyInvocation.ExpectingInput) {
34
- $input | & "node$exe" "$basedir/../typescript/bin/tsserver" $args
35
- } else {
36
- & "node$exe" "$basedir/../typescript/bin/tsserver" $args
37
- }
38
- $ret=$LASTEXITCODE
39
- }
40
- $env:NODE_PATH=$env_node_path
41
- exit $ret
@@ -1,21 +0,0 @@
1
- #!/bin/sh
2
- basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3
-
4
- case `uname` in
5
- *CYGWIN*|*MINGW*|*MSYS*)
6
- if command -v cygpath > /dev/null 2>&1; then
7
- basedir=`cygpath -w "$basedir"`
8
- fi
9
- ;;
10
- esac
11
-
12
- if [ -z "$NODE_PATH" ]; then
13
- export NODE_PATH="/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/vite@5.4.21_@types+node@22.19.11/node_modules/vite/bin/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/vite@5.4.21_@types+node@22.19.11/node_modules/vite/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/vite@5.4.21_@types+node@22.19.11/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/node_modules"
14
- else
15
- export NODE_PATH="/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/vite@5.4.21_@types+node@22.19.11/node_modules/vite/bin/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/vite@5.4.21_@types+node@22.19.11/node_modules/vite/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/vite@5.4.21_@types+node@22.19.11/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/node_modules:$NODE_PATH"
16
- fi
17
- if [ -x "$basedir/node" ]; then
18
- exec "$basedir/node" "$basedir/../../../../node_modules/.pnpm/vite@5.4.21_@types+node@22.19.11/node_modules/vite/bin/vite.js" "$@"
19
- else
20
- exec node "$basedir/../../../../node_modules/.pnpm/vite@5.4.21_@types+node@22.19.11/node_modules/vite/bin/vite.js" "$@"
21
- fi
@@ -1,12 +0,0 @@
1
- @SETLOCAL
2
- @IF NOT DEFINED NODE_PATH (
3
- @SET "NODE_PATH=C:\Users\marko\Dev\F0\git\node_modules\.pnpm\vite@5.4.21_@types+node@22.19.11\node_modules\vite\bin\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\vite@5.4.21_@types+node@22.19.11\node_modules\vite\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\vite@5.4.21_@types+node@22.19.11\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\node_modules"
4
- ) ELSE (
5
- @SET "NODE_PATH=C:\Users\marko\Dev\F0\git\node_modules\.pnpm\vite@5.4.21_@types+node@22.19.11\node_modules\vite\bin\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\vite@5.4.21_@types+node@22.19.11\node_modules\vite\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\vite@5.4.21_@types+node@22.19.11\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\node_modules;%NODE_PATH%"
6
- )
7
- @IF EXIST "%~dp0\node.exe" (
8
- "%~dp0\node.exe" "%~dp0\..\..\..\..\node_modules\.pnpm\vite@5.4.21_@types+node@22.19.11\node_modules\vite\bin\vite.js" %*
9
- ) ELSE (
10
- @SET PATHEXT=%PATHEXT:;.JS;=;%
11
- node "%~dp0\..\..\..\..\node_modules\.pnpm\vite@5.4.21_@types+node@22.19.11\node_modules\vite\bin\vite.js" %*
12
- )
@@ -1,41 +0,0 @@
1
- #!/usr/bin/env pwsh
2
- $basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
3
-
4
- $exe=""
5
- $pathsep=":"
6
- $env_node_path=$env:NODE_PATH
7
- $new_node_path="C:\Users\marko\Dev\F0\git\node_modules\.pnpm\vite@5.4.21_@types+node@22.19.11\node_modules\vite\bin\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\vite@5.4.21_@types+node@22.19.11\node_modules\vite\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\vite@5.4.21_@types+node@22.19.11\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\node_modules"
8
- if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
9
- # Fix case when both the Windows and Linux builds of Node
10
- # are installed in the same directory
11
- $exe=".exe"
12
- $pathsep=";"
13
- } else {
14
- $new_node_path="/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/vite@5.4.21_@types+node@22.19.11/node_modules/vite/bin/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/vite@5.4.21_@types+node@22.19.11/node_modules/vite/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/vite@5.4.21_@types+node@22.19.11/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/node_modules"
15
- }
16
- if ([string]::IsNullOrEmpty($env_node_path)) {
17
- $env:NODE_PATH=$new_node_path
18
- } else {
19
- $env:NODE_PATH="$new_node_path$pathsep$env_node_path"
20
- }
21
-
22
- $ret=0
23
- if (Test-Path "$basedir/node$exe") {
24
- # Support pipeline input
25
- if ($MyInvocation.ExpectingInput) {
26
- $input | & "$basedir/node$exe" "$basedir/../../../../node_modules/.pnpm/vite@5.4.21_@types+node@22.19.11/node_modules/vite/bin/vite.js" $args
27
- } else {
28
- & "$basedir/node$exe" "$basedir/../../../../node_modules/.pnpm/vite@5.4.21_@types+node@22.19.11/node_modules/vite/bin/vite.js" $args
29
- }
30
- $ret=$LASTEXITCODE
31
- } else {
32
- # Support pipeline input
33
- if ($MyInvocation.ExpectingInput) {
34
- $input | & "node$exe" "$basedir/../../../../node_modules/.pnpm/vite@5.4.21_@types+node@22.19.11/node_modules/vite/bin/vite.js" $args
35
- } else {
36
- & "node$exe" "$basedir/../../../../node_modules/.pnpm/vite@5.4.21_@types+node@22.19.11/node_modules/vite/bin/vite.js" $args
37
- }
38
- $ret=$LASTEXITCODE
39
- }
40
- $env:NODE_PATH=$env_node_path
41
- exit $ret
@@ -1,21 +0,0 @@
1
- #!/bin/sh
2
- basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3
-
4
- case `uname` in
5
- *CYGWIN*|*MINGW*|*MSYS*)
6
- if command -v cygpath > /dev/null 2>&1; then
7
- basedir=`cygpath -w "$basedir"`
8
- fi
9
- ;;
10
- esac
11
-
12
- if [ -z "$NODE_PATH" ]; then
13
- export NODE_PATH="/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/vitest@2.1.9_@types+node@22.19.11/node_modules/vitest/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/vitest@2.1.9_@types+node@22.19.11/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/node_modules"
14
- else
15
- export NODE_PATH="/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/vitest@2.1.9_@types+node@22.19.11/node_modules/vitest/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/vitest@2.1.9_@types+node@22.19.11/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/node_modules:$NODE_PATH"
16
- fi
17
- if [ -x "$basedir/node" ]; then
18
- exec "$basedir/node" "$basedir/../vitest/vitest.mjs" "$@"
19
- else
20
- exec node "$basedir/../vitest/vitest.mjs" "$@"
21
- fi
@@ -1,12 +0,0 @@
1
- @SETLOCAL
2
- @IF NOT DEFINED NODE_PATH (
3
- @SET "NODE_PATH=C:\Users\marko\Dev\F0\git\node_modules\.pnpm\vitest@2.1.9_@types+node@22.19.11\node_modules\vitest\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\vitest@2.1.9_@types+node@22.19.11\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\node_modules"
4
- ) ELSE (
5
- @SET "NODE_PATH=C:\Users\marko\Dev\F0\git\node_modules\.pnpm\vitest@2.1.9_@types+node@22.19.11\node_modules\vitest\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\vitest@2.1.9_@types+node@22.19.11\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\node_modules;%NODE_PATH%"
6
- )
7
- @IF EXIST "%~dp0\node.exe" (
8
- "%~dp0\node.exe" "%~dp0\..\vitest\vitest.mjs" %*
9
- ) ELSE (
10
- @SET PATHEXT=%PATHEXT:;.JS;=;%
11
- node "%~dp0\..\vitest\vitest.mjs" %*
12
- )
@@ -1,41 +0,0 @@
1
- #!/usr/bin/env pwsh
2
- $basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
3
-
4
- $exe=""
5
- $pathsep=":"
6
- $env_node_path=$env:NODE_PATH
7
- $new_node_path="C:\Users\marko\Dev\F0\git\node_modules\.pnpm\vitest@2.1.9_@types+node@22.19.11\node_modules\vitest\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\vitest@2.1.9_@types+node@22.19.11\node_modules;C:\Users\marko\Dev\F0\git\node_modules\.pnpm\node_modules"
8
- if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
9
- # Fix case when both the Windows and Linux builds of Node
10
- # are installed in the same directory
11
- $exe=".exe"
12
- $pathsep=";"
13
- } else {
14
- $new_node_path="/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/vitest@2.1.9_@types+node@22.19.11/node_modules/vitest/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/vitest@2.1.9_@types+node@22.19.11/node_modules:/mnt/c/Users/marko/Dev/F0/git/node_modules/.pnpm/node_modules"
15
- }
16
- if ([string]::IsNullOrEmpty($env_node_path)) {
17
- $env:NODE_PATH=$new_node_path
18
- } else {
19
- $env:NODE_PATH="$new_node_path$pathsep$env_node_path"
20
- }
21
-
22
- $ret=0
23
- if (Test-Path "$basedir/node$exe") {
24
- # Support pipeline input
25
- if ($MyInvocation.ExpectingInput) {
26
- $input | & "$basedir/node$exe" "$basedir/../vitest/vitest.mjs" $args
27
- } else {
28
- & "$basedir/node$exe" "$basedir/../vitest/vitest.mjs" $args
29
- }
30
- $ret=$LASTEXITCODE
31
- } else {
32
- # Support pipeline input
33
- if ($MyInvocation.ExpectingInput) {
34
- $input | & "node$exe" "$basedir/../vitest/vitest.mjs" $args
35
- } else {
36
- & "node$exe" "$basedir/../vitest/vitest.mjs" $args
37
- }
38
- $ret=$LASTEXITCODE
39
- }
40
- $env:NODE_PATH=$env_node_path
41
- exit $ret
@@ -1,28 +0,0 @@
1
- {
2
- "name": "@workspace/fs",
3
- "version": "0.1.0",
4
- "private": true,
5
- "type": "module",
6
- "scripts": {
7
- "start": "bun run ./src/cli.ts",
8
- "test": "bunx vitest run"
9
- },
10
- "exports": {
11
- ".": "./src/index.ts",
12
- "./mount": "./src/mount.ts",
13
- "./cli": "./src/cli.ts"
14
- },
15
- "bin": {
16
- "git-fs-mount": "./src/cli.ts"
17
- },
18
- "dependencies": {
19
- "@foundation0/git": "workspace:*"
20
- },
21
- "devDependencies": {
22
- "@types/node": "^22.10.2",
23
- "fuse-bindings": "^2.11.2",
24
- "node-fuse-bindings": "^2.12.4",
25
- "typescript": "^5.5.4",
26
- "vitest": "^2.1.8"
27
- }
28
- }
@@ -1,74 +0,0 @@
1
- import { mountGitFs } from './mount'
2
-
3
- const SUPPORTED_BACKENDS = ['auto', 'fuse-bindings', 'node-fuse-bindings', 'dokan', 'winfsp'] as const
4
-
5
- type CliBackend = (typeof SUPPORTED_BACKENDS)[number]
6
-
7
- const getOption = (name: string): string | undefined => {
8
- const longForm = process.argv.find((entry) => entry.startsWith(`${name}=`))
9
- if (longForm) {
10
- const [, value] = longForm.split('=', 2)
11
- return value
12
- }
13
-
14
- const index = process.argv.findIndex((entry) => entry === name)
15
- if (index >= 0 && index + 1 < process.argv.length) {
16
- const next = process.argv[index + 1]
17
- if (!next.startsWith('--')) {
18
- return next
19
- }
20
- }
21
-
22
- return undefined
23
- }
24
-
25
- const hasFlag = (name: string): boolean =>
26
- process.argv.includes(name)
27
-
28
- const mountPoint = getOption('--mount')
29
-
30
- if (!mountPoint) {
31
- throw new Error('Missing required --mount path argument')
32
- }
33
-
34
- const owner = getOption('--default-owner') ?? process.env.GITEA_TEST_OWNER ?? 'example-org'
35
- const repo = getOption('--default-repo') ?? process.env.GITEA_TEST_REPO ?? 'example-repo'
36
- const host = getOption('--gitea-host') ?? process.env.GITEA_HOST ?? 'https://gitea.example.com'
37
- const readOnly = hasFlag('--read-only')
38
- const message = getOption('--commit-message')
39
- const backend = (getOption('--backend') ?? process.env.GIT_FS_MOUNT_BACKEND ?? 'auto') as CliBackend
40
-
41
- if (!SUPPORTED_BACKENDS.includes(backend)) {
42
- throw new Error(
43
- `Unsupported backend '${backend}'. Supported backends: ${SUPPORTED_BACKENDS.join(', ')}`
44
- )
45
- }
46
-
47
- const stop = async (mounted: { unmount: () => Promise<void> }) => {
48
- await mounted.unmount()
49
- process.exit(0)
50
- }
51
-
52
- const mounted = await mountGitFs({
53
- mountPoint,
54
- readOnly,
55
- backend,
56
- defaultCommitMessage: message,
57
- defaultOwner: owner,
58
- defaultRepo: repo,
59
- config: {
60
- platform: 'GITEA',
61
- giteaHost: host,
62
- giteaToken: process.env.GITEA_TOKEN,
63
- },
64
- })
65
-
66
- process.on('SIGINT', async () => {
67
- await stop(mounted)
68
- })
69
-
70
- process.on('SIGTERM', async () => {
71
- await stop(mounted)
72
- })
73
-
74
- await new Promise(() => {})