goscript 0.2.3 → 0.2.5
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.
- package/README.md +8 -8
- package/cmd/go_js_wasm_exec/main.go +1 -1
- package/cmd/go_js_wasm_exec/main_test.go +1 -1
- package/cmd/goscript/cmd-compile.go +9 -1
- package/cmd/goscript/cmd-test.go +1 -1
- package/cmd/goscript/cmd_compile_test.go +44 -0
- package/cmd/goscript/deps.go +1 -1
- package/cmd/goscript-wasm/main.go +2 -2
- package/compiler/compile-request.go +19 -0
- package/compiler/compile_bench_test.go +121 -0
- package/compiler/compliance_test.go +17 -1
- package/compiler/config.go +2 -0
- package/compiler/gotest/result.go +1 -1
- package/compiler/gotest/runner.go +2 -2
- package/compiler/gotest/runner_test.go +4 -7
- package/compiler/index.test.ts +28 -0
- package/compiler/index.ts +32 -16
- package/compiler/lowering.go +1236 -143
- package/compiler/lowering_bench_test.go +4 -0
- package/compiler/override-facts.go +1 -1
- package/compiler/override-registry_test.go +125 -0
- package/compiler/package-graph.go +92 -0
- package/compiler/package-graph_test.go +113 -0
- package/compiler/runtime-contract.go +1 -1
- package/compiler/semantic-model.go +32 -0
- package/compiler/skeleton_test.go +284 -11
- package/compiler/wasm/compile.go +1 -1
- package/compiler/wasm/compile_test.go +1 -1
- package/dist/compiler/index.d.ts +4 -0
- package/dist/compiler/index.js +26 -15
- package/dist/compiler/index.js.map +1 -1
- package/dist/gs/compress/gzip/index.d.ts +41 -0
- package/dist/gs/compress/gzip/index.js +235 -0
- package/dist/gs/compress/gzip/index.js.map +1 -0
- package/dist/gs/database/sql/driver/index.d.ts +165 -0
- package/dist/gs/database/sql/driver/index.js +432 -0
- package/dist/gs/database/sql/driver/index.js.map +1 -0
- package/dist/gs/encoding/binary/index.d.ts +71 -0
- package/dist/gs/encoding/binary/index.js +778 -0
- package/dist/gs/encoding/binary/index.js.map +1 -0
- package/dist/gs/fmt/fmt.js +156 -57
- package/dist/gs/fmt/fmt.js.map +1 -1
- package/dist/gs/github.com/klauspost/cpuid/v2/index.d.ts +11 -0
- package/dist/gs/github.com/klauspost/cpuid/v2/index.js +28 -0
- package/dist/gs/github.com/klauspost/cpuid/v2/index.js.map +1 -0
- package/dist/gs/github.com/pkg/errors/errors.d.ts +0 -2
- package/dist/gs/github.com/pkg/errors/errors.js.map +1 -1
- package/dist/gs/github.com/pkg/errors/index.d.ts +2 -1
- package/dist/gs/github.com/pkg/errors/index.js +1 -1
- package/dist/gs/github.com/pkg/errors/index.js.map +1 -1
- package/dist/gs/github.com/pkg/errors/stack.d.ts +8 -19
- package/dist/gs/github.com/pkg/errors/stack.js +26 -61
- package/dist/gs/github.com/pkg/errors/stack.js.map +1 -1
- package/dist/gs/golang.org/x/crypto/cryptobyte/asn1/index.d.ts +19 -0
- package/dist/gs/golang.org/x/crypto/cryptobyte/asn1/index.js +25 -0
- package/dist/gs/golang.org/x/crypto/cryptobyte/asn1/index.js.map +1 -0
- package/dist/gs/golang.org/x/crypto/cryptobyte/index.d.ts +104 -0
- package/dist/gs/golang.org/x/crypto/cryptobyte/index.js +1107 -0
- package/dist/gs/golang.org/x/crypto/cryptobyte/index.js.map +1 -0
- package/dist/gs/golang.org/x/crypto/internal/alias/index.d.ts +3 -0
- package/dist/gs/golang.org/x/crypto/internal/alias/index.js +39 -0
- package/dist/gs/golang.org/x/crypto/internal/alias/index.js.map +1 -0
- package/dist/gs/io/fs/glob.js +1 -1
- package/dist/gs/io/fs/glob.js.map +1 -1
- package/dist/gs/io/fs/readlink.d.ts +1 -1
- package/dist/gs/io/fs/readlink.js +2 -2
- package/dist/gs/io/fs/readlink.js.map +1 -1
- package/dist/gs/io/fs/stat.d.ts +4 -2
- package/dist/gs/io/fs/stat.js +12 -73
- package/dist/gs/io/fs/stat.js.map +1 -1
- package/dist/gs/io/fs/sub.d.ts +2 -2
- package/dist/gs/io/fs/sub.js +7 -7
- package/dist/gs/io/fs/sub.js.map +1 -1
- package/dist/gs/io/fs/walk.js +1 -1
- package/dist/gs/io/fs/walk.js.map +1 -1
- package/dist/gs/net/http/index.d.ts +18 -14
- package/dist/gs/net/http/index.js +44 -23
- package/dist/gs/net/http/index.js.map +1 -1
- package/dist/gs/net/http/pprof/index.d.ts +5 -5
- package/dist/gs/net/http/pprof/index.js +21 -21
- package/dist/gs/net/http/pprof/index.js.map +1 -1
- package/dist/gs/runtime/runtime.d.ts +6 -1
- package/dist/gs/runtime/runtime.js +15 -8
- package/dist/gs/runtime/runtime.js.map +1 -1
- package/dist/gs/runtime/trace/index.d.ts +8 -5
- package/dist/gs/runtime/trace/index.js +324 -23
- package/dist/gs/runtime/trace/index.js.map +1 -1
- package/dist/gs/slices/slices.d.ts +2 -1
- package/dist/gs/slices/slices.js +9 -3
- package/dist/gs/slices/slices.js.map +1 -1
- package/dist/gs/sort/search.gs.d.ts +3 -1
- package/dist/gs/sort/search.gs.js +18 -53
- package/dist/gs/sort/search.gs.js.map +1 -1
- package/dist/gs/sync/sync.d.ts +1 -1
- package/dist/gs/sync/sync.js +3 -0
- package/dist/gs/sync/sync.js.map +1 -1
- package/dist/gs/time/time.d.ts +22 -29
- package/dist/gs/time/time.js +111 -32
- package/dist/gs/time/time.js.map +1 -1
- package/dist/gs/unsafe/unsafe.d.ts +3 -2
- package/dist/gs/unsafe/unsafe.js.map +1 -1
- package/go.mod +7 -5
- package/go.sum +12 -26
- package/gs/builtin/runtime-contract.test.ts +25 -0
- package/gs/compress/gzip/index.test.ts +86 -0
- package/gs/compress/gzip/index.ts +297 -0
- package/gs/compress/gzip/meta.json +6 -0
- package/gs/compress/gzip/parity.json +45 -0
- package/gs/database/sql/driver/index.test.ts +88 -0
- package/gs/database/sql/driver/index.ts +675 -0
- package/gs/database/sql/driver/meta.json +3 -0
- package/gs/database/sql/driver/parity.json +144 -0
- package/gs/embed/index.test.ts +1 -1
- package/gs/encoding/binary/index.test.ts +239 -0
- package/gs/encoding/binary/index.ts +999 -0
- package/gs/encoding/binary/meta.json +9 -0
- package/gs/encoding/binary/parity.json +72 -0
- package/gs/fmt/fmt.test.ts +28 -0
- package/gs/fmt/fmt.ts +198 -61
- package/gs/fmt/meta.json +2 -1
- package/gs/github.com/klauspost/cpuid/v2/index.ts +38 -0
- package/gs/github.com/klauspost/cpuid/v2/meta.json +3 -0
- package/gs/github.com/pkg/errors/errors.ts +1 -2
- package/gs/github.com/pkg/errors/index.ts +2 -1
- package/gs/github.com/pkg/errors/stack.ts +34 -62
- package/gs/golang.org/x/crypto/cryptobyte/asn1/index.test.ts +19 -0
- package/gs/golang.org/x/crypto/cryptobyte/asn1/index.ts +29 -0
- package/gs/golang.org/x/crypto/cryptobyte/index.test.ts +255 -0
- package/gs/golang.org/x/crypto/cryptobyte/index.ts +1441 -0
- package/gs/golang.org/x/crypto/cryptobyte/meta.json +3 -0
- package/gs/golang.org/x/crypto/internal/alias/index.test.ts +40 -0
- package/gs/golang.org/x/crypto/internal/alias/index.ts +40 -0
- package/gs/io/fs/glob.ts +1 -1
- package/gs/io/fs/meta.json +3 -0
- package/gs/io/fs/readlink.test.ts +2 -2
- package/gs/io/fs/readlink.ts +5 -2
- package/gs/io/fs/stat.test.ts +79 -0
- package/gs/io/fs/stat.ts +24 -10
- package/gs/io/fs/sub.test.ts +93 -0
- package/gs/io/fs/sub.ts +9 -9
- package/gs/io/fs/walk.ts +1 -1
- package/gs/net/http/index.test.ts +207 -2
- package/gs/net/http/index.ts +68 -37
- package/gs/net/http/meta.json +3 -1
- package/gs/net/http/pprof/index.test.ts +4 -4
- package/gs/net/http/pprof/index.ts +30 -27
- package/gs/runtime/runtime.test.ts +16 -0
- package/gs/runtime/runtime.ts +17 -9
- package/gs/runtime/trace/index.test.ts +113 -14
- package/gs/runtime/trace/index.ts +384 -34
- package/gs/runtime/trace/meta.json +1 -0
- package/gs/slices/slices.test.ts +24 -1
- package/gs/slices/slices.ts +14 -4
- package/gs/sort/meta.json +1 -0
- package/gs/sort/search.gs.ts +20 -5
- package/gs/sync/sync.ts +4 -1
- package/gs/time/time.test.ts +79 -2
- package/gs/time/time.ts +133 -33
- package/gs/unsafe/unsafe.ts +4 -2
- package/package.json +2 -2
|
@@ -42,13 +42,18 @@ export declare class MemStats {
|
|
|
42
42
|
Alloc: number;
|
|
43
43
|
TotalAlloc: number;
|
|
44
44
|
Sys: number;
|
|
45
|
+
HeapAlloc: number;
|
|
46
|
+
HeapSys: number;
|
|
47
|
+
HeapInuse: number;
|
|
48
|
+
StackInuse: number;
|
|
49
|
+
StackSys: number;
|
|
45
50
|
Lookups: number;
|
|
46
51
|
Mallocs: number;
|
|
47
52
|
Frees: number;
|
|
48
53
|
constructor();
|
|
49
54
|
private updateMemoryStats;
|
|
50
55
|
}
|
|
51
|
-
export declare function ReadMemStats(m: MemStats): void;
|
|
56
|
+
export declare function ReadMemStats(m: MemStats | $.VarRef<MemStats> | null): void;
|
|
52
57
|
export interface Error {
|
|
53
58
|
Error(): string;
|
|
54
59
|
}
|
|
@@ -142,6 +142,11 @@ export class MemStats {
|
|
|
142
142
|
Alloc = 0; // bytes allocated and not yet freed
|
|
143
143
|
TotalAlloc = 0; // bytes allocated (even if freed)
|
|
144
144
|
Sys = 0; // bytes obtained from system
|
|
145
|
+
HeapAlloc = 0; // bytes allocated and not yet freed on the heap
|
|
146
|
+
HeapSys = 0; // bytes obtained from system for the heap
|
|
147
|
+
HeapInuse = 0; // bytes in in-use heap spans
|
|
148
|
+
StackInuse = 0; // bytes in stack spans
|
|
149
|
+
StackSys = 0; // bytes obtained from system for stacks
|
|
145
150
|
Lookups = 0; // number of pointer lookups
|
|
146
151
|
Mallocs = 0; // number of mallocs
|
|
147
152
|
Frees = 0; // number of frees
|
|
@@ -151,24 +156,26 @@ export class MemStats {
|
|
|
151
156
|
this.updateMemoryStats();
|
|
152
157
|
}
|
|
153
158
|
updateMemoryStats() {
|
|
154
|
-
|
|
155
|
-
if (typeof performance !== 'undefined' && performance.memory) {
|
|
156
|
-
const mem = performance.memory;
|
|
157
|
-
this.Alloc = mem.usedJSHeapSize || 0;
|
|
158
|
-
this.Sys = mem.totalJSHeapSize || 0;
|
|
159
|
-
this.TotalAlloc = this.Alloc; // Simplified
|
|
160
|
-
}
|
|
159
|
+
updateMemoryStats(this);
|
|
161
160
|
}
|
|
162
161
|
}
|
|
163
162
|
// ReadMemStats populates m with memory allocator statistics
|
|
164
163
|
export function ReadMemStats(m) {
|
|
165
|
-
|
|
164
|
+
m = $.pointerValue(m);
|
|
165
|
+
updateMemoryStats(m);
|
|
166
|
+
}
|
|
167
|
+
function updateMemoryStats(m) {
|
|
166
168
|
if (typeof performance !== 'undefined' && performance.memory) {
|
|
167
169
|
const mem = performance.memory;
|
|
168
170
|
m.Alloc = mem.usedJSHeapSize || 0;
|
|
169
171
|
m.Sys = mem.totalJSHeapSize || 0;
|
|
170
172
|
m.TotalAlloc = m.Alloc; // Simplified
|
|
171
173
|
}
|
|
174
|
+
m.HeapAlloc = m.Alloc;
|
|
175
|
+
m.HeapSys = m.Sys;
|
|
176
|
+
m.HeapInuse = m.Alloc;
|
|
177
|
+
m.StackInuse = 0;
|
|
178
|
+
m.StackSys = 0;
|
|
172
179
|
}
|
|
173
180
|
// TypeAssertionError represents a failed type assertion
|
|
174
181
|
export class TypeAssertionError {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../../gs/runtime/runtime.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../../gs/runtime/runtime.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,13 +7,16 @@ export declare class Task {
|
|
|
7
7
|
End(): void;
|
|
8
8
|
}
|
|
9
9
|
export declare class Region {
|
|
10
|
+
private task;
|
|
11
|
+
private name;
|
|
12
|
+
constructor(task?: number, name?: string);
|
|
10
13
|
End(): void;
|
|
11
14
|
}
|
|
12
|
-
export declare function NewTask(pctx: context.Context | null,
|
|
13
|
-
export declare function Log(
|
|
14
|
-
export declare function Logf(
|
|
15
|
-
export declare function WithRegion(
|
|
16
|
-
export declare function StartRegion(
|
|
15
|
+
export declare function NewTask(pctx: context.Context | null, taskType: string): [context.Context | null, Task];
|
|
16
|
+
export declare function Log(ctx: context.Context | null, category: string, message: string): void;
|
|
17
|
+
export declare function Logf(ctx: context.Context | null, category: string, format: string, ...args: unknown[]): void;
|
|
18
|
+
export declare function WithRegion(ctx: context.Context | null, regionType: string, fn: (() => void) | null): void;
|
|
19
|
+
export declare function StartRegion(ctx: context.Context | null, regionType: string): Region;
|
|
17
20
|
export declare function IsEnabled(): boolean;
|
|
18
21
|
export declare function Start(w: io.Writer | $.VarRef<io.Writer> | null): $.GoError;
|
|
19
22
|
export declare function Stop(): void;
|
|
@@ -1,50 +1,351 @@
|
|
|
1
1
|
import * as $ from '@goscript/builtin/index.js';
|
|
2
2
|
import * as context from '@goscript/context/index.js';
|
|
3
3
|
import * as errors from '@goscript/errors/index.js';
|
|
4
|
+
import * as fmt from '@goscript/fmt/index.js';
|
|
5
|
+
// traceContextKey keys the active *Task stored in a context by NewTask.
|
|
4
6
|
class traceContextKey {
|
|
5
7
|
}
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
const
|
|
8
|
+
// Go execution trace v2 event type codes (iota order from the runtime spec).
|
|
9
|
+
// GoScript emits only the user-task subset plus the minimal proc/goroutine
|
|
10
|
+
// status needed for the upstream trace reader to bind a running context.
|
|
11
|
+
const evEventBatch = 1;
|
|
12
|
+
const evStrings = 4;
|
|
13
|
+
const evString = 5;
|
|
14
|
+
const evFrequency = 8;
|
|
15
|
+
const evProcStatus = 13;
|
|
16
|
+
const evGoStatus = 25;
|
|
17
|
+
const evUserTaskBegin = 40;
|
|
18
|
+
const evUserTaskEnd = 41;
|
|
19
|
+
const evUserRegionBegin = 42;
|
|
20
|
+
const evUserRegionEnd = 43;
|
|
21
|
+
const evUserLog = 44;
|
|
22
|
+
// procRunning and goRunning are the running status codes for the synthetic P
|
|
23
|
+
// and G that own every GoScript user event (GoScript has no real scheduler).
|
|
24
|
+
const procRunning = 1;
|
|
25
|
+
const goRunning = 2;
|
|
26
|
+
// traceGen, traceProc, and traceGoroutine are the fixed generation, P, and G
|
|
27
|
+
// identities for the single synthetic GoScript execution context.
|
|
28
|
+
const traceGen = 1;
|
|
29
|
+
const traceMID = 0;
|
|
30
|
+
const traceProc = 0;
|
|
31
|
+
const traceGoroutine = 1;
|
|
32
|
+
// traceFreqHz is the timestamp frequency reported to the reader. GoScript
|
|
33
|
+
// records nanosecond timestamps, so the frequency is one billion ticks/sec
|
|
34
|
+
// and the reader's tick->nanosecond conversion is the identity.
|
|
35
|
+
const traceFreqHz = 1_000_000_000;
|
|
36
|
+
// maxBatchData bounds the post-header data block of every per-M batch. The
|
|
37
|
+
// trace v2 reader rejects any batch whose declared size exceeds 64 KiB
|
|
38
|
+
// (tracev2.MaxBatchSize = 64<<10), so a realistic capture must split its string
|
|
39
|
+
// and event records across multiple batches. The cap sits below the hard limit
|
|
40
|
+
// to leave margin for the next record, which is written in full before the size
|
|
41
|
+
// is rechecked.
|
|
42
|
+
const maxBatchData = 60 * 1024;
|
|
43
|
+
// maxEventBytes is a safe upper bound on the encoded size of one user event
|
|
44
|
+
// (kind byte plus a handful of base-128 varints; strings are interned, so no
|
|
45
|
+
// inline payload). The event loop flushes the current batch before its data
|
|
46
|
+
// block can grow within this margin of maxBatchData.
|
|
47
|
+
const maxEventBytes = 128;
|
|
48
|
+
// recEvent kinds.
|
|
49
|
+
const kindTaskBegin = 0;
|
|
50
|
+
const kindTaskEnd = 1;
|
|
51
|
+
const kindRegionBegin = 2;
|
|
52
|
+
const kindRegionEnd = 3;
|
|
53
|
+
const kindLog = 4;
|
|
54
|
+
function newRecorder() {
|
|
55
|
+
return { enabled: false, writer: null, startTs: 0, events: [] };
|
|
56
|
+
}
|
|
57
|
+
// rec is the active capture. nextTaskID is process-global and monotonic like
|
|
58
|
+
// the Go runtime task counter, so it persists across Start/Stop cycles.
|
|
59
|
+
let rec = newRecorder();
|
|
60
|
+
let nextTaskID = 0;
|
|
61
|
+
// nowNs reads the high-resolution monotonic clock in nanoseconds, the same
|
|
62
|
+
// source that backs time.Time monotonic readings.
|
|
63
|
+
function nowNs() {
|
|
64
|
+
if (typeof performance !== 'undefined' && performance.now) {
|
|
65
|
+
return performance.now() * 1_000_000;
|
|
66
|
+
}
|
|
67
|
+
return globalThis.Date.now() * 1_000_000;
|
|
68
|
+
}
|
|
69
|
+
function contextKey() {
|
|
70
|
+
return $.interfaceValue($.markAsStructValue(new traceContextKey()), 'trace.traceContextKey');
|
|
71
|
+
}
|
|
72
|
+
// taskIDFromContext returns the active task ID carried by ctx, or 0 when ctx
|
|
73
|
+
// carries no task (the background task).
|
|
74
|
+
function taskIDFromContext(ctx) {
|
|
75
|
+
if (ctx == null) {
|
|
76
|
+
return 0;
|
|
77
|
+
}
|
|
78
|
+
const value = ctx.Value(contextKey());
|
|
79
|
+
if (value instanceof Task) {
|
|
80
|
+
return value.id;
|
|
81
|
+
}
|
|
82
|
+
return 0;
|
|
83
|
+
}
|
|
84
|
+
function record(kind, task, parent, s0, s1) {
|
|
85
|
+
rec.events.push({ kind, ts: nowNs(), task, parent, s0, s1 });
|
|
86
|
+
}
|
|
10
87
|
export class Task {
|
|
11
88
|
id;
|
|
12
89
|
constructor(id = 0) {
|
|
13
90
|
this.id = id;
|
|
14
91
|
}
|
|
15
|
-
End() {
|
|
92
|
+
End() {
|
|
93
|
+
if (rec.enabled) {
|
|
94
|
+
record(kindTaskEnd, this.id, 0, '', '');
|
|
95
|
+
}
|
|
96
|
+
}
|
|
16
97
|
}
|
|
17
98
|
export class Region {
|
|
18
|
-
|
|
99
|
+
task;
|
|
100
|
+
name;
|
|
101
|
+
constructor(task = 0, name = '') {
|
|
102
|
+
this.task = task;
|
|
103
|
+
this.name = name;
|
|
104
|
+
}
|
|
105
|
+
End() {
|
|
106
|
+
if (rec.enabled) {
|
|
107
|
+
record(kindRegionEnd, this.task, 0, this.name, '');
|
|
108
|
+
}
|
|
109
|
+
}
|
|
19
110
|
}
|
|
20
|
-
export function NewTask(pctx,
|
|
111
|
+
export function NewTask(pctx, taskType) {
|
|
21
112
|
const parent = pctx ?? context.Background();
|
|
22
|
-
const task = new Task(++
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
];
|
|
113
|
+
const task = new Task(++nextTaskID);
|
|
114
|
+
if (rec.enabled) {
|
|
115
|
+
record(kindTaskBegin, task.id, taskIDFromContext(pctx), taskType, '');
|
|
116
|
+
}
|
|
117
|
+
return [context.WithValue(parent, contextKey(), task), task];
|
|
27
118
|
}
|
|
28
|
-
export function Log(
|
|
29
|
-
|
|
30
|
-
|
|
119
|
+
export function Log(ctx, category, message) {
|
|
120
|
+
if (rec.enabled) {
|
|
121
|
+
record(kindLog, taskIDFromContext(ctx), 0, category, message);
|
|
122
|
+
}
|
|
31
123
|
}
|
|
32
|
-
export function Logf(
|
|
33
|
-
|
|
34
|
-
|
|
124
|
+
export function Logf(ctx, category, format, ...args) {
|
|
125
|
+
if (rec.enabled) {
|
|
126
|
+
Log(ctx, category, fmt.Sprintf(format, ...args));
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
export function WithRegion(ctx, regionType, fn) {
|
|
130
|
+
const task = taskIDFromContext(ctx);
|
|
131
|
+
if (rec.enabled) {
|
|
132
|
+
record(kindRegionBegin, task, 0, regionType, '');
|
|
133
|
+
}
|
|
134
|
+
try {
|
|
135
|
+
fn?.();
|
|
136
|
+
}
|
|
137
|
+
finally {
|
|
138
|
+
if (rec.enabled) {
|
|
139
|
+
record(kindRegionEnd, task, 0, regionType, '');
|
|
140
|
+
}
|
|
141
|
+
}
|
|
35
142
|
}
|
|
36
|
-
export function StartRegion(
|
|
37
|
-
|
|
143
|
+
export function StartRegion(ctx, regionType) {
|
|
144
|
+
const task = taskIDFromContext(ctx);
|
|
145
|
+
if (rec.enabled) {
|
|
146
|
+
record(kindRegionBegin, task, 0, regionType, '');
|
|
147
|
+
}
|
|
148
|
+
return new Region(task, regionType);
|
|
38
149
|
}
|
|
39
150
|
export function IsEnabled() {
|
|
40
|
-
return
|
|
151
|
+
return rec.enabled;
|
|
41
152
|
}
|
|
42
153
|
export function Start(w) {
|
|
43
154
|
const writer = $.pointerValueOrNil(w);
|
|
44
155
|
if (writer == null) {
|
|
45
156
|
return errors.New('runtime/trace: nil trace writer');
|
|
46
157
|
}
|
|
47
|
-
|
|
158
|
+
if (rec.enabled) {
|
|
159
|
+
return errors.New('runtime/trace: tracing already enabled');
|
|
160
|
+
}
|
|
161
|
+
rec = newRecorder();
|
|
162
|
+
rec.enabled = true;
|
|
163
|
+
rec.writer = writer;
|
|
164
|
+
rec.startTs = nowNs();
|
|
165
|
+
return null;
|
|
166
|
+
}
|
|
167
|
+
export function Stop() {
|
|
168
|
+
if (!rec.enabled) {
|
|
169
|
+
return;
|
|
170
|
+
}
|
|
171
|
+
const writer = rec.writer;
|
|
172
|
+
const buffered = rec;
|
|
173
|
+
rec = newRecorder();
|
|
174
|
+
const payload = encodeTrace(buffered);
|
|
175
|
+
if (writer != null) {
|
|
176
|
+
writer.Write(payload);
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
// putUvarint appends value to out as a base-128 varint. It uses arithmetic
|
|
180
|
+
// rather than bit operations so values above 2^32 (nanosecond timestamps)
|
|
181
|
+
// encode correctly.
|
|
182
|
+
function putUvarint(out, value) {
|
|
183
|
+
let v = Math.floor(value);
|
|
184
|
+
if (v < 0) {
|
|
185
|
+
v = 0;
|
|
186
|
+
}
|
|
187
|
+
while (v >= 0x80) {
|
|
188
|
+
out.push((v % 0x80) + 0x80);
|
|
189
|
+
v = Math.floor(v / 0x80);
|
|
190
|
+
}
|
|
191
|
+
out.push(v);
|
|
192
|
+
}
|
|
193
|
+
function utf8Bytes(s) {
|
|
194
|
+
if (typeof TextEncoder !== 'undefined') {
|
|
195
|
+
return new TextEncoder().encode(s);
|
|
196
|
+
}
|
|
197
|
+
const out = new Uint8Array(s.length);
|
|
198
|
+
for (let i = 0; i < s.length; i++) {
|
|
199
|
+
out[i] = s.charCodeAt(i) & 0xff;
|
|
200
|
+
}
|
|
201
|
+
return out;
|
|
202
|
+
}
|
|
203
|
+
// appendBatch frames data as a trace v2 per-M batch (EvEventBatch header plus
|
|
204
|
+
// the generation, M, base timestamp, and length prefix).
|
|
205
|
+
function appendBatch(out, data) {
|
|
206
|
+
out.push(evEventBatch);
|
|
207
|
+
putUvarint(out, traceGen);
|
|
208
|
+
putUvarint(out, traceMID);
|
|
209
|
+
putUvarint(out, 0);
|
|
210
|
+
putUvarint(out, data.length);
|
|
211
|
+
for (const b of data) {
|
|
212
|
+
out.push(b);
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
// encodeTrace serializes the buffered user events as a single-generation Go
|
|
216
|
+
// trace v2 byte stream containing only the user-task subset.
|
|
217
|
+
function encodeTrace(r) {
|
|
218
|
+
const out = [];
|
|
219
|
+
// Header: "go 1.22 trace\x00\x00\x00". The reader selects the Go 1.22 event
|
|
220
|
+
// table, whose final event is EvUserLog, covering every event GoScript emits.
|
|
221
|
+
const header = 'go 1.22 trace\x00\x00\x00';
|
|
222
|
+
for (let i = 0; i < header.length; i++) {
|
|
223
|
+
out.push(header.charCodeAt(i) & 0xff);
|
|
224
|
+
}
|
|
225
|
+
// Frequency batch (required): ticks per second.
|
|
226
|
+
const freq = [evFrequency];
|
|
227
|
+
putUvarint(freq, traceFreqHz);
|
|
228
|
+
appendBatch(out, freq);
|
|
229
|
+
// Intern the strings referenced by user events.
|
|
230
|
+
const stringIDs = new Map();
|
|
231
|
+
const internedStrings = [];
|
|
232
|
+
const intern = (s) => {
|
|
233
|
+
let id = stringIDs.get(s);
|
|
234
|
+
if (id === undefined) {
|
|
235
|
+
id = internedStrings.length + 1;
|
|
236
|
+
stringIDs.set(s, id);
|
|
237
|
+
internedStrings.push(s);
|
|
238
|
+
}
|
|
239
|
+
return id;
|
|
240
|
+
};
|
|
241
|
+
for (const ev of r.events) {
|
|
242
|
+
if (ev.kind === kindTaskBegin ||
|
|
243
|
+
ev.kind === kindRegionBegin ||
|
|
244
|
+
ev.kind === kindRegionEnd) {
|
|
245
|
+
intern(ev.s0);
|
|
246
|
+
}
|
|
247
|
+
else if (ev.kind === kindLog) {
|
|
248
|
+
intern(ev.s0);
|
|
249
|
+
intern(ev.s1);
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
// Strings batches. The reader concatenates the string dictionary across every
|
|
253
|
+
// EvStrings batch in the generation, so a large table splits into multiple
|
|
254
|
+
// batches whose data blocks each stay under maxBatchData. Each EvString record
|
|
255
|
+
// (tag, id, length, bytes) stays whole within one batch.
|
|
256
|
+
if (internedStrings.length > 0) {
|
|
257
|
+
let strings = [evStrings];
|
|
258
|
+
for (let i = 0; i < internedStrings.length; i++) {
|
|
259
|
+
const bytes = utf8Bytes(internedStrings[i]);
|
|
260
|
+
const recordSize = 1 + 10 + 10 + bytes.length;
|
|
261
|
+
if (strings.length > 1 && strings.length + recordSize > maxBatchData) {
|
|
262
|
+
appendBatch(out, strings);
|
|
263
|
+
strings = [evStrings];
|
|
264
|
+
}
|
|
265
|
+
strings.push(evString);
|
|
266
|
+
putUvarint(strings, i + 1);
|
|
267
|
+
putUvarint(strings, bytes.length);
|
|
268
|
+
for (const b of bytes) {
|
|
269
|
+
strings.push(b);
|
|
270
|
+
}
|
|
271
|
+
}
|
|
272
|
+
appendBatch(out, strings);
|
|
273
|
+
}
|
|
274
|
+
// Event batches: synthetic running P and G, then any user events in order. The
|
|
275
|
+
// running context is emitted even with no user events, so every capture is a
|
|
276
|
+
// complete single-generation trace the reader accepts rather than a bare
|
|
277
|
+
// header plus frequency batch. User events split across multiple per-M batches
|
|
278
|
+
// so no data block exceeds maxBatchData. The reader resets its delta clock to
|
|
279
|
+
// each batch's base timestamp (0 here), so flushing resets lastTs to 0 and the
|
|
280
|
+
// first event of every batch re-emits its absolute offset as the delta.
|
|
281
|
+
let data = [];
|
|
282
|
+
let lastTs = 0;
|
|
283
|
+
const emitDelta = (ts) => {
|
|
284
|
+
const offset = Math.max(0, Math.floor(ts - r.startTs));
|
|
285
|
+
const dt = Math.max(0, offset - lastTs);
|
|
286
|
+
lastTs = offset;
|
|
287
|
+
putUvarint(data, dt);
|
|
288
|
+
};
|
|
289
|
+
const flushEventBatch = () => {
|
|
290
|
+
appendBatch(out, data);
|
|
291
|
+
data = [];
|
|
292
|
+
lastTs = 0;
|
|
293
|
+
};
|
|
294
|
+
// EvProcStatus(dt, p, status): bind the running P to the context.
|
|
295
|
+
data.push(evProcStatus);
|
|
296
|
+
putUvarint(data, 0);
|
|
297
|
+
putUvarint(data, traceProc);
|
|
298
|
+
putUvarint(data, procRunning);
|
|
299
|
+
// EvGoStatus(dt, g, m, status): bind the running G to the context.
|
|
300
|
+
data.push(evGoStatus);
|
|
301
|
+
putUvarint(data, 0);
|
|
302
|
+
putUvarint(data, traceGoroutine);
|
|
303
|
+
putUvarint(data, traceMID);
|
|
304
|
+
putUvarint(data, goRunning);
|
|
305
|
+
for (const ev of r.events) {
|
|
306
|
+
if (data.length + maxEventBytes > maxBatchData) {
|
|
307
|
+
flushEventBatch();
|
|
308
|
+
}
|
|
309
|
+
switch (ev.kind) {
|
|
310
|
+
case kindTaskBegin:
|
|
311
|
+
data.push(evUserTaskBegin);
|
|
312
|
+
emitDelta(ev.ts);
|
|
313
|
+
putUvarint(data, ev.task);
|
|
314
|
+
putUvarint(data, ev.parent);
|
|
315
|
+
putUvarint(data, intern(ev.s0));
|
|
316
|
+
putUvarint(data, 0);
|
|
317
|
+
break;
|
|
318
|
+
case kindTaskEnd:
|
|
319
|
+
data.push(evUserTaskEnd);
|
|
320
|
+
emitDelta(ev.ts);
|
|
321
|
+
putUvarint(data, ev.task);
|
|
322
|
+
putUvarint(data, 0);
|
|
323
|
+
break;
|
|
324
|
+
case kindRegionBegin:
|
|
325
|
+
data.push(evUserRegionBegin);
|
|
326
|
+
emitDelta(ev.ts);
|
|
327
|
+
putUvarint(data, ev.task);
|
|
328
|
+
putUvarint(data, intern(ev.s0));
|
|
329
|
+
putUvarint(data, 0);
|
|
330
|
+
break;
|
|
331
|
+
case kindRegionEnd:
|
|
332
|
+
data.push(evUserRegionEnd);
|
|
333
|
+
emitDelta(ev.ts);
|
|
334
|
+
putUvarint(data, ev.task);
|
|
335
|
+
putUvarint(data, intern(ev.s0));
|
|
336
|
+
putUvarint(data, 0);
|
|
337
|
+
break;
|
|
338
|
+
case kindLog:
|
|
339
|
+
data.push(evUserLog);
|
|
340
|
+
emitDelta(ev.ts);
|
|
341
|
+
putUvarint(data, ev.task);
|
|
342
|
+
putUvarint(data, intern(ev.s0));
|
|
343
|
+
putUvarint(data, intern(ev.s1));
|
|
344
|
+
putUvarint(data, 0);
|
|
345
|
+
break;
|
|
346
|
+
}
|
|
347
|
+
}
|
|
348
|
+
flushEventBatch();
|
|
349
|
+
return new Uint8Array(out);
|
|
48
350
|
}
|
|
49
|
-
export function Stop() { }
|
|
50
351
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../gs/runtime/trace/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,4BAA4B,CAAA;AAC/C,OAAO,KAAK,OAAO,MAAM,4BAA4B,CAAA;AACrD,OAAO,KAAK,MAAM,MAAM,2BAA2B,CAAA;AAGnD,MAAM,eAAe;CAAG;AAExB,MAAM,UAAU,GAAG;IACjB,UAAU,EAAE,CAAC;CACd,CAAA;AAED,MAAM,qBAAqB,GAAG,MAAM,CAAC,GAAG,CACtC,6DAA6D,CAC9D,CAAA;AAED,MAAM,OAAO,IAAI;IACR,EAAE,CAAQ;IAEjB,YAAY,EAAE,GAAG,CAAC;QAChB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAA;IACd,CAAC;IAEM,GAAG,KAAU,CAAC;CACtB;AAED,MAAM,OAAO,MAAM;IACV,GAAG,KAAU,CAAC;CACtB;AAED,MAAM,UAAU,OAAO,CACrB,IAA4B,EAC5B,SAAiB;IAEjB,MAAM,MAAM,GAAG,IAAI,IAAI,OAAO,CAAC,UAAU,EAAE,CAAA;IAC3C,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC,CAAA;IAC9C,OAAO;QACL,OAAO,CAAC,SAAS,CACf,MAAM,EACN,CAAC,CAAC,cAAc,CAAC,IAAI,eAAe,EAAE,EAAE,uBAAuB,CAAC,EAChE,CAAC,CAAC,cAAc,CAAC,IAAI,EAAE,aAAa,CAAC,CACtC;QACD,IAAI;KACL,CAAA;AACH,CAAC;AAED,MAAM,UAAU,GAAG,CACjB,IAA4B,EAC5B,QAAgB,EAChB,OAAe;IAEf,KAAK,QAAQ,CAAA;IACb,KAAK,OAAO,CAAA;AACd,CAAC;AAED,MAAM,UAAU,IAAI,CAClB,IAA4B,EAC5B,SAAiB,EACjB,OAAe,EACf,GAAG,KAAgB,IACZ,CAAC;AAEV,MAAM,UAAU,UAAU,CACxB,IAA4B,EAC5B,WAAmB,EACnB,EAAuB;IAEvB,EAAE,EAAE,EAAE,CAAA;AACR,CAAC;AAED,MAAM,UAAU,WAAW,CACzB,IAA4B,EAC5B,WAAmB;IAEnB,OAAO,IAAI,MAAM,EAAE,CAAA;AACrB,CAAC;AAED,MAAM,UAAU,SAAS;IACvB,OAAO,KAAK,CAAA;AACd,CAAC;AAED,MAAM,UAAU,KAAK,CAAC,CAAyC;IAC7D,MAAM,MAAM,GAAG,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAA;IACrC,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;QACnB,OAAO,MAAM,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAA;IACtD,CAAC;IACD,OAAO,qBAAqB,CAAA;AAC9B,CAAC;AAED,MAAM,UAAU,IAAI,KAAU,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../gs/runtime/trace/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -40,7 +40,8 @@ export declare function Max<T extends cmp.Ordered>(x: $.Slice<T>): T;
|
|
|
40
40
|
export declare function Min<T extends cmp.Ordered>(x: $.Slice<T>): T;
|
|
41
41
|
export declare function MaxFunc<T>(x: $.Slice<T>, compare: CompareCallback<T>): T;
|
|
42
42
|
export declare function MinFunc<T>(x: $.Slice<T>, compare: CompareCallback<T>): T;
|
|
43
|
-
export declare function Collect<T>(seq: iter.Seq<T>): $.Slice<T>;
|
|
43
|
+
export declare function Collect<T>(seq: iter.Seq<T> | null): $.Slice<T>;
|
|
44
|
+
export declare function AppendSeq<T>(s: $.Slice<T>, seq: iter.Seq<T> | null): $.Slice<T>;
|
|
44
45
|
export declare function Sorted<T extends string | number>(seq: iter.Seq<T>): $.Slice<T>;
|
|
45
46
|
/**
|
|
46
47
|
* Delete removes the elements s[i:j] from s, returning the modified slice.
|
package/dist/gs/slices/slices.js
CHANGED
|
@@ -225,12 +225,18 @@ export function MinFunc(x, compare) {
|
|
|
225
225
|
return min;
|
|
226
226
|
}
|
|
227
227
|
export function Collect(seq) {
|
|
228
|
-
|
|
228
|
+
return AppendSeq(null, seq);
|
|
229
|
+
}
|
|
230
|
+
export function AppendSeq(s, seq) {
|
|
231
|
+
if (seq == null) {
|
|
232
|
+
throw new Error('slices: nil iterator');
|
|
233
|
+
}
|
|
234
|
+
let out = s;
|
|
229
235
|
seq((value) => {
|
|
230
|
-
out
|
|
236
|
+
out = $.append(out, value);
|
|
231
237
|
return true;
|
|
232
238
|
});
|
|
233
|
-
return out
|
|
239
|
+
return out;
|
|
234
240
|
}
|
|
235
241
|
export function Sorted(seq) {
|
|
236
242
|
const out = Collect(seq);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slices.js","sourceRoot":"","sources":["../../../gs/slices/slices.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"slices.js","sourceRoot":"","sources":["../../../gs/slices/slices.ts"],"names":[],"mappings":"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"}
|