Relativity Server SDK and API Packages Changes

Effective with the Relativity Server 2023 release, the NuGet packages required to extend core functionality and implement custom applications for Relativity Server are published and maintained separately from the SDKs hosted on the Relativity NuGet Gallery (nuget.org). The latest SDKs for Relativity Server will be hosted on a regional Relativity Server Artifactory Feed, while the Relativity NuGet Gallery will continue to host the RelativityOne packages. Separating the RelativityOne and Relativity Server packages provides for a more stable and reliable developer experience as each platform evolves.

The Relativity Server Artifactory Feed packages can be accessed from the following URLs:

You are not required to recompile your custom application against the Relativity Server Artifactory Feed-hosted packages for your application to work on Relativity Server 2023. However, we do recommend recompiling to consume the Relativity Server Artifactory Feed packages if it is a viable option, to ensure that your application is running against the latest Relativity Server SDKs. Moving forward, Relativity Server SDK packages will only be updated and enhanced on the Relativity Server Artifactory Feed sites. Custom applications compiled against the packages hosted on the NuGet Gallery may continue to work on future Relativity Server releases, but we recommend adopting the new Server packages as soon as possible, and strongly advise against updating any Server applications to consume new or updated versions of packages from nuget.org moving forward.

To ensure long-term platform compatibility, Relativity will eventually require Relativity Server custom applications to be compiled against the Relativity Server Artifactory Feed packages. We will communicate a more detailed migration plan and enforcement policy at a later date, and we will provide ample notice before instituting a hard requirement to adopt the Relativity Server Artifactory Feed.

See the topic Supported RelativityOne SDKs for Relativity Server 2023 for a listing of supported/equivalent SDKs for Relativity Server 2023, comparing the available SDKs from the Relativity Server Artifactory repository and the Relativity One repository at nuget.org.

Note: Using RelativityOne packages in Relativity Server 2024 is not recommended, and doing so is at your own risk.

Server SDK Support Policy

While using the dedicated Server SDKs hosted in Artifactory is recommended for Server 2023 and Server 2024, it will be required and enforced starting with Server 2025. This section establishes the support policy and expectations for the Relativity Server SDK packages.

  • Starting with Server 2023 Release, SDK packages will be published to new Server-specific, public Artifactory NuGet and NPM feeds
  • No Server packages will be published to nuget.org
  • Naming conventions
    • All SDK package identifiers use the Relativity.Server.* prefix
      • example: Relativity.Server.Agent.SDK
    • Kepler-based SDK package identifiers append the .Interfaces.SDK suffix
      • example: Relativity.Telemetry.MetricsCollection.Interface → Relativity.Server.Telemetry.MetricsCollection.Interface.SDK
    • Library-based SDK package identifiers append the .SDK suffix
      • example: Relativity.Server.Application.SDK
    • Assembly filenames are not required to follow the package identifier, but are recommended for new SDKs
      • example Relativity.Server.Agent.SDK continues to include kCura.Agent.dll
  • Versioning
    • SDK packages will continue using Semantic Versioning strategy
    • To identify Relativity version compatibility, PackageTags are used.
  • Compatibility
    • This policy is limited to applications that build against SDK packages published to the new Artifactory public feed
    • The SDK release is only guaranteed to be compatible with the current/next release + patches/hotfixes
    • The policy is effective starting with Server 2023
  • Breaking changes
    • Any breaking changes are announced at least 90 days before next EA release
  • Publishing cadence
    • Pre-release SDK packages are published on or before EA release. Gold SDK packages are published on or before GA release

Updating your application to use packages from Artifactory

This section outlines how you can start adopting the Relativity Server SDK packages hosted on Relativity Server Artifactory Feed. Advantages of compiling your Relativity Server custom application against the Antifactory packages include:

  • Ensuring compatibility with the latest version of Relativity Server
  • Enabling you to take advantage of Relativity Server SDK enhancements and fixes

Custom applications that only target Relativity Server

For custom applications that only target Relativity Server we recommend updating your application to consume the packages hosted on the Relativity Server Artifactory Feed.

Follow these steps to compile your application against the Relativity Server SDK packages:

  1. Download the sample nuget.config from here (rename file to nuget.config after downloading). Refer to the Microsoft article on Package Source Mapping for more detail on using a nuget.config file.
  2. Copy the nuget.config file to your project repository root directory.
  3. Open your project or solution using Visual Studio 2022 or Rider.
  4. Update the versions used by your project with the latest versions available from the Relativity Server Artifactory Feed (this should also automatically restore them locally). In most cases, the package name will change, but the version will remain the same.
  5. Rebuild your project or solution.
  6. Commit your changes if the build was successful.

Custom applications that target both Relativity Server and RelativityOne (multi-targeting)

Some customers choose to maintain a single version of a custom application for use in Relativity Server and RelativityOne. While we continue to accommodate this strategy, developers will need to update their projects in order to consume the separate Relativity Server and RelativityOne SDK packages.

Follow these steps to update your application to consume the separate Relativity Server and RelativityOne SDK packages:

  1. Update your build tools to Visual Studio 2022 to enable NuGet 6 source mapping feature (this step is strongly recommended to guarantee that the correct packages are consumed).
  2. Create separate branches for Relativity Server and RelativityOne.
  3. Switch to your Relativity Server branch.
  4. Download the nuget.config from here (rename file to nuget.config after downloading). Refer to the Microsoft article on Package Source Mapping for more detail on using a nuget.config file.
  5. Copy the nuget.config file to the project repository root directory.
  6. Open your project or solution using Visual Studio 2022 or Rider.
  7. Update the versions used by your project with the latest versions available from the Relativity Server Artifactory Feed (this should also automatically restore them locally).
  8. Rebuild your project or solution.
  9. Commit your changes if the build was successful.

FAQ