Skip to content

Commit d6074f0

Browse files
committed
Review comments
1 parent 77e6d3f commit d6074f0

File tree

7 files changed

+25
-18
lines changed

7 files changed

+25
-18
lines changed

packages/common/src/workflow-definition-options.ts

+2
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@ type AsyncFunction<Args extends any[], ReturnType> = (...args: Args) => Promise<
1111
export type WorkflowDefinitionOptionsOrGetter = WorkflowDefinitionOptions | (() => WorkflowDefinitionOptions);
1212

1313
/**
14+
* @internal
15+
* @hidden
1416
* A workflow function that has been defined with options from {@link WorkflowDefinitionOptions}.
1517
*/
1618
export interface WorkflowFunctionWithOptions<Args extends any[], ReturnType> extends AsyncFunction<Args, ReturnType> {

packages/common/src/workflow-options.ts

-6
Original file line numberDiff line numberDiff line change
@@ -256,9 +256,3 @@ export function extractWorkflowType<T extends Workflow>(
256256
`Invalid workflow type: expected either a string or a function, got '${typeof workflowTypeOrFunc}'`
257257
);
258258
}
259-
260-
/* eslint-disable @typescript-eslint/explicit-module-boundary-types */
261-
export function isWorkflowFunctionWithOptions(obj: any): obj is WorkflowFunctionWithOptions<any[], any> {
262-
if (obj == null) return false;
263-
return Object.hasOwn(obj, 'workflowDefinitionOptions');
264-
}

packages/test/src/test-worker-deployment-versioning.ts

+7-7
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ test('Worker deployment based versioning', async (t) => {
4646
});
4747
const worker1Promise = worker1.run();
4848
worker1Promise.catch((err) => {
49-
t.fail('Worker 1.0 run error: ' + JSON.stringify(err));
49+
t.fail('Worker 1.0 run error: ' + err);
5050
});
5151

