Security News
Fluent Assertions Faces Backlash After Abandoning Open Source Licensing
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
@temporalio/client
Advanced tools
@temporalio/client is an npm package that provides a client for interacting with Temporal, a platform for orchestrating microservices and managing workflows. It allows developers to start, query, and manage workflows and activities in a Temporal server.
Starting a Workflow
This feature allows you to start a new workflow. The code sample demonstrates how to create a connection to the Temporal server, instantiate a WorkflowClient, and start a workflow with a specified task queue.
const { Connection, WorkflowClient } = require('@temporalio/client');
async function run() {
const connection = new Connection();
const client = new WorkflowClient(connection.service);
const handle = await client.start('exampleWorkflow', { taskQueue: 'example' });
console.log(`Started workflow with ID: ${handle.workflowId}`);
}
run().catch(err => console.error(err));
Querying a Workflow
This feature allows you to query the state of a running workflow. The code sample shows how to get a handle to a workflow using its ID and perform a query on it.
const { Connection, WorkflowClient } = require('@temporalio/client');
async function run() {
const connection = new Connection();
const client = new WorkflowClient(connection.service);
const handle = client.getHandle('exampleWorkflowId');
const result = await handle.query('exampleQuery');
console.log(`Query result: ${result}`);
}
run().catch(err => console.error(err));
Cancelling a Workflow
This feature allows you to cancel a running workflow. The code sample demonstrates how to get a handle to a workflow using its ID and cancel it.
const { Connection, WorkflowClient } = require('@temporalio/client');
async function run() {
const connection = new Connection();
const client = new WorkflowClient(connection.service);
const handle = client.getHandle('exampleWorkflowId');
await handle.cancel();
console.log('Workflow cancelled');
}
run().catch(err => console.error(err));
The aws-sdk package provides a comprehensive set of tools for interacting with AWS services, including Step Functions, which can be used for orchestrating workflows. Compared to @temporalio/client, aws-sdk offers broader functionality but may require more setup and configuration for workflow orchestration.
The camunda-external-task-client-js package is a client for interacting with Camunda BPM, a workflow and decision automation platform. It allows for the execution of external tasks in a workflow. Compared to @temporalio/client, it is more focused on BPMN-based workflows and external task execution.
The zeebe-node package is a client for Zeebe, a workflow engine for microservices orchestration. It provides similar functionalities to @temporalio/client, such as starting and managing workflows, but is designed to work with the Zeebe engine specifically.
FAQs
Temporal.io SDK Client sub-package
The npm package @temporalio/client receives a total of 279,297 weekly downloads. As such, @temporalio/client popularity was classified as popular.
We found that @temporalio/client demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 7 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
Research
Security News
Socket researchers uncover the risks of a malicious Python package targeting Discord developers.
Security News
The UK is proposing a bold ban on ransomware payments by public entities to disrupt cybercrime, protect critical services, and lead global cybersecurity efforts.