Cargo Features

async-opcua has no features set by default.

[dependencies]
async-opcua = { version = "0.15.1", features = ["all", "server", "base-server", "client", "discovery-server-registration", "generated-address-space", "json", "xml"] }
all = client, server
server all? = base-server, generated-address-space

Server default settings

base-server server? = async-opcua-nodes, async-opcua-server

Base server, without the core address space.

client all? = async-opcua-client

Client default settings

discovery-server-registration

Console logging just installs a logger that writes out to the screen, useful for general logging
Allows a server to register itself with a local discovery server. It does so by becoming a client to the LDS, which brings in a dependency to async-opcua-client.
Omitting the feature saves some memory.

Enables discovery-server-registration of async-opcua-server

generated-address-space server? = async-opcua-core-namespace

Includes all the code to populate the address space with the default node set.
This is something that embedded systems may or may not require.

Enables generated-address-space of async-opcua-server

json

Methods for XML parsing and loading of nodesets from XML.
The json feature adds serialize/deserialize to all OPC-UA types.

Enables json of async-opcua-types

xml = async-opcua-xml

Enables xml of async-opcua-nodes and async-opcua-types

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.

async-opcua-client client?
async-opcua-core-namespace generated-address-space?
async-opcua-nodes base-server? xml?
async-opcua-server base-server? discovery-server-registration? generated-address-space?
async-opcua-xml xml?