Add-in Dependencies

The Add-in dependencies page allows you to define conditions that must be met before the Add-in (or specific files within it) are installed. If a condition fails, the affected scope (either the entire package or a single file) is skipped during installation.

Add ins - Image 15

Use the buttons at the top of the page to manage entries:

Add: creates a new dependency row with default values. Click each cell in the row to configure it.

Remove: deletes the currently selected row. Select a row first by clicking it.

Each dependency row has five columns. Fields displayed in italic gray indicate an unset or optional value.

Column

Purpose

Notes

Name

Label for this dependency or dependency group

For Asset-scoped dependencies, multiple rows sharing the same name form a group that is evaluated sequentially. Shown as Not specified if left blank.

Type

The kind of check to perform

Determines which other fields apply. See Dependency types below.

Scope

What gets skipped if the check fails

Package blocks the entire Add-in. Asset blocks only a specific file within it.

Identifier / File Name

The target of the check

For version and system checks: identifies which software to check. For file checks: the path of the file to inspect. Shown as No identifier/No file name if not applicable.

Value

The expected value to compare against

Format varies by type. Shown as No value if not applicable. See Specifying values below.

Scope: Package vs Asset

Package: if the check fails, the entire Add-in is not installed. Use this when the Add-in cannot function at all without the requirement being met.

Asset: if the check fails, only the specific file named in the Identifier / File name column is skipped. The rest of the Add-in installs normally.

Dependency groups for assets

For Asset-scoped dependencies, the Name column has a special role: it defines a dependency group. Multiple rows with the same name are evaluated one after another for the same asset file.

This is useful when a file may be installed under different conditions — for example, providing one version of a file for Windows and another for Linux. Each group is evaluated as a whole; if any row in the group passes, the asset is included.

Specifying values

How you enter the Value depends on the dependency type:

Version Check: uses mathematical interval notation (see Version ranges).

File Created / File Modified: choose from three date/time modes (see Date and time values).

All other types: the Value field offers a drop-down during editing with two options:

Exact value: the check passes if the system value matches your input (comparison is case-insensitive).

Regular expression: the check passes if the system value matches the pattern you provide.

Version ranges

Version values use standard mathematical interval notation:

A square bracket [ or ] means the boundary version is included.

A parenthesis ( or ) means the boundary version is excluded.

An omitted upper or lower bound means there is no limit in that direction.

Example

Meaning

[5.9.0,6.0.1)

5.9.0 ≤ version < 6.0.1

[6,)

version 6.0.0 or any later version

(,5.9)

any version strictly below 5.9

Date and time values

File date/time checks do not use range notation.

Instead, select one of three modes:

Exact: the file's timestamp must match the specified date/time exactly.

Before: the file's timestamp must be earlier than the specified date/time.

After: the file's timestamp must be later than the specified date/time.

Dependency types

Type

Description

None

No check is performed — the dependency is always considered satisfied. Useful as a placeholder.

Version Check

Checks that the version of a selected software component falls within the specified range.

Identifier: select the software to check: RoboDK, Add-in Manager, Qt Framework, or Operating System.

Value: a version range using interval notation (see Version ranges).

CPU Architecture

Checks that the system's processor architecture matches the expected value.

Value: the expected CPU architecture string, e.g. x86_64, arm64, or i386. Supports exact match or regular expression.

Build Architecture

Checks the full application binary interface (ABI) string of the running build. This is more detailed than CPU architecture and includes compiler, data model, and endianness information.

Value: e.g. x86_64-little_endian-lp64. Supports exact match or regular expression.

Kernel Type

Checks the underlying OS kernel identifier.

Value: e.g. winnt (Windows), linux, darwin (macOS). Supports exact match or regular expression.

System Check

Checks the operating system product name as reported by the OS itself.

Value: e.g. windows, ubuntu. Supports exact match or regular expression.

File Version (Windows only)

Reads the version resource embedded in a Windows executable or library (.exe or .dll) and compares it with value or using expression.

Value: e.g. 1.4.3.3123 supports exact match or regular expression.

File Created

Checks the creation timestamp of the specified file.

Identifier / File Name: the path of the file to inspect.

Value: a date/time with mode: Exact, Before, or After (see Date and time values).

File Modified

Checks the last-modification timestamp of the specified file.

Identifier / File Name: the path of the file to inspect.

Value: a date/time with mode: Exact, Before, or After (see Date and time values).