Deprecation and Sunset

As our VPN SDK evolves and improves over time, it becomes necessary to deprecate and eventually sunset older versions of the SDK. This article outlines the deprecation and sunset process for the VPN SDK, including the benefits of having a clear deprecation schedule, the specific timetable we follow, and the differences between supported, deprecated, and sunset status.

Benefits of a Deprecation Schedule

Benefit
Description

Improved Planning

Developers can better predict and plan for SDK updates, ensuring smoother transitions and minimizing disruptions to their projects.

Improved Maintainability

By removing legacy SDK code that exists solely to support older versions, the overall SDK size can be significantly decreased. This not only streamlines the SDK but also lowers the risk of bugs and improves maintainability.

Enhanced Support

With less time and resources devoted to supporting legacy SDKs, engineering teams can focus more on providing comprehensive support for newer SDK versions. This shift in focus also enables the development and innovation of new SDK features, benefiting developers and end-users.

SDK and OS Support Policy

SDK Version Support

Windows

  • 6 months (m-5) from release until deprecation

  • 6 additional months (m-11) from deprecation until sunset

Apple

  • 3 months (m-2) from release until deprecation

  • 3 additional months (m-5) from deprecation until sunset

Android

  • 3 months (m-2) from release until deprecation

  • 3 additional months (m-5) from deprecation until sunset

Note:

  • Supported: These versions are actively maintained and enhanced with new features, bug fixes, and security updates. Developers are encouraged to use supported versions whenever possible.

  • Deprecated: These versions are nearing the end of their lifecycle. They receive critical bug fixes and security updates during the deprecation period, but do not receive new features. Developers using deprecated versions are encouraged to upgrade to a supported version.

  • Sunset: These versions have reached the end of their lifecycle and are no longer supported or maintained. Developers using sunset versions are strongly encouraged to upgrade, as these versions may contain known vulnerabilities or incompatibilities.

Adding Support for New OS Versions

We strive to support the latest operating systems to enable you to build apps with the newest capabilities and meet your users' expectations. Our team evaluates each new OS release and aims to add support as soon as possible while ensuring the stability and reliability of the SDK.

Deprecating and Removing OS Support

To maintain the SDK and focus our efforts, we gradually deprecate and eventually remove support for older operating system versions. Our timetable is tied to the OS maker's own support lifecycle:

  • Support for operating systems is generally dropped 90 days after the vendor's official deprecation date.

  • When an operating system maker announces they are ending support for a particular OS version, we mark that OS version as deprecated or not recommended in the SDK. This indicates you should avoid targeting that OS version for new apps and plan to migrate existing apps.

  • While new versions are typically released within the 3-month timeframes specified above, a lack of a new release does not necessarily imply dropping support for the current version.

Exceptions

In rare cases, the team may need to deviate from the standard deprecation schedule. In such situations, the team will communicate any changes to the schedule to developers as early as possible to allow time for planning and migration.

By having a transparent deprecation and sunset process, we aim to strike a balance between providing stability for developers and maintaining a secure, high-quality SDK.

Last updated