# DataSource software dependencies

This page describes the software dependencies of Caplin’s DataSource libraries.

## DataSource for C

Caplin’s DataSource for C API is supported on the following operating systems and Java runtime environments (JREs) in production:

**C DataSource API dependencies**

| DataSource Version | Operating System | Supported JREs (64-bit) |
| --- | --- | --- |
| 7.1.16+ | RHEL 6, 7 | Oracle JDK 8 (\&lt;= 8u202), Red Hat OpenJDK 8, Red Hat OpenJDK 11 |
| 7.0.0+ | RHEL 6, 7 | Oracle JDK 8 (\&lt;= 8u202) |

<details>
<summary>Caplin Platform 6.2 (EOL)</summary>

The support life cycle for Caplin Platform 6 components ended on 17 January 2019.

**C DataSource API dependencies**

| DataSource Version | Operating System | Supported JREs (64-bit) |
| --- | --- | --- |
| 6.2.5+^&dagger;^ | RHEL 5, 6 | Oracle JDK 7, Oracle JDK 8 |
| 6.2.0–⁠6.2.4^&dagger;^ | RHEL 5, 6 | Oracle JDK 7 |
</details>

## DataSource for Java

Caplin’s Java DataSource API is supported on the following operating systems and Java runtime environments (JREs) in production:

**Java DataSource API dependencies**

| DataSource Version | Operating System | Supported JREs (64-bit) |
| --- | --- | --- |
| 7.1.11+ | RHEL 6, 7 | Oracle JDK 8 (\&lt;= 8u202), Red Hat OpenJDK 8, Red Hat OpenJDK 11 |
| 7.0.0+ | RHEL 6, 7 | Oracle JDK 8 (\&lt;= 8u202) |

<details>
<summary>Caplin Platform 6.2 (EOL)</summary>

The support life cycle for Caplin Platform 6 components ended on 17 January 2019.

**Java DataSource API dependencies**

| DataSource Version | Operating System | Supported JREs (64-bit) |
| --- | --- | --- |
| 6.2.5+^&dagger;^ | RHEL 5, 6 | Oracle JDK 7, Oracle JDK 8 |
| 6.2.0–⁠6.2.4^&dagger;^ | RHEL 5, 6 | Oracle JDK 7 |

</details>

### Additional requirements from Java DataSource API 7.1.0

From version 7.1.0, the Java DataSource API uses nanosecond timestamping. Java 11 provides built-in support for nanosecond timestamps; Java 8 does not. To support nanosecond timestamping on Java 8, the Java DataSource API uses a Caplin native library, [Caplin Nanotime](https://github.com/caplin/nanotime).

By default, the Caplin Nanotime native library is extracted to, and loaded from, the `/tmp` directory. If the `/tmp` filesystem has been mounted with the `noexec` flag, then Java cannot load the Caplin Nanotime library.

To resolve this, set the application’s `java.io.tmpdir` Java system property to a directory to which the application user has write and execute permissions. The `java` command that launches the application is in the application’s `DataSource/bin/start-jar.sh` script:

**Example: specifying the Java temporary directory**

```
java #-Djava.io.tmpdir=/home/caplin/tmp# __existing_arguments__
```

## DataSource .NET

Caplin’s DataSource .NET is supported on Microsoft Windows with the following .NET framework versions:

**DataSource for .NET dependencies**

| DataSource .NET Version | .NET Framework |
| --- | --- |
| 7.1.18+ | 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8 |
| 7.1.0–7.1.17 | 4.6 |
| 7.0.0+ | 4.5 |

<details>
<summary>Caplin Platform 6.2 (EOL)</summary>


The support life cycle for Caplin Platform 6 components ended on 17 January 2019.

**DataSource for .NET dependencies**

| DataSource .NET Version | .NET Framework |
| --- | --- |
| 6.2.0 | 2.0 |

</details>

### Additional requirements

DataSource .NET 7 requires the [Microsoft Visual C++ 2015 Redistributable](https://learn.microsoft.com/en-US/cpp/windows/latest-supported-vc-redist?view=msvc-160).
