@ai-ecoverse/slicc-kernel 1.117.4 → 1.118.0

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.
@@ -2542,7 +2542,7 @@ var KERNEL_VERSION, OS_RELEASE;
2542
2542
  var init_version = __esm({
2543
2543
  "src/version.ts"() {
2544
2544
  "use strict";
2545
- KERNEL_VERSION = true ? "1.117.4" : "0.0.0-dev";
2545
+ KERNEL_VERSION = true ? "1.118.0" : "0.0.0-dev";
2546
2546
  OS_RELEASE = "6.0.0-slicc";
2547
2547
  }
2548
2548
  });
@@ -60,6 +60,10 @@ export declare class OpfsFs implements KernelFs {
60
60
  unguarded(): KernelFs;
61
61
  noLinks(): KernelFs;
62
62
  private refuse;
63
+ private unlocked;
64
+ private idle;
65
+ private alone;
66
+ private quiet;
63
67
  private locked;
64
68
  chown(path: string, change: OwnerChange): Promise<void>;
65
69
  private movedOwner;
@@ -27,9 +27,14 @@ export declare class RemoteWatch {
27
27
  private mine;
28
28
  private seq;
29
29
  private pruned;
30
+ private readonly joined;
31
+ private met;
32
+ quiet: (() => Promise<void>) | undefined;
30
33
  constructor(name: string, options?: {
31
34
  locks?: LockManagerLike | null;
32
35
  });
36
+ private join;
37
+ peered(): Promise<boolean>;
33
38
  private lockOf;
34
39
  private receive;
35
40
  private greeted;
@@ -22,6 +22,7 @@ export interface FilesystemHandlers {
22
22
  rename(from: string, to: string): Promise<void>;
23
23
  link?(from: string, to: string): Promise<void>;
24
24
  symlink?(target: string, path: string, owner?: DriverOwner): Promise<void>;
25
+ mkfifo?(path: string, owner?: DriverOwner): Promise<void>;
25
26
  readlink?(path: string): Promise<string>;
26
27
  setattr?(path: string, attr: DriverSetAttr): Promise<void>;
27
28
  statfs?(): Promise<DriverStatfs>;
@@ -12,7 +12,7 @@ export interface PermissionHandle {
12
12
  }): Promise<PermissionState>;
13
13
  }
14
14
  export type MediumHandle = FileSystemDirectoryHandle & PermissionHandle;
15
- type Handlers = Required<Omit<FilesystemHandlers, 'mount' | 'statfs' | 'link'>>;
15
+ type Handlers = Required<Omit<FilesystemHandlers, 'mount' | 'statfs' | 'link' | 'mkfifo'>>;
16
16
  export type SessionFs = KernelFs & Pick<OpfsFs, 'writeSession' | 'pread'>;
17
17
  export declare function kernelFsHandlers(fs: SessionFs): Handlers;
18
18
  export interface Medium {
@@ -1,5 +1,5 @@
1
1
  import { type FilesystemHandlers } from './driver.js';
2
- export type MediumHandlers = Required<Omit<FilesystemHandlers, 'mount' | 'statfs' | 'link'>> & Pick<FilesystemHandlers, 'statfs'>;
2
+ export type MediumHandlers = Required<Omit<FilesystemHandlers, 'mount' | 'statfs' | 'link' | 'mkfifo'>> & Pick<FilesystemHandlers, 'statfs'>;
3
3
  export interface MediumSlot<K> {
4
4
  readonly handlers: FilesystemHandlers;
5
5
  present(): boolean;
@@ -3,6 +3,7 @@ export interface DriverCapabilities {
3
3
  readonly?: boolean;
4
4
  symlinks?: boolean;
5
5
  links?: boolean;
6
+ fifos?: boolean;
6
7
  chmod?: boolean;
7
8
  owners?: boolean;
8
9
  linkTimes?: boolean;
@@ -17,7 +18,7 @@ export interface DriverCapabilities {
17
18
  entryTtl?: number;
18
19
  }
19
20
  export interface DriverAttr {
20
- kind: 'file' | 'directory' | 'symlink';
21
+ kind: 'file' | 'directory' | 'symlink' | 'fifo';
21
22
  size: number;
22
23
  mtime: number;
23
24
  atime?: number;
@@ -95,6 +96,9 @@ export type DriverCall = {
95
96
  op: 'symlink';
96
97
  target: string;
97
98
  path: string;
99
+ } & DriverOwner) | ({
100
+ op: 'mkfifo';
101
+ path: string;
98
102
  } & DriverOwner) | {
99
103
  op: 'readlink';
100
104
  path: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ai-ecoverse/slicc-kernel",
3
- "version": "1.117.4",
3
+ "version": "1.118.0",
4
4
  "description": "SLICC's wasm-realm kernel: run Emscripten programs in the browser against OPFS, with fork, spawn, pipes and waitpid",
5
5
  "type": "module",
6
6
  "license": "Apache-2.0",