@theia/process 1.34.3 → 1.34.4

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 (70) hide show
  1. package/LICENSE +641 -641
  2. package/README.md +30 -30
  3. package/lib/common/process-common-module.d.ts +3 -3
  4. package/lib/common/process-common-module.js +22 -22
  5. package/lib/common/process-manager-types.d.ts +35 -35
  6. package/lib/common/process-manager-types.js +23 -23
  7. package/lib/common/shell-command-builder.d.ts +49 -49
  8. package/lib/common/shell-command-builder.js +174 -174
  9. package/lib/common/shell-command-builder.slow-spec.d.ts +9 -9
  10. package/lib/common/shell-command-builder.slow-spec.js +404 -404
  11. package/lib/common/shell-quoting.d.ts +91 -91
  12. package/lib/common/shell-quoting.js +145 -145
  13. package/lib/common/shell-quoting.spec.d.ts +1 -1
  14. package/lib/common/shell-quoting.spec.js +170 -170
  15. package/lib/node/dev-null-stream.d.ts +17 -17
  16. package/lib/node/dev-null-stream.js +41 -41
  17. package/lib/node/index.d.ts +6 -6
  18. package/lib/node/index.js +33 -33
  19. package/lib/node/multi-ring-buffer.d.ts +68 -68
  20. package/lib/node/multi-ring-buffer.js +310 -310
  21. package/lib/node/multi-ring-buffer.spec.d.ts +1 -1
  22. package/lib/node/multi-ring-buffer.spec.js +422 -422
  23. package/lib/node/process-backend-module.d.ts +3 -3
  24. package/lib/node/process-backend-module.js +56 -56
  25. package/lib/node/process-manager.d.ts +33 -33
  26. package/lib/node/process-manager.js +113 -113
  27. package/lib/node/process.d.ts +95 -95
  28. package/lib/node/process.js +153 -153
  29. package/lib/node/pseudo-pty.d.ts +22 -22
  30. package/lib/node/pseudo-pty.js +38 -38
  31. package/lib/node/raw-process.d.ts +45 -45
  32. package/lib/node/raw-process.js +115 -115
  33. package/lib/node/raw-process.spec.d.ts +1 -1
  34. package/lib/node/raw-process.spec.js +164 -164
  35. package/lib/node/task-terminal-process.d.ts +10 -10
  36. package/lib/node/task-terminal-process.js +47 -47
  37. package/lib/node/terminal-process.d.ts +49 -49
  38. package/lib/node/terminal-process.js +180 -180
  39. package/lib/node/terminal-process.spec.d.ts +1 -1
  40. package/lib/node/terminal-process.spec.js +89 -89
  41. package/lib/node/test/process-test-container.d.ts +2 -2
  42. package/lib/node/test/process-test-container.js +28 -28
  43. package/lib/node/utils.d.ts +16 -16
  44. package/lib/node/utils.js +77 -77
  45. package/package.json +4 -4
  46. package/src/common/process-common-module.ts +22 -22
  47. package/src/common/process-manager-types.ts +58 -58
  48. package/src/common/shell-command-builder.slow-spec.ts +486 -486
  49. package/src/common/shell-command-builder.ts +187 -187
  50. package/src/common/shell-quoting.spec.ts +176 -176
  51. package/src/common/shell-quoting.ts +236 -236
  52. package/src/common/tests/$weird(),file=name.js +1 -1
  53. package/src/common/tests/white space.js +1 -1
  54. package/src/node/dev-null-stream.ts +47 -47
  55. package/src/node/index.ts +22 -22
  56. package/src/node/multi-ring-buffer.spec.ts +486 -486
  57. package/src/node/multi-ring-buffer.ts +348 -348
  58. package/src/node/process-backend-module.ts +67 -67
  59. package/src/node/process-manager.ts +107 -107
  60. package/src/node/process.ts +207 -207
  61. package/src/node/pseudo-pty.ts +54 -54
  62. package/src/node/raw-process.spec.ts +199 -199
  63. package/src/node/raw-process.ts +156 -156
  64. package/src/node/string-argv.d.ts +21 -21
  65. package/src/node/task-terminal-process.ts +41 -41
  66. package/src/node/terminal-process.spec.ts +104 -104
  67. package/src/node/terminal-process.ts +198 -198
  68. package/src/node/test/process-fork-test.js +22 -22
  69. package/src/node/test/process-test-container.ts +27 -27
  70. package/src/node/utils.ts +79 -79
