reg-cli 0.18.14 → 0.18.16

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/dist/index.js CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  var _glob = _interopRequireDefault(require("glob"));
4
4
  var _makeDir = _interopRequireDefault(require("make-dir"));
5
- var _del = _interopRequireDefault(require("del"));
5
+ var _del = require("del");
6
6
  var _fs = _interopRequireDefault(require("fs"));
7
7
  var _path = _interopRequireDefault(require("path"));
8
8
  var _lodash = require("lodash");
@@ -73,7 +73,7 @@ var cleanupExpectedDir = (expectedDir, changedFiles) => {
73
73
  return escapeGlob(_path.default.posix.join(...directories, image));
74
74
  });
75
75
  // force: true needed to allow deleting outside working directory
76
- return (0, _del.default)(paths, {
76
+ return (0, _del.deleteAsync)(paths, {
77
77
  force: true
78
78
  });
79
79
  };
package/dist/tracing.js CHANGED
@@ -3,119 +3,167 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.shutdownTracing = exports.initTracing = exports.getTracer = exports.createSyncSpan = exports.createSpan = void 0;
6
+ exports.withSpan = exports.startSpan = exports.startRootSpan = exports.shutdownTracing = exports.isTracingEnabled = exports.initTracing = exports.getTracer = exports.getTraceContext = exports.endRootSpan = void 0;
7
7
  var _sdkNode = require("@opentelemetry/sdk-node");
8
8
  var _exporterTraceOtlpHttp = require("@opentelemetry/exporter-trace-otlp-http");
9
9
  var _api = require("@opentelemetry/api");
10
+ var _resources = require("@opentelemetry/resources");
11
+ var _semanticConventions = require("@opentelemetry/semantic-conventions");
10
12
  var sdk = null;
11
13
  var isInitialized = false;
12
- var createSDK = () => {
13
- var isJaegerEnabled = process.env.JAEGER_ENABLED === 'true';
14
- if (isJaegerEnabled) {
15
- var otlpExporter = new _exporterTraceOtlpHttp.OTLPTraceExporter({
16
- url: 'http://localhost:4318/v1/traces' // Jaeger OTLP endpoint
17
- });
18
- return new _sdkNode.NodeSDK({
19
- traceExporter: otlpExporter,
20
- serviceName: 'reg-cli',
21
- instrumentations: []
22
- });
23
- } else {
24
- return new _sdkNode.NodeSDK({
25
- serviceName: 'reg-cli',
26
- instrumentations: []
27
- });
28
- }
14
+ var currentRootSpan = null;
15
+ var currentRootContext = null;
16
+ var isTracingEnabled = () => {
17
+ return process.env.OTEL_ENABLED === 'true' || process.env.JAEGER_ENABLED === 'true';
29
18
  };
19
+ exports.isTracingEnabled = isTracingEnabled;
30
20
  var initTracing = () => {
31
- if (!isInitialized) {
32
- sdk = createSDK();
33
- sdk.start();
34
- isInitialized = true;
35
- console.log('[Tracing] OpenTelemetry initialized with Jaeger enabled:', process.env.JAEGER_ENABLED);
21
+ if (!isTracingEnabled() || isInitialized) {
22
+ return;
23
+ }
24
+ var endpoint = process.env.OTEL_EXPORTER_OTLP_ENDPOINT || 'http://localhost:4318/v1/traces';
25
+ var exporter = new _exporterTraceOtlpHttp.OTLPTraceExporter({
26
+ url: endpoint
27
+ });
28
+ sdk = new _sdkNode.NodeSDK({
29
+ resource: new _resources.Resource({
30
+ [_semanticConventions.SemanticResourceAttributes.SERVICE_NAME]: 'reg-cli-js',
31
+ [_semanticConventions.SemanticResourceAttributes.SERVICE_VERSION]: '1.0.0'
32
+ }),
33
+ traceExporter: exporter
34
+ });
35
+ sdk.start();
36
+ isInitialized = true;
37
+ if (process.env.OTEL_DEBUG === 'true') {
38
+ console.log('[Tracing-JS] OpenTelemetry initialized');
39
+ console.log(`[Tracing-JS] OTLP endpoint: ${endpoint}`);
36
40
  }
37
41
  };
38
42
  exports.initTracing = initTracing;
39
43
  var shutdownTracing = async () => {
40
44
  if (sdk && isInitialized) {
41
- console.log('[Tracing] Starting SDK shutdown...');
42
- console.log('[Tracing] Waiting for traces to be exported...');
43
-
44
- // より長い時間を待ってからシャットダウンする
45
- await new Promise(resolve => setTimeout(resolve, 2000));
45
+ if (process.env.OTEL_DEBUG === 'true') {
46
+ console.log('[Tracing-JS] Starting SDK shutdown...');
47
+ }
46
48
  await sdk.shutdown();
47
- isInitialized = false;
48
- sdk = null;
49
- console.log('[Tracing] OpenTelemetry SDK shut down');
49
+ if (process.env.OTEL_DEBUG === 'true') {
50
+ console.log('[Tracing-JS] OpenTelemetry SDK shut down');
51
+ }
50
52
  }
51
53
  };
52
54
  exports.shutdownTracing = shutdownTracing;
53
55
  var getTracer = () => {
54
- return _api.trace.getTracer('reg-cli', '0.18.10');
56
+ return _api.trace.getTracer('reg-cli-js', '1.0.0');
55
57
  };
56
58
  exports.getTracer = getTracer;
57
- var createSpan = async (name, fn) => {
59
+ var startRootSpan = name => {
60
+ if (!isTracingEnabled() || !isInitialized) {
61
+ return null;
62
+ }
58
63
  var tracer = getTracer();
59
- return tracer.startActiveSpan(name, async span => {
60
- try {
61
- console.log(`[Tracing] Starting span: ${name}`);
62
- var startTime = process.hrtime.bigint();
63
- var result = await fn();
64
- var endTime = process.hrtime.bigint();
65
- var durationMs = Number(endTime - startTime) / 1000000;
66
- span.setStatus({
67
- code: 1
68
- }); // Success
69
- span.setAttributes({
70
- 'reg.operation': name,
71
- 'reg.duration': durationMs
64
+ currentRootSpan = tracer.startSpan(name);
65
+ currentRootContext = _api.trace.setSpan(_api.ROOT_CONTEXT, currentRootSpan);
66
+ if (process.env.OTEL_DEBUG === 'true') {
67
+ var spanContext = currentRootSpan.spanContext();
68
+ console.log(`[Tracing-JS] Started root span: ${name}`);
69
+ console.log(`[Tracing-JS] Trace ID: ${spanContext.traceId}`);
70
+ console.log(`[Tracing-JS] Span ID: ${spanContext.spanId}`);
71
+ }
72
+ return {
73
+ traceId: currentRootSpan.spanContext().traceId,
74
+ spanId: currentRootSpan.spanContext().spanId
75
+ };
76
+ };
77
+ exports.startRootSpan = startRootSpan;
78
+ var endRootSpan = (success = true) => {
79
+ if (currentRootSpan) {
80
+ if (success) {
81
+ currentRootSpan.setStatus({
82
+ code: _api.SpanStatusCode.OK
83
+ });
84
+ } else {
85
+ currentRootSpan.setStatus({
86
+ code: _api.SpanStatusCode.ERROR
72
87
  });
73
- console.log(`[Tracing] Completed span: ${name} (${durationMs.toFixed(2)}ms)`);
74
- return result;
75
- } catch (err) {
76
- console.log(`[Tracing] Error in span: ${name}`, err);
77
- span.setStatus({
78
- code: 2,
79
- message: err.message
80
- }); // Error
81
- span.recordException(err);
82
- throw err;
83
- } finally {
84
- span.end();
85
88
  }
86
- });
89
+ currentRootSpan.end();
90
+ if (process.env.OTEL_DEBUG === 'true') {
91
+ console.log('[Tracing-JS] Ended root span');
92
+ }
93
+ currentRootSpan = null;
94
+ currentRootContext = null;
95
+ }
96
+ };
97
+ exports.endRootSpan = endRootSpan;
98
+ var startSpan = (name, attributes = {}) => {
99
+ if (!isTracingEnabled() || !isInitialized) {
100
+ return {
101
+ end: () => {},
102
+ setStatus: () => {},
103
+ setAttribute: () => {}
104
+ };
105
+ }
106
+ var tracer = getTracer();
107
+ var parentContext = currentRootContext || _api.ROOT_CONTEXT;
108
+ var span = tracer.startSpan(name, {
109
+ attributes
110
+ }, parentContext);
111
+ var startTime = Date.now();
112
+ if (process.env.OTEL_DEBUG === 'true') {
113
+ console.log(`[Tracing-JS] Started span: ${name}`);
114
+ }
115
+
116
+ // Wrap the end method to log when span ends
117
+ var originalEnd = span.end.bind(span);
118
+ span.end = () => {
119
+ originalEnd();
120
+ if (process.env.OTEL_DEBUG === 'true') {
121
+ var duration = Date.now() - startTime;
122
+ console.log(`[Tracing-JS] Ended span: ${name} (${duration}ms)`);
123
+ }
124
+ };
125
+ return span;
87
126
  };
88
- exports.createSpan = createSpan;
89
- var createSyncSpan = (name, fn) => {
127
+ exports.startSpan = startSpan;
128
+ var withSpan = async (name, attributes, fn) => {
129
+ if (!isTracingEnabled() || !isInitialized) {
130
+ return fn();
131
+ }
90
132
  var tracer = getTracer();
91
- return tracer.startActiveSpan(name, span => {
133
+ var parentContext = currentRootContext || _api.ROOT_CONTEXT;
134
+ return tracer.startActiveSpan(name, {
135
+ attributes
136
+ }, parentContext, async span => {
92
137
  try {
93
- console.log(`[Tracing] Starting sync span: ${name}`);
94
- var startTime = process.hrtime.bigint();
95
- var result = fn();
96
- var endTime = process.hrtime.bigint();
97
- var durationMs = Number(endTime - startTime) / 1000000;
138
+ var result = await fn();
98
139
  span.setStatus({
99
- code: 1
100
- }); // Success
101
- span.setAttributes({
102
- 'reg.operation': name,
103
- 'reg.duration': durationMs,
104
- 'reg.type': 'sync'
140
+ code: _api.SpanStatusCode.OK
105
141
  });
106
- console.log(`[Tracing] Completed sync span: ${name} (${durationMs.toFixed(2)}ms)`);
107
142
  return result;
108
- } catch (err) {
109
- console.log(`[Tracing] Error in sync span: ${name}`, err);
143
+ } catch (error) {
110
144
  span.setStatus({
111
- code: 2,
112
- message: err.message
113
- }); // Error
114
- span.recordException(err);
115
- throw err;
145
+ code: _api.SpanStatusCode.ERROR,
146
+ message: error.message
147
+ });
148
+ throw error;
116
149
  } finally {
117
150
  span.end();
151
+ if (process.env.OTEL_DEBUG === 'true') {
152
+ console.log(`[Tracing-JS] Ended span: ${name}`);
153
+ }
118
154
  }
119
155
  });
120
156
  };
121
- exports.createSyncSpan = createSyncSpan;
157
+
158
+ // For child processes - context propagation
159
+ exports.withSpan = withSpan;
160
+ var getTraceContext = () => {
161
+ if (currentRootSpan) {
162
+ return {
163
+ traceId: currentRootSpan.spanContext().traceId,
164
+ spanId: currentRootSpan.spanContext().spanId
165
+ };
166
+ }
167
+ return null;
168
+ };
169
+ exports.getTraceContext = getTraceContext;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "reg-cli",
3
- "version": "0.18.14",
3
+ "version": "0.18.16",
4
4
  "description": "",
5
5
  "main": "./dist/index.js",
6
6
  "start": "node ./dist/cli.js",
@@ -34,13 +34,13 @@
34
34
  "pnpm": {
35
35
  "overrides": {
36
36
  "set-value": "4.1.0",
37
- "tar": "^6.0.0",
38
- "tar-fs": "3.1.1",
37
+ "tar": "^7.5.13",
38
+ "tar-fs": "3.1.2",
39
39
  "ws": "8.17.1",
40
40
  "kind-of": "^6.0.3",
41
41
  "randomatic": "3.1.1",
42
42
  "deep-extend": "0.6.0",
43
- "lodash": "4.17.21",
43
+ "lodash": "4.18.1",
44
44
  "yargs-parser": "^21.0.0",
45
45
  "minimist": "^1.2.3",
46
46
  "ajv": "^8.0.0",
@@ -53,8 +53,27 @@
53
53
  "y18n": "^5.0.0",
54
54
  "braces": "^3.0.0",
55
55
  "trim-newlines": "3.0.1",
56
- "brace-expansion": "4.0.1",
57
- "debug": "^4.3.4"
56
+ "brace-expansion": "5.0.5",
57
+ "debug": "^4.3.4",
58
+ "@octokit/request-error@>=1.0.0 <5.1.1": ">=5.1.1",
59
+ "@octokit/plugin-paginate-rest@>=1.0.0 <9.2.2": ">=9.2.2",
60
+ "@octokit/request@>=1.0.0 <8.4.1": ">=8.4.1",
61
+ "minimatch@<3.1.4": "^3.1.4",
62
+ "minimatch@>=4.0.0 <4.2.5": "^4.2.5",
63
+ "minimatch@>=5.0.0 <5.1.8": "^5.1.8",
64
+ "minimatch@>=6.0.0 <6.2.2": "^6.2.2",
65
+ "minimatch@>=7.0.0 <7.4.8": "^7.4.8",
66
+ "minimatch@>=8.0.0 <8.0.6": "^8.0.6",
67
+ "minimatch@>=9.0.0 <9.0.7": "^9.0.7",
68
+ "minimatch@>=10.0.0 <10.2.3": "^10.2.3",
69
+ "basic-ftp@<5.2.0": ">=5.2.0",
70
+ "ajv@>=7.0.0-alpha.0 <8.18.0": ">=8.18.0",
71
+ "picomatch@<2.3.2": ">=2.3.2",
72
+ "picomatch@>=4.0.0 <4.0.4": ">=4.0.4",
73
+ "basic-ftp@<=5.2.1": ">=5.2.2",
74
+ "simple-git@<3.32.0": ">=3.32.0",
75
+ "simple-git@>=3.15.0 <3.32.3": ">=3.32.3",
76
+ "basic-ftp@<=5.2.2": ">=5.3.0"
58
77
  }
59
78
  },
60
79
  "dependencies": {
@@ -66,7 +85,7 @@
66
85
  "glob": "7.2.3",
67
86
  "img-diff-js": "0.5.4",
68
87
  "jpeg-js": "^0.4.4",
69
- "lodash": "4.17.21",
88
+ "lodash": "4.18.1",
70
89
  "make-dir": "3.1.0",
71
90
  "md5-file": "4.0.0",
72
91
  "meow": "^9.0.0",
@@ -83,15 +102,15 @@
83
102
  "@babel/preset-env": "^7.28.5",
84
103
  "@babel/preset-flow": "^7.27.1",
85
104
  "@babel/preset-stage-2": "^7.8.3",
86
- "ava": "6.4.1",
105
+ "ava": "8.0.0",
87
106
  "copyfiles": "2.4.1",
88
107
  "cross-env": "10.1.0",
89
- "finalhandler": "2.1.0",
108
+ "finalhandler": "2.1.1",
90
109
  "flow-bin": "0.77.0",
91
110
  "flow-typed": "4.1.1",
92
- "puppeteer": "24.26.1",
111
+ "puppeteer": "24.42.0",
93
112
  "rimraf": "3.0.2",
94
- "serve-static": "2.2.0"
113
+ "serve-static": "2.2.1"
95
114
  },
96
115
  "files": [
97
116
  "dist",
@@ -106,5 +125,5 @@
106
125
  "bin": {
107
126
  "reg-cli": "./dist/cli.js"
108
127
  },
109
- "packageManager": "pnpm@10.14.0+sha512.ad27a79641b49c3e481a16a805baa71817a04bbe06a38d17e60e2eaee83f6a146c6a688125f5792e48dd5ba30e7da52a5cda4c3992b9ccf333f9ce223af84748"
128
+ "packageManager": "pnpm@10.33.2+sha512.a90faf6feeab71ad6c6e57f94e0fe1a12f5dcc22cd754db40ae9593eb6a3e0b6b12e3540218bb37ae083404b1f2ce6db2a4121e979829b4aff94b99f49da1cf8"
110
129
  }