Updated on 2025-03-14 GMT+08:00

Function Development

Runtime Overview

To create a function in FunctionGraph, you need to specify a runtime that passes events, context, and responses. Choose from a built-in runtime or customize your own.

Supported Runtimes

The Node.js, Java, Python, Go, C#, PHP, Cangjie, and custom runtimes are supported. Table 1 lists the supported runtimes.

You are advised to use the latest runtime version.

Table 1 Runtime description

Runtime

Supported Version

SDK Download Link

Node.js

6.10, 8.10, 10.16, 12.13, 14.18, 16.17, 18.15, 20.15

-

Python

2.7, 3.6, 3.9, 3.10, 3.12

-

Java

8, 11, 17

Java SDK (software package verification file: fss-java-sdk_sha256)

NOTE:

The Java runtime has integrated with Object Storage Service (OBS) SDKs.

Go

1.x

Go 1.x SDK (software package verification file: Go SDK_sha256)

C#

.NET Core 2.1, .NET Core 3.1, .NET Core 6.0, .NET Core 8.0 (only in ME-Riyadh and TR-Istanbul)

C# SDK (software package verification file: fssCsharp_sha256)

PHP

7.3 and 8.3

-

Custom

-

-

Cangjie

1.0

-

Runtime Deprecation

For security and sustainable development, FunctionGraph will no longer provide technical support and security updates for some runtimes.

Table 2 shows the deprecation policy, which is divided into three stages.

Table 2 Deprecation stage description

Stage

Description

Stage 1: Notify customers 180 days in advance

Huawei Cloud will notify you of the runtime deprecation through product notices, runtime deprecation marks, and emails.

Stage 2: Terminate runtimes

Huawei Cloud will no longer provide security patches, feature updates, or technical support for these runtimes. Functions cannot be created using these runtimes. Existing functions can continue to update their code or configurations and run.

Stage 3: 30 days after runtime deprecation

Huawei Cloud will no longer provide security patches, feature updates, or technical support for these runtimes. Functions cannot be created or updated using these runtimes. Existing functions can continue running. You are advised to migrate your functions to the latest supported runtimes for technical support and security updates.

Table 3 is our runtime deprecation plan. Runtimes not included in this table are not subject to this deprecation plan.

Table 3 Runtime deprecation plan

Runtime

Stage 1

Stage 2

Stage 3

Node.js 6.10

December 15, 2025

June 15, 2026

July 15, 2026

Node.js 8.10

December 15, 2025

June 15, 2026

July 15, 2026

Python 2.7

December 15, 2025

June 15, 2026

July 15, 2026

Third-Party Components Integrated with the Node.js Runtime

Table 4 Third-party components integrated with the Node.js runtime

Name

Usage

Version

q

Asynchronous method encapsulation

1.5.1

co

Asynchronous process control

4.6.0

lodash

Common tool and method library

4.17.10

esdk-obs-nodejs

OBS SDK

2.1.5

express

Simplified web-based application development framework

4.16.4

fgs-express

Uses the Node.js application framework to run serverless applications and REST APIs in FunctionGraph and API Gateway. This component provides an example of using the Express framework to build serverless web applications or services and RESTful APIs.

1.0.1

request

Simplifies HTTP invocation and supports HTTPS and redirection.

2.88.0

Non-standard Libraries Integrated with the Python Runtime

Table 5 Non-standard libraries integrated with the Python Runtime

Library

Usage

Version

dateutil

Date and time processing

2.6.0

requests

HTTP library

2.7.0

httplib2

HTTP client

0.10.3

numpy

Mathematical computation

1.13.1

redis

Redis client

2.10.5

obsclient

OBS client

-

smnsdk

Simple Message Notification (SMN) access

1.0.1

Sample Project Packages

Table 6 provides the links for downloading the sample project packages mentioned in this document. You can download the project packages to a local path and upload them when creating functions.