goscript 0.0.82 → 0.0.84

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 (85) hide show
  1. package/dist/gs/builtin/builtin.js +4 -7
  2. package/dist/gs/builtin/builtin.js.map +1 -1
  3. package/dist/gs/builtin/hostio.d.ts +72 -0
  4. package/dist/gs/builtin/hostio.js +181 -0
  5. package/dist/gs/builtin/hostio.js.map +1 -0
  6. package/dist/gs/builtin/print.d.ts +8 -0
  7. package/dist/gs/builtin/print.js +111 -0
  8. package/dist/gs/builtin/print.js.map +1 -0
  9. package/dist/gs/fmt/fmt.js +2 -22
  10. package/dist/gs/fmt/fmt.js.map +1 -1
  11. package/dist/gs/os/dir.gs.js +41 -27
  12. package/dist/gs/os/dir.gs.js.map +1 -1
  13. package/dist/gs/os/exec.gs.js +1 -2
  14. package/dist/gs/os/exec.gs.js.map +1 -1
  15. package/dist/gs/os/exec_posix.gs.js +1 -1
  16. package/dist/gs/os/exec_posix.gs.js.map +1 -1
  17. package/dist/gs/os/file_constants_js.gs.js +71 -7
  18. package/dist/gs/os/file_constants_js.gs.js.map +1 -1
  19. package/dist/gs/os/file_js.gs.js +168 -24
  20. package/dist/gs/os/file_js.gs.js.map +1 -1
  21. package/dist/gs/os/file_posix_js.gs.js +75 -11
  22. package/dist/gs/os/file_posix_js.gs.js.map +1 -1
  23. package/dist/gs/os/file_unix_js.gs.d.ts +3 -3
  24. package/dist/gs/os/file_unix_js.gs.js +218 -21
  25. package/dist/gs/os/file_unix_js.gs.js.map +1 -1
  26. package/dist/gs/os/getwd_js.gs.js +19 -6
  27. package/dist/gs/os/getwd_js.gs.js.map +1 -1
  28. package/dist/gs/os/path.gs.js +3 -3
  29. package/dist/gs/os/path.gs.js.map +1 -1
  30. package/dist/gs/os/pidfd_js.gs.js +0 -3
  31. package/dist/gs/os/pidfd_js.gs.js.map +1 -1
  32. package/dist/gs/os/proc.gs.js +6 -3
  33. package/dist/gs/os/proc.gs.js.map +1 -1
  34. package/dist/gs/os/proc_js.gs.js +10 -5
  35. package/dist/gs/os/proc_js.gs.js.map +1 -1
  36. package/dist/gs/os/rawconn_js.gs.d.ts +6 -3
  37. package/dist/gs/os/rawconn_js.gs.js +16 -10
  38. package/dist/gs/os/rawconn_js.gs.js.map +1 -1
  39. package/dist/gs/os/removeall_js.gs.js +2 -4
  40. package/dist/gs/os/removeall_js.gs.js.map +1 -1
  41. package/dist/gs/os/root_js.gs.d.ts +4 -1
  42. package/dist/gs/os/root_js.gs.js +90 -40
  43. package/dist/gs/os/root_js.gs.js.map +1 -1
  44. package/dist/gs/os/root_noopenat.gs.js +13 -16
  45. package/dist/gs/os/root_noopenat.gs.js.map +1 -1
  46. package/dist/gs/os/stat_js.gs.js +40 -4
  47. package/dist/gs/os/stat_js.gs.js.map +1 -1
  48. package/dist/gs/os/stat_unix_js.gs.d.ts +1 -1
  49. package/dist/gs/os/stat_unix_js.gs.js +5 -10
  50. package/dist/gs/os/stat_unix_js.gs.js.map +1 -1
  51. package/dist/gs/os/tempfile.gs.d.ts +1 -1
  52. package/dist/gs/os/tempfile.gs.js +24 -7
  53. package/dist/gs/os/tempfile.gs.js.map +1 -1
  54. package/dist/gs/os/types_js.gs.d.ts +30 -2
  55. package/dist/gs/os/types_js.gs.js +426 -23
  56. package/dist/gs/os/types_js.gs.js.map +1 -1
  57. package/gs/builtin/builtin.ts +4 -6
  58. package/gs/builtin/hostio.test.ts +69 -0
  59. package/gs/builtin/hostio.ts +298 -0
  60. package/gs/builtin/print.test.ts +48 -0
  61. package/gs/builtin/print.ts +154 -0
  62. package/gs/fmt/fmt.test.ts +41 -30
  63. package/gs/fmt/fmt.ts +2 -22
  64. package/gs/os/dir.gs.ts +40 -28
  65. package/gs/os/exec.gs.ts +2 -4
  66. package/gs/os/exec_posix.gs.ts +1 -2
  67. package/gs/os/file_constants_js.gs.ts +70 -8
  68. package/gs/os/file_js.gs.ts +156 -26
  69. package/gs/os/file_posix_js.gs.ts +69 -13
  70. package/gs/os/file_unix_js.gs.ts +212 -24
  71. package/gs/os/file_unix_js.test.ts +184 -0
  72. package/gs/os/getwd_js.gs.ts +18 -8
  73. package/gs/os/path.gs.ts +3 -4
  74. package/gs/os/pidfd_js.gs.ts +3 -8
  75. package/gs/os/proc.gs.ts +6 -4
  76. package/gs/os/proc_js.gs.ts +11 -8
  77. package/gs/os/rawconn_js.gs.ts +22 -14
  78. package/gs/os/removeall_js.gs.ts +3 -6
  79. package/gs/os/root_js.gs.ts +94 -42
  80. package/gs/os/root_noopenat.gs.ts +13 -20
  81. package/gs/os/stat_js.gs.ts +37 -6
  82. package/gs/os/stat_unix_js.gs.ts +6 -13
  83. package/gs/os/tempfile.gs.ts +27 -9
  84. package/gs/os/types_js.gs.ts +449 -26
  85. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"dir.gs.js","sourceRoot":"","sources":["../../../gs/os/dir.gs.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAMjD,qCAAqC;AACrC,0DAA0D;AAC1D,4CAA4C;AAC5C,oEAAoE;AACpE,wBAAwB;AACxB,MAAM,UAAU,OAAO,CAAC,IAAY;IACnC,4DAA4D;IAC5D,OAAO,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAA;AAChC,CAAC;AAED,6DAA6D;AAC7D,6BAA6B;AAC7B,EAAE;AACF,iEAAiE;AACjE,+DAA+D;AAC/D,kBAAkB;AAClB,EAAE;AACF,mEAAmE;AACnE,iEAAiE;AACjE,sDAAsD;AACtD,EAAE;AACF,sEAAsE;AACtE,+DAA+D;AAC/D,EAAE;AACF,sCAAsC;AACtC,EAAE;AACF,uEAAuE;AACvE,2DAA2D;AAC3D,EAAE;AACF,4DAA4D;AAC5D,MAAM,UAAU,MAAM,CAAC,GAAW,EAAE,IAAW;IAC9C,8DAA8D;IAC9D,OAAO,gBAAgB,CAAA;AACxB,CAAC"}
