ActiveState’s Perl Dev Kit (PDK) and ActivePerl Pro Studio have been providing the Perl community with essential tools for building and deploying Perl applications for decades. However, sales of PDK/Pro Studio were discontinued in 2016, and End of Life (EOL) is now pending. That includes all of the following tooling:
- PerlApp – used to create stand-alone executables
- Debugger – used to debug Perl scripts locally or on a remote server in a graphical manner
- PerlCov – used to improve code performance and reliability
- FilterBuilder – used to create complex text filters in a visual manner
ActiveState no longer builds or maintains any of the tools that ship with PDK, and will stop renewing support subscriptions immediately. Support for existing contracts will cease on October 1, 2020. As a result, we are advising Perl Dev Kit/Pro Studio users to end their use of the product and its tooling, and either deploy their programs unobfuscated, or convert them to a compiled language.
Decommissioning Perl Dev Kit
While EOL will not occur until October 2020, the best course of action for customers is to end their reliance on PDK and remove it from their enterprise. In the meantime, be aware of the following potential issues with existing deployments:
- Existing deployments should not be moved to new hardware, or a newer version of the operating system. Both upgrades and updates for Windows and Linux will break PDK:
- There is no modern version of Windows compatible with PDK
- RHEL 6 and 7 are commonly unusable with PDK
- Mac OS X High Sierra and later versions of the OS are incompatible with PDK
- Neither PDK nor your deployment of ActivePerl should be upgraded. This includes updating or adding any new Perl modules.
- Existing PDK licenses should not be reassigned. No new licenses are available for purchase.
Wrapping Perl Code
ActiveState recommends that PDK customers no longer make use of PerlApp to wrap their Perl code. In fact, Perl wrapping technology is widely considered obsolete now that the modern computing environment has outgrown the concept.
The problem lies in the fact that all Perl wrapping solutions are built on the same design, which originated in a more innocent era. The design works by exploiting inherent weaknesses in the security of the operating system. An elaborate solution like PDK exploits more weaknesses than simpler solutions, but all wrapping products create files that act like, and cannot be distinguished from, malware. As manufacturers have patched the security issues in their operating systems, wrapped files have stopped working. ActiveState cannot recommend forgoing OS security patches or Perl module upgrades just to keep Perl Dev Kit running, even for systems not on the corporate network.
Instead, ActiveState recommends that Perl scripts should be shipped in unwrapped form with the following caveats:
- If obfuscation is required, the program should be converted to a compiled language, or converted to a hosted service that can’t be tampered with.
- If ease of deployment is required, hosted services, VMs, or containers are far more future-proof.
Licensing Issues Post PDK End of Life
The majority of PDK owners use it in conjunction with ActivePerl Community Edition (APCE). Previously, the APCE license allowed PDK users to build and redistribute files without needing to attach a more senior license to the wrapped file.
However, when ActiveState discontinued PDK/Pro Studio in 2016, this clause was removed from the APCE license. The resulting modified license was posted to the ActiveState website and counts as an update to your existing license terms. In effect, PDK/Pro Studio customers have been grandfathered for the past 4 years.
Grandfathering will end on October 1, 2020. On that date:
- If an ActivePerl distribution was used to wrap files for an external customer, an OEM agreement will be required.
- OEM agreements are available to customers with an ActiveState Platform Enterprise Tier subscription.
- If an ActivePerl distribution was used to wrap files for internally deployed applications, every system where that application is installed will require an additional ActivePerl node license.
- ActivePerl nodes are included as part of the Team, Business and Enterprise Tier ActiveState Platform subscriptions.
More Information about PDK End of Life
If you have any questions concerning the pending EOL, or the impact to your organization around licensing issues, please reach out to the salesperson for your account, or else contact Sales.
If you have any questions regarding your PDK/Pro Studio deployment, wrapping technology, or other technical questions, please contact technical support.