@@ -1,69 +1,69 @@
1
- /// <reference types="node" />
2
- import * as stream from 'stream';
3
- import { Disposable } from '@theia/core/lib/common';
4
- /**
5
- * The MultiRingBuffer is a ring buffer implementation that allows
6
- * multiple independent readers.
7
- *
8
- * These readers are created using the getReader or getStream functions
9
- * to create a reader that can be read using deq() or one that is a readable stream.
10
- */
11
- export declare class MultiRingBufferReadableStream extends stream.Readable implements Disposable {
12
- protected readonly ringBuffer: MultiRingBuffer;
13
- protected readonly reader: number;
14
- protected readonly encoding: BufferEncoding;
15
- protected more: boolean;
16
- protected disposed: boolean;
17
- constructor(ringBuffer: MultiRingBuffer, reader: number, encoding?: BufferEncoding);
18
- _read(size: number): void;
19
- _destroy(err: Error | null, callback: (err: Error | null) => void): void;
20
- onData(): void;
21
- deq(size: number): void;
22
- dispose(): void;
23
- }
24
- export declare const MultiRingBufferOptions: unique symbol;
25
- export interface MultiRingBufferOptions {
26
- readonly size: number;
27
- readonly encoding?: BufferEncoding;
28
- }
29
- export interface WrappedPosition {
30
- newPos: number;
31
- wrap: boolean;
32
- }
33
- export declare class MultiRingBuffer implements Disposable {
34
- protected readonly options: MultiRingBufferOptions;
35
- protected readonly buffer: Buffer;
36
- protected head: number;
37
- protected tail: number;
38
- protected readonly maxSize: number;
39
- protected readonly encoding: BufferEncoding;
40
- protected readonly readers: Map<number, number>;
41
- protected readonly streams: Map<MultiRingBufferReadableStream, number>;
42
- protected readerId: number;
43
- constructor(options: MultiRingBufferOptions);
44
- enq(str: string, encoding?: string): void;
45
- getReader(): number;
46
- closeReader(id: number): void;
47
- getStream(encoding?: BufferEncoding): MultiRingBufferReadableStream;
48
- closeStream(readableStream: MultiRingBufferReadableStream): void;
49
- protected onData(start: number): void;
50
- deq(id: number, size?: number, encoding?: BufferEncoding): string | undefined;
51
- sizeForReader(id: number): number;
52
- size(): number;
53
- protected isWrapped(from: number, to: number): boolean;
54
- protected sizeFrom(from: number, to: number, wrap: boolean): number;
55
- emptyForReader(id: number): boolean;
56
- empty(): boolean;
57
- streamsSize(): number;
58
- readersSize(): number;
59
- /**
60
- * Dispose all the attached readers/streams.
61
- */
62
- dispose(): void;
63
- protected shouldIncPos(pos: number, end: number, size: number): boolean;
64
- protected incTailSize(pos: number, head: number, size: number): WrappedPosition;
65
- protected incTail(pos: number, size: number): WrappedPosition;
66
- protected incTails(size: number): void;
67
- protected inc(pos: number, size: number): WrappedPosition;
68
- }
1
+ /// <reference types="node" />
2
+ import * as stream from 'stream';
3
+ import { Disposable } from '@theia/core/lib/common';
4
+ /**
5
+ * The MultiRingBuffer is a ring buffer implementation that allows
6
+ * multiple independent readers.
7
+ *
8
+ * These readers are created using the getReader or getStream functions
9
+ * to create a reader that can be read using deq() or one that is a readable stream.
10
+ */
11
+ export declare class MultiRingBufferReadableStream extends stream.Readable implements Disposable {
12
+ protected readonly ringBuffer: MultiRingBuffer;
13
+ protected readonly reader: number;
14
+ protected readonly encoding: BufferEncoding;
15
+ protected more: boolean;
16
+ protected disposed: boolean;
17
+ constructor(ringBuffer: MultiRingBuffer, reader: number, encoding?: BufferEncoding);
18
+ _read(size: number): void;
19
+ _destroy(err: Error | null, callback: (err: Error | null) => void): void;
20
+ onData(): void;
21
+ deq(size: number): void;
22
+ dispose(): void;
23
+ }
24
+ export declare const MultiRingBufferOptions: unique symbol;
25
+ export interface MultiRingBufferOptions {
26
+ readonly size: number;
27
+ readonly encoding?: BufferEncoding;
28
+ }
29
+ export interface WrappedPosition {
30
+ newPos: number;
31
+ wrap: boolean;
32
+ }
33
+ export declare class MultiRingBuffer implements Disposable {
34
+ protected readonly options: MultiRingBufferOptions;
35
+ protected readonly buffer: Buffer;
36
+ protected head: number;
37
+ protected tail: number;
38
+ protected readonly maxSize: number;
39
+ protected readonly encoding: BufferEncoding;
40
+ protected readonly readers: Map<number, number>;
41
+ protected readonly streams: Map<MultiRingBufferReadableStream, number>;
42
+ protected readerId: number;
43
+ constructor(options: MultiRingBufferOptions);
44
+ enq(str: string, encoding?: string): void;
45
+ getReader(): number;
46
+ closeReader(id: number): void;
47
+ getStream(encoding?: BufferEncoding): MultiRingBufferReadableStream;
48
+ closeStream(readableStream: MultiRingBufferReadableStream): void;
49
+ protected onData(start: number): void;
50
+ deq(id: number, size?: number, encoding?: BufferEncoding): string | undefined;
51
+ sizeForReader(id: number): number;
52
+ size(): number;
53
+ protected isWrapped(from: number, to: number): boolean;
54
+ protected sizeFrom(from: number, to: number, wrap: boolean): number;
55
+ emptyForReader(id: number): boolean;
56
+ empty(): boolean;
57
+ streamsSize(): number;
58
+ readersSize(): number;
59
+ /**
60
+ * Dispose all the attached readers/streams.
61
+ */
62
+ dispose(): void;
63
+ protected shouldIncPos(pos: number, end: number, size: number): boolean;
64
+ protected incTailSize(pos: number, head: number, size: number): WrappedPosition;
65
+ protected incTail(pos: number, size: number): WrappedPosition;
66
+ protected incTails(size: number): void;
67
+ protected inc(pos: number, size: number): WrappedPosition;
68
+ }
69
69
  //# sourceMappingURL=multi-ring-buffer.d.ts.map