1
+ {"version":3,"file":"dir.gs.js","sourceRoot":"","sources":["../../../gs/os/dir.gs.ts"],"names":[],"mappings":"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"}
@@ -97,7 +97,7 @@ export class ProcAttr {
97
97
  "Sys": { kind: $.TypeKind.Basic, name: "any" }
98
98
  });
99
99
  }
100
- // Stub ProcessState for JavaScript environment
100
+ // ProcessState mirrors the minimal JavaScript process surface.
101
101
  export class ProcessState {
102
102
  _fields;
103
103
  constructor() {
@@ -110,7 +110,6 @@ export class ProcessState {
110
110
  static __typeInfo = $.registerStructType('ProcessState', new ProcessState(), [], ProcessState, {});
111
111
  }
112
112
  export const Signal = null;
113
- // Stub functions that return ErrUnimplemented
114
113
  export function Getpid() {
115
114
  return -1; // Not available in JavaScript
116
115
  }
@@ -1 +1 @@
1
- {"version":3,"file":"exec.gs.js","sourceRoot":"","sources":["../../../gs/os/exec.gs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"exec.gs.js","sourceRoot":"","sources":["../../../gs/os/exec.gs.ts"],"names":[],"mappings":"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"}
@@ -23,7 +23,7 @@ export class ProcessState {
23
23
  };
24
24
  return cloned;
25
25
  }
26
- // All methods return stub values for JavaScript environment
26
+ // JavaScript does not expose process timing and wait status details.
27
27
  UserTime() {
28
28
  return 0; // Duration not available
29
29
  }
@@ -1 +1 @@
1
- {"version":3,"file":"exec_posix.gs.js","sourceRoot":"","sources":["../../../gs/os/exec_posix.gs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"exec_posix.gs.js","sourceRoot":"","sources":["../../../gs/os/exec_posix.gs.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,15 @@
1
1
  import * as $ from "@goscript/builtin/index.js";
2
2
  import { ErrUnimplemented } from "./error.gs.js";
3
- // JavaScript-specific stubs for file constants and operations
4
- // These provide the required constants and stub implementations
3
+ import { getDeno, getEnv, getNodeFS, getPlatform, newHostError } from "./types_js.gs.js";
4
+ function pickFirstEnv(keys) {
5
+ for (const key of keys) {
6
+ const value = getEnv(key);
7
+ if (value !== "") {
8
+ return value;
9
+ }
10
+ }
11
+ return "";
12
+ }
5
13
  // File open flags - using values compatible with typical Unix systems
6
14
  export const O_RDONLY = 0;
7
15
  export const O_WRONLY = 1;
@@ -15,7 +23,7 @@ export const O_TRUNC = 512;
15
23
  export const SEEK_SET = 0;
16
24
  export const SEEK_CUR = 1;
17
25
  export const SEEK_END = 2;
18
- // LinkError stub for compatibility
26
+ // LinkError carries details for link-related path errors.
19
27
  export class LinkError {
20
28
  get Op() {
21
29
  return this._fields.Op.value;
@@ -59,20 +67,76 @@ export class LinkError {
59
67
  return e.Err;
60
68
  }
61
69
  }
62
- // Directory and file operation stubs
63
70
  export function Readlink(name) {
71
+ const denoObj = getDeno();
72
+ if (denoObj?.readLinkSync) {
73
+ try {
74
+ return [denoObj.readLinkSync(name), null];
75
+ }
76
+ catch (err) {
77
+ return ["", newHostError(err)];
78
+ }
79
+ }
80
+ const nodeFS = getNodeFS();
81
+ if (nodeFS?.readlinkSync) {
82
+ try {
83
+ return [nodeFS.readlinkSync(name), null];
84
+ }
85
+ catch (err) {
86
+ return ["", newHostError(err)];
87
+ }
88
+ }
64
89
  return ["", ErrUnimplemented];
65
90
  }
66
91
  export function TempDir() {
67
- return "/tmp";
92
+ const value = pickFirstEnv(["TMPDIR", "TEMP", "TMP"]);
93
+ if (value !== "") {
94
+ return value;
95
+ }
96
+ return getPlatform() === "win32" ? "." : "/tmp";
68
97
  }
69
98
  export function UserCacheDir() {
70
- return ["", ErrUnimplemented];
99
+ if (getPlatform() === "win32") {
100
+ const value = pickFirstEnv(["LOCALAPPDATA", "APPDATA", "USERPROFILE"]);
101
+ if (value !== "") {
102
+ return [value, null];
103
+ }
104
+ return ["", ErrUnimplemented];
105
+ }
106
+ const value = pickFirstEnv(["XDG_CACHE_HOME"]);
107
+ if (value !== "") {
108
+ return [value, null];
109
+ }
110
+ const [home, err] = UserHomeDir();
111
+ if (err !== null || home === "") {
112
+ return ["", err ?? ErrUnimplemented];
113
+ }
114
+ return [home.replace(/\/+$/, "") + "/.cache", null];
71
115
  }
72
116
  export function UserConfigDir() {
73
- return ["", ErrUnimplemented];
117
+ if (getPlatform() === "win32") {
118
+ const value = pickFirstEnv(["APPDATA", "USERPROFILE"]);
119
+ if (value !== "") {
120
+ return [value, null];
121
+ }
122
+ return ["", ErrUnimplemented];
123
+ }
124
+ const value = pickFirstEnv(["XDG_CONFIG_HOME"]);
125
+ if (value !== "") {
126
+ return [value, null];
127
+ }
128
+ const [home, err] = UserHomeDir();
129
+ if (err !== null || home === "") {
130
+ return ["", err ?? ErrUnimplemented];
131
+ }
132
+ return [home.replace(/\/+$/, "") + "/.config", null];
74
133
  }
75
134
  export function UserHomeDir() {
135
+ const keys = getPlatform() === "win32" ? ["USERPROFILE", "HOMEDRIVE", "HOME"] : ["HOME"];
136
+ const value = pickFirstEnv(keys);
137
+ if (value !== "") {
138
+ return [value, null];
139
+ }
76
140
  return ["", ErrUnimplemented];
77
141
  }
78
142
  //# sourceMappingURL=file_constants_js.gs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"file_constants_js.gs.js","sourceRoot":"","sources":["../../../gs/os/file_constants_js.gs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,4BAA4B,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEjD,8DAA8D;AAC9D,gEAAgE;AAEhE,sEAAsE;AACtE,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,CAAA;AACzB,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,CAAA;AACzB,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,CAAA;AACvB,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,CAAA;AAC5B,MAAM,CAAC,MAAM,QAAQ,GAAG,EAAE,CAAA;AAC1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;AACzB,MAAM,CAAC,MAAM,MAAM,GAAG,OAAO,CAAA;AAC7B,MAAM,CAAC,MAAM,OAAO,GAAG,GAAG,CAAA;AAE1B,iBAAiB;AACjB,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,CAAA;AACzB,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,CAAA;AACzB,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,CAAA;AAEzB,mCAAmC;AACnC,MAAM,OAAO,SAAS;IACrB,IAAW,EAAE;QACZ,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,CAAA;IAC7B,CAAC;IACD,IAAW,EAAE,CAAC,KAAa;QAC1B,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,GAAG,KAAK,CAAA;IAC9B,CAAC;IAED,IAAW,GAAG;QACb,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAA;IAC9B,CAAC;IACD,IAAW,GAAG,CAAC,KAAa;QAC3B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,KAAK,CAAA;IAC/B,CAAC;IAED,IAAW,GAAG;QACb,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAA;IAC9B,CAAC;IACD,IAAW,GAAG,CAAC,KAAa;QAC3B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,KAAK,CAAA;IAC/B,CAAC;IAED,IAAW,GAAG;QACb,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAA;IAC9B,CAAC;IACD,IAAW,GAAG,CAAC,KAAgB;QAC9B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,KAAK,CAAA;IAC/B,CAAC;IAEM,OAAO,CAKb;IAED,YAAY,IAA0E;QACrF,IAAI,CAAC,OAAO,GAAG;YACd,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC;YAC5B,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,IAAI,EAAE,CAAC;YAC9B,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,IAAI,EAAE,CAAC;YAC9B,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,IAAI,IAAI,CAAC;SAChC,CAAA;IACF,CAAC;IAEM,KAAK;QACX,MAAM,CAAC,GAAG,IAAI,CAAA;QACd,OAAO,CAAC,CAAC,EAAE,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;IACxE,CAAC;IAEM,MAAM;QACZ,MAAM,CAAC,GAAG,IAAI,CAAA;QACd,OAAO,CAAC,CAAC,GAAG,CAAA;IACb,CAAC;CACD;AAED,qCAAqC;AACrC,MAAM,UAAU,QAAQ,CAAC,IAAY;IACpC,OAAO,CAAC,EAAE,EAAE,gBAAgB,CAAC,CAAA;AAC9B,CAAC;AAED,MAAM,UAAU,OAAO;IACtB,OAAO,MAAM,CAAA;AACd,CAAC;AAED,MAAM,UAAU,YAAY;IAC3B,OAAO,CAAC,EAAE,EAAE,gBAAgB,CAAC,CAAA;AAC9B,CAAC;AAED,MAAM,UAAU,aAAa;IAC5B,OAAO,CAAC,EAAE,EAAE,gBAAgB,CAAC,CAAA;AAC9B,CAAC;AAED,MAAM,UAAU,WAAW;IAC1B,OAAO,CAAC,EAAE,EAAE,gBAAgB,CAAC,CAAA;AAC9B,CAAC"}
1
+ {"version":3,"file":"file_constants_js.gs.js","sourceRoot":"","sources":["../../../gs/os/file_constants_js.gs.ts"],"names":[],"mappings":"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"}
@@ -1,73 +1,217 @@
1
- import { ErrUnimplemented } from "./error.gs.js";
2
- // JavaScript-specific implementations for filesystem operations
3
- // These functions stub filesystem operations that cannot be implemented
4
- // in a JavaScript environment
5
- // File operations - stub implementations
1
+ import * as $ from "@goscript/builtin/index.js";
2
+ import { ErrInvalid, ErrUnimplemented } from "./error.gs.js";
3
+ import { getDeno, getNodeFS, newHostError } from "./types_js.gs.js";
4
+ import { O_CREATE, O_RDONLY, O_RDWR, O_TRUNC } from "./file_constants_js.gs.js";
5
+ import { Link as linkPath, openFileNolog, readlink, Remove as removePath, rename as renamePath, Symlink as symlinkPath, Truncate as truncatePath } from "./file_unix_js.gs.js";
6
+ import { Lstat as lstatPath, Stat as statPath } from "./stat_js.gs.js";
7
+ import { ValidPath } from "@goscript/io/fs/index.js";
6
8
  export function Open(name) {
7
- return [null, ErrUnimplemented];
9
+ return OpenFile(name, O_RDONLY, 0);
8
10
  }
9
11
  export function Create(name) {
10
- return [null, ErrUnimplemented];
12
+ return OpenFile(name, O_RDWR | O_CREATE | O_TRUNC, 0o666);
11
13
  }
12
14
  export function OpenFile(name, flag, perm) {
13
- return [null, ErrUnimplemented];
15
+ return openFileNolog(name, flag, perm);
14
16
  }
15
17
  export function ReadFile(name) {
18
+ const denoObj = getDeno();
19
+ if (denoObj?.readFileSync) {
20
+ try {
21
+ return [denoObj.readFileSync(name), null];
22
+ }
23
+ catch (err) {
24
+ return [null, newHostError(err)];
25
+ }
26
+ }
27
+ const nodeFS = getNodeFS();
28
+ if (nodeFS?.readFileSync) {
29
+ try {
30
+ return [nodeFS.readFileSync(name), null];
31
+ }
32
+ catch (err) {
33
+ return [null, newHostError(err)];
34
+ }
35
+ }
16
36
  return [null, ErrUnimplemented];
17
37
  }
18
38
  export function WriteFile(name, data, perm) {
39
+ const buf = $.bytesToUint8Array(data);
40
+ const denoObj = getDeno();
41
+ if (denoObj?.writeFileSync) {
42
+ try {
43
+ denoObj.writeFileSync(name, buf, { mode: perm });
44
+ return null;
45
+ }
46
+ catch (err) {
47
+ return newHostError(err);
48
+ }
49
+ }
50
+ const nodeFS = getNodeFS();
51
+ if (nodeFS?.writeFileSync) {
52
+ try {
53
+ nodeFS.writeFileSync(name, buf, { mode: perm });
54
+ return null;
55
+ }
56
+ catch (err) {
57
+ return newHostError(err);
58
+ }
59
+ }
19
60
  return ErrUnimplemented;
20
61
  }
21
- // Directory operations - stub implementations
22
62
  export function Mkdir(name, perm) {
63
+ const denoObj = getDeno();
64
+ if (denoObj?.mkdirSync) {
65
+ try {
66
+ denoObj.mkdirSync(name, { mode: perm });
67
+ return null;
68
+ }
69
+ catch (err) {
70
+ return newHostError(err);
71
+ }
72
+ }
73
+ const nodeFS = getNodeFS();
74
+ if (nodeFS?.mkdirSync) {
75
+ try {
76
+ nodeFS.mkdirSync(name, { mode: perm });
77
+ return null;
78
+ }
79
+ catch (err) {
80
+ return newHostError(err);
81
+ }
82
+ }
23
83
  return ErrUnimplemented;
24
84
  }
25
85
  export function MkdirAll(path, perm) {
86
+ const denoObj = getDeno();
87
+ if (denoObj?.mkdirSync) {
88
+ try {
89
+ denoObj.mkdirSync(path, { mode: perm, recursive: true });
90
+ return null;
91
+ }
92
+ catch (err) {
93
+ return newHostError(err);
94
+ }
95
+ }
96
+ const nodeFS = getNodeFS();
97
+ if (nodeFS?.mkdirSync) {
98
+ try {
99
+ nodeFS.mkdirSync(path, { mode: perm, recursive: true });
100
+ return null;
101
+ }
102
+ catch (err) {
103
+ return newHostError(err);
104
+ }
105
+ }
26
106
  return ErrUnimplemented;
27
107
  }
28
108
  export function Remove(name) {
29
- return ErrUnimplemented;
109
+ return removePath(name);
30
110
  }
31
111
  export function RemoveAll(path) {
112
+ const denoObj = getDeno();
113
+ if (denoObj?.removeSync) {
114
+ try {
115
+ denoObj.removeSync(path, { recursive: true });
116
+ return null;
117
+ }
118
+ catch (err) {
119
+ return newHostError(err);
120
+ }
121
+ }
122
+ const nodeFS = getNodeFS();
123
+ if (nodeFS?.rmSync) {
124
+ try {
125
+ nodeFS.rmSync(path, { force: true, recursive: true });
126
+ return null;
127
+ }
128
+ catch (err) {
129
+ return newHostError(err);
130
+ }
131
+ }
32
132
  return ErrUnimplemented;
33
133
  }
34
134
  export function Chdir(dir) {
135
+ const denoObj = getDeno();
136
+ if (denoObj?.chdir) {
137
+ try {
138
+ denoObj.chdir(dir);
139
+ return null;
140
+ }
141
+ catch (err) {
142
+ return newHostError(err);
143
+ }
144
+ }
145
+ const processObj = globalThis.process;
146
+ if (processObj?.chdir) {
147
+ try {
148
+ processObj.chdir(dir);
149
+ return null;
150
+ }
151
+ catch (err) {
152
+ return newHostError(err);
153
+ }
154
+ }
35
155
  return ErrUnimplemented;
36
156
  }
37
157
  export function Chmod(name, mode) {
158
+ const denoObj = getDeno();
159
+ if (denoObj?.chmodSync) {
160
+ try {
161
+ denoObj.chmodSync(name, mode);
162
+ return null;
163
+ }
164
+ catch (err) {
165
+ return newHostError(err);
166
+ }
167
+ }
168
+ const nodeFS = getNodeFS();
169
+ if (nodeFS?.chmodSync) {
170
+ try {
171
+ nodeFS.chmodSync(name, mode);
172
+ return null;
173
+ }
174
+ catch (err) {
175
+ return newHostError(err);
176
+ }
177
+ }
38
178
  return ErrUnimplemented;
39
179
  }
40
180
  export function Rename(oldpath, newpath) {
41
- return ErrUnimplemented;
181
+ return renamePath(oldpath, newpath);
42
182
  }
43
- // File information operations - stub implementations
44
183
  export function Stat(name) {
45
- return [null, ErrUnimplemented];
184
+ return statPath(name);
46
185
  }
47
186
  export function Lstat(name) {
48
- return [null, ErrUnimplemented];
187
+ return lstatPath(name);
49
188
  }
50
- // Link operations - stub implementations
51
189
  export function Link(oldname, newname) {
52
- return ErrUnimplemented;
190
+ return linkPath(oldname, newname);
53
191
  }
54
192
  export function Symlink(oldname, newname) {
55
- return ErrUnimplemented;
193
+ return symlinkPath(oldname, newname);
56
194
  }
57
195
  export function Readlink(name) {
58
- return ["", ErrUnimplemented];
196
+ return readlink(name);
59
197
  }
60
198
  export function Truncate(name, size) {
61
- return ErrUnimplemented;
199
+ return truncatePath(name, size);
62
200
  }
63
- // File system information - stub implementations
64
201
  export function DirFS(dir) {
65
- // Return a stub filesystem that always returns ErrUnimplemented
66
- return new stubFS();
202
+ return new hostFS({ root: dir });
67
203
  }
68
- class stubFS {
204
+ class hostFS {
205
+ root;
206
+ constructor(init) {
207
+ this.root = init?.root ?? ".";
208
+ }
69
209
  Open(name) {
70
- return [null, ErrUnimplemented];
210
+ if (!ValidPath(name)) {
211
+ return [null, ErrInvalid];
212
+ }
213
+ const fullPath = name === "." ? this.root : this.root.replace(/\/+$/, "") + "/" + name;
214
+ return Open(fullPath);
71
215
  }
72
216
  }
73
217
  //# sourceMappingURL=file_js.gs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"file_js.gs.js","sourceRoot":"","sources":["../../../gs/os/file_js.gs.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAKjD,gEAAgE;AAChE,yEAAyE;AACzE,8BAA8B;AAE9B,yCAAyC;AACzC,MAAM,UAAU,IAAI,CAAC,IAAY;IAC/B,OAAO,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAA;AACjC,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,IAAY;IACjC,OAAO,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAA;AACjC,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,IAAY,EAAE,IAAY,EAAE,IAAY;IAC/D,OAAO,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAA;AACjC,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,IAAY;IACnC,OAAO,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAA;AACjC,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,IAAY,EAAE,IAAa,EAAE,IAAY;IACjE,OAAO,gBAAgB,CAAA;AACzB,CAAC;AAED,gDAAgD;AAChD,MAAM,UAAU,KAAK,CAAC,IAAY,EAAE,IAAY;IAC9C,OAAO,gBAAgB,CAAA;AACzB,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,IAAY,EAAE,IAAY;IACjD,OAAO,gBAAgB,CAAA;AACzB,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,IAAY;IACjC,OAAO,gBAAgB,CAAA;AACzB,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,IAAY;IACpC,OAAO,gBAAgB,CAAA;AACzB,CAAC;AAED,MAAM,UAAU,KAAK,CAAC,GAAW;IAC/B,OAAO,gBAAgB,CAAA;AACzB,CAAC;AAED,MAAM,UAAU,KAAK,CAAC,IAAY,EAAE,IAAY;IAC9C,OAAO,gBAAgB,CAAA;AACzB,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,OAAe,EAAE,OAAe;IACrD,OAAO,gBAAgB,CAAA;AACzB,CAAC;AAED,qDAAqD;AACrD,MAAM,UAAU,IAAI,CAAC,IAAY;IAC/B,OAAO,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAA;AACjC,CAAC;AAED,MAAM,UAAU,KAAK,CAAC,IAAY;IAChC,OAAO,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAA;AACjC,CAAC;AAED,2CAA2C;AAC3C,MAAM,UAAU,IAAI,CAAC,OAAe,EAAE,OAAe;IACnD,OAAO,gBAAgB,CAAA;AACzB,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,OAAe,EAAE,OAAe;IACtD,OAAO,gBAAgB,CAAA;AACzB,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,IAAY;IACnC,OAAO,CAAC,EAAE,EAAE,gBAAgB,CAAC,CAAA;AAC/B,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,IAAY,EAAE,IAAY;IACjD,OAAO,gBAAgB,CAAA;AACzB,CAAC;AAED,iDAAiD;AACjD,MAAM,UAAU,KAAK,CAAC,GAAW;IAC/B,gEAAgE;IAChE,OAAO,IAAI,MAAM,EAAE,CAAA;AACrB,CAAC;AAED,MAAM,MAAM;IACH,IAAI,CAAC,IAAY;QACtB,OAAO,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAA;IACjC,CAAC;CACF"}
1
+ {"version":3,"file":"file_js.gs.js","sourceRoot":"","sources":["../../../gs/os/file_js.gs.ts"],"names":[],"mappings":"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"}
@@ -1,32 +1,96 @@
1
1
  import { ErrUnimplemented } from "./error.gs.js";
2
- // JavaScript-specific stubs for POSIX file operations
3
- // These operations are not available in JavaScript environments
4
- // syscallMode stub
2
+ import { getDeno, getNodeFS, newHostError } from "./types_js.gs.js";
5
3
  export function syscallMode(i) {
6
4
  return 0;
7
5
  }
8
- // ignoringEINTR stub
9
6
  export function ignoringEINTR(fn) {
10
- return ErrUnimplemented;
7
+ return fn();
11
8
  }
12
- // ignoringEINTR2 stub
13
9
  export function ignoringEINTR2(fn) {
14
- return ["", ErrUnimplemented];
10
+ return fn();
15
11
  }
16
- // Chmod operation stub
17
12
  export function Chmod(name, mode) {
13
+ const denoObj = getDeno();
14
+ if (denoObj?.chmodSync) {
15
+ try {
16
+ denoObj.chmodSync(name, mode);
17
+ return null;
18
+ }
19
+ catch (err) {
20
+ return newHostError(err);
21
+ }
22
+ }
23
+ const nodeFS = getNodeFS();
24
+ if (nodeFS?.chmodSync) {
25
+ try {
26
+ nodeFS.chmodSync(name, mode);
27
+ return null;
28
+ }
29
+ catch (err) {
30
+ return newHostError(err);
31
+ }
32
+ }
18
33
  return ErrUnimplemented;
19
34
  }
20
- // Chown operation stub
21
35
  export function Chown(name, uid, gid) {
36
+ const denoObj = getDeno();
37
+ if (denoObj?.chownSync) {
38
+ try {
39
+ denoObj.chownSync(name, uid, gid);
40
+ return null;
41
+ }
42
+ catch (err) {
43
+ return newHostError(err);
44
+ }
45
+ }
46
+ const nodeFS = getNodeFS();
47
+ if (nodeFS?.chownSync) {
48
+ try {
49
+ nodeFS.chownSync(name, uid, gid);
50
+ return null;
51
+ }
52
+ catch (err) {
53
+ return newHostError(err);
54
+ }
55
+ }
22
56
  return ErrUnimplemented;
23
57
  }
24
- // Lchown operation stub
25
58
  export function Lchown(name, uid, gid) {
59
+ const nodeFS = getNodeFS();
60
+ if (nodeFS?.lchownSync) {
61
+ try {
62
+ nodeFS.lchownSync(name, uid, gid);
63
+ return null;
64
+ }
65
+ catch (err) {
66
+ return newHostError(err);
67
+ }
68
+ }
26
69
  return ErrUnimplemented;
27
70
  }
28
- // Chtimes operation stub
29
71
  export function Chtimes(name, atime, mtime) {
72
+ const at = typeof atime?.UnixMilli === "function" ? new Date(atime.UnixMilli()) : new Date(atime);
73
+ const mt = typeof mtime?.UnixMilli === "function" ? new Date(mtime.UnixMilli()) : new Date(mtime);
74
+ const denoObj = getDeno();
75
+ if (denoObj?.utimeSync) {
76
+ try {
77
+ denoObj.utimeSync(name, at, mt);
78
+ return null;
79
+ }
80
+ catch (err) {
81
+ return newHostError(err);
82
+ }
83
+ }
84
+ const nodeFS = getNodeFS();
85
+ if (nodeFS?.utimesSync) {
86
+ try {
87
+ nodeFS.utimesSync(name, at, mt);
88
+ return null;
89
+ }
90
+ catch (err) {
91
+ return newHostError(err);
92
+ }
93
+ }
30
94
  return ErrUnimplemented;
31
95
  }
32
96
  //# sourceMappingURL=file_posix_js.gs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"file_posix_js.gs.js","sourceRoot":"","sources":["../../../gs/os/file_posix_js.gs.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEjD,sDAAsD;AACtD,gEAAgE;AAEhE,mBAAmB;AACnB,MAAM,UAAU,WAAW,CAAC,CAAS;IACpC,OAAO,CAAC,CAAA;AACT,CAAC;AAED,qBAAqB;AACrB,MAAM,UAAU,aAAa,CAAC,EAAmB;IAChD,OAAO,gBAAgB,CAAA;AACxB,CAAC;AAED,sBAAsB;AACtB,MAAM,UAAU,cAAc,CAAC,EAA6B;IAC3D,OAAO,CAAC,EAAE,EAAE,gBAAgB,CAAC,CAAA;AAC9B,CAAC;AAED,uBAAuB;AACvB,MAAM,UAAU,KAAK,CAAC,IAAY,EAAE,IAAY;IAC/C,OAAO,gBAAgB,CAAA;AACxB,CAAC;AAED,uBAAuB;AACvB,MAAM,UAAU,KAAK,CAAC,IAAY,EAAE,GAAW,EAAE,GAAW;IAC3D,OAAO,gBAAgB,CAAA;AACxB,CAAC;AAED,wBAAwB;AACxB,MAAM,UAAU,MAAM,CAAC,IAAY,EAAE,GAAW,EAAE,GAAW;IAC5D,OAAO,gBAAgB,CAAA;AACxB,CAAC;AAED,yBAAyB;AACzB,MAAM,UAAU,OAAO,CAAC,IAAY,EAAE,KAAU,EAAE,KAAU;IAC3D,OAAO,gBAAgB,CAAA;AACxB,CAAC"}
1
+ {"version":3,"file":"file_posix_js.gs.js","sourceRoot":"","sources":["../../../gs/os/file_posix_js.gs.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import * as $ from "@goscript/builtin/index.js";
2
2
  import { File } from "./types_js.gs.js";
3
3
  import * as fs from "@goscript/io/fs/index.js";
4
- export declare const DevNull = "/dev/null";
4
+ export declare const DevNull: string;
5
5
  export declare const Stdin: File | null;
6
6
  export declare const Stdout: File | null;
7
7
  export declare const Stderr: File | null;
@@ -23,5 +23,5 @@ export interface dirInfo {
23
23
  }
24
24
  export declare function net_newUnixFile(fd: number, name: string): File | null;
25
25
  export type newFileKind = number;
26
- export declare function newFile(fd: number, name: string, kind: newFileKind, nonBlocking: boolean): File | null;
27
- export declare function newUnixDirent(parent: string, name: string, typ: number): [fs.DirEntry | null, $.GoError];
26
+ export declare function newFile(fd: number, name: string, _kind: newFileKind, _nonBlocking: boolean): File | null;
27
+ export declare function newUnixDirent(parent: string, name: string, _typ: number): [fs.DirEntry | null, $.GoError];