5252
const worker2 = await Worker.create({
@@ -61,7 +61,7 @@ test('Worker deployment based versioning', async (t) => {
6161
});
6262
const worker2Promise = worker2.run();
6363
worker2Promise.catch((err) => {
64-
t.fail('Worker 2.0 run error: ' + JSON.stringify(err));
64+
t.fail('Worker 2.0 run error: ' + err);
6565
});
6666

6767
const worker3 = await Worker.create({
@@ -76,7 +76,7 @@ test('Worker deployment based versioning', async (t) => {
7676
});
7777
const worker3Promise = worker3.run();
7878
worker3Promise.catch((err) => {
79-
t.fail('Worker 3.0 run error: ' + JSON.stringify(err));
79+
t.fail('Worker 3.0 run error: ' + err);
8080
});
8181

8282
// Wait for worker 1 to be visible and set as current version
@@ -163,7 +163,7 @@ test('Worker deployment based versioning with ramping', async (t) => {
163163
});
164164
const worker1Promise = worker1.run();
165165
worker1Promise.catch((err) => {
166-
t.fail('Worker 1.0 run error: ' + JSON.stringify(err));
166+
t.fail('Worker 1.0 run error: ' + err);
167167
});
168168

169169
const worker2 = await Worker.create({
@@ -178,7 +178,7 @@ test('Worker deployment based versioning with ramping', async (t) => {
178178
});
179179
const worker2Promise = worker2.run();
180180
worker2Promise.catch((err) => {
181-
t.fail('Worker 2.0 run error: ' + JSON.stringify(err));
181+
t.fail('Worker 2.0 run error: ' + err);
182182
});
183183

184184
// Wait for worker deployments to be visible
@@ -275,7 +275,7 @@ async function testWorkerDeploymentWithDynamicBehavior(
275275

276276
const workerPromise = worker.run();
277277
workerPromise.catch((err) => {
278-
t.fail('Worker run error: ' + JSON.stringify(err));
278+
t.fail('Worker run error: ' + err);
279279
});
280280

281281
const describeResp = await waitUntilWorkerDeploymentVisible(client, version);
@@ -334,7 +334,7 @@ test('Workflows can use default versioning behavior', async (t) => {
334334

335335
const workerPromise = worker.run();
336336
workerPromise.catch((err) => {
337-
t.fail('Worker run error: ' + JSON.stringify(err));
337+
t.fail('Worker run error: ' + err);
338338
});
339339

340340
const describeResp = await waitUntilWorkerDeploymentVisible(client, workerV1);

packages/test/src/test-worker-tuner.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -207,7 +207,7 @@ class MySS<SI extends SlotInfo> implements CustomSlotSupplier<SI> {
207207
this.seenSlotTypes.add(ctx.slotType);
208208
this.t.truthy(ctx.taskQueue);
209209
this.t.truthy(ctx.workerIdentity);
210-
this.t.truthy(ctx.workerBuildId);
210+
this.t.truthy(ctx.workerBuildId); // eslint-disable-line deprecation/deprecation
211211
this.t.not(ctx.isSticky, undefined);
212212
this.seenStickyFlags.add(ctx.isSticky);
213213
this.reserved++;

packages/testing/src/testing-workflow-environment.ts

+5-3
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import 'abort-controller/polyfill'; // eslint-disable-line import/no-unassigned-import
2-
import { AsyncCompletionClient, Client, WorkflowClient, ClientOptions } from '@temporalio/client';
2+
import { AsyncCompletionClient, Client, WorkflowClient } from '@temporalio/client';
33
import { Duration, TypedSearchAttributes } from '@temporalio/common';
44
import { msToNumber, msToTs, tsToMs } from '@temporalio/common/lib/time';
55
import { NativeConnection, Runtime } from '@temporalio/worker';
@@ -31,7 +31,9 @@ export type TimeSkippingTestWorkflowEnvironmentOptions = {
3131
export type ExistingServerTestWorkflowEnvironmentOptions = {
3232
/** If not set, defaults to localhost:7233 */
3333
address?: string;
34-
client?: ClientOptions;
34+
/** If not set, defaults to default */
35+
namespace?: string;
36+
client?: ClientOptionsForTestEnv;
3537
};
3638

3739
/**
@@ -177,7 +179,7 @@ export class TestWorkflowEnvironment {
177179
return await this.create({
178180
server: { type: 'existing' },
179181
client: opts?.client,
180-
namespace: opts?.client?.namespace ?? 'default',
182+
namespace: opts?.namespace ?? 'default',
181183
supportsTimeSkipping: false,
182184
address: opts?.address,
183185
});

packages/worker/src/worker-tuner.ts

+4
Original file line numberDiff line numberDiff line change
@@ -233,11 +233,15 @@ export interface SlotReserveContext {
233233

234234
/**
235235
* The build id of the worker that is requesting the reservation
236+
*
237+
* @deprecated Use {@link workerDeploymentVersion} instead.
236238
*/
237239
workerBuildId: string;
238240

239241
/**
240242
* The deployment version of the worker that is requesting the reservation
243+
*
244+
* @experimental Worker deployments are an experimental feature and may be subject to change.
241245
*/
242246
workerDeploymentVersion?: WorkerDeploymentVersion;
243247

packages/workflow/src/worker-interface.ts

+6-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
*
44
* @module
55
*/
6-
import { encodeVersioningBehavior, IllegalStateError, isWorkflowFunctionWithOptions } from '@temporalio/common';
6+
import { encodeVersioningBehavior, IllegalStateError, WorkflowFunctionWithOptions } from '@temporalio/common';
77
import { composeInterceptors } from '@temporalio/common/lib/interceptors';
88
import { coresdk } from '@temporalio/proto';
99
import { disableStorage } from './cancellation-scope';
@@ -276,3 +276,8 @@ export function dispose(): void {
276276
activator.rethrowSynchronously = false;
277277
}
278278
}
279+
280+
function isWorkflowFunctionWithOptions(obj: any): obj is WorkflowFunctionWithOptions<any[], any> {
281+
if (obj == null) return false;
282+
return Object.hasOwn(obj, 'workflowDefinitionOptions');
283+
}

0 commit comments

Comments
 (0)