ActiveState Platform Changelog

What’s new

August 2020

New Feature: Copy and paste the contents of cpanfile or META.json files to populate your package list

When you create or update a Perl custom runtime on the Platform, you now have the option to provide the package and version requirements for the project in cpanfile or meta.json file format. You can copy and paste the contents of an existing file, or type in your project’s requirements in the required format.

perl package import

New Feature: Update forks with the latest changes from the parent project

When a language runtime you have forked - created a copy of - is updated, you now have the option to update your forked language runtime to get the latest changes. When updates are available, a notification indicating that the fork is out of date is displayed on your project overview page.

Fork is out of date

If you choose to update your language runtime, a list of pending changes is displayed.

Pending changes

When you apply the update, the changes are applied to your project, and your project is rebuilt.

Fork updated

July 2020

New Feature: ActiveState Platform extension for the Visual Studio Code Editor

We’ve released a VS Code extension (plugin) that adds ActivePython as a supported Python installation that can be used by the VS Code editor and Microsoft’s Python extension. It provides an easy way to virtualize and manage Python runtime environments. Support for Perl language runtimes is coming soon.

The extension supports the following key features:

  • It simplifies the addition of a Python language runtime environment to your project.
  • It automatically sets up your development environment to use your configured Python runtime environment during development for:
    • Intellisense (auto completion)
    • Debugging
    • Integrated terminal sessions
  • It enables basic user management (You can use it to sign-up and sign in)
  • It automates the State Tool (CLI) installation, which simplifies management of your runtime. The extension uses the State Tool, the command line interface for the ActiveState Platform, to interact with the Platform.

ActiveState Platform Extension

Open Source: The State Tool is now open source

We’ve open sourced State Tool, the ActiveState Platform command line tool. Check out the public ActiveState/cli Github repository and consider forking the repo and submitting a pull request if you’d like to add an enhancement or fix a bug.

New Feature: Build Failure Feedback

When your build fails, we now provide a mechanism to leverage the knowledge of the ActiveState Platform community to help you find a solution to get your build working.

  • If other users have encountered the error before you, we link to you the Discourse discussion about the specific error you encountered, and hopefully provide an actionable solution to resolve your build issue.
  • If you are the first user to encounter the error, you can click the Start a Discussion button to create a new Discourse topic prefilled with the details of the error encountered. Community members can help you resolve the issue, and ActiveState staff checks these topics regularly and posts solutions when possible.

Platform error Discourse topic template

Perl has a huge set of great testing tools that come with the base language. This runtime is designed to provide you with many of the best third party test tools, as well. View the Perl Testing Tools project and all of the other featured projects.

Previous changes

June 2020

Enhancement: Perl package catalog expanded to include the packages you need

We’ve just added 5,000 of the most popular modules from CPAN to our Perl catalog on the ActiveState Platform. This means you now have 10x as many modules you work with to build runtime environments for your projects.

The easiest way to get started is to create a new build using our updated “Create Runtime” wizard, but you can also modify any of the runtimes you’ve previously created.

Note that if ActiveState created your runtime for you, we’re currently in the process of updating them for use with the new modules. If you experience any issues, please report them in the community forum or send an email to support@activestate.com.

May 2020

Enhancement: Python 3.8.2 is now available

You can now build custom runtime environments that contain Python 3.8.2 and just the packages/dependencies your project requires.

Based on the last official release of Python 3 from the Python Software Foundation, you can now rebuild your existing custom runtimes on Python 3.8.2, as well as create new ones.

Security Update: ActivePython 3.6.6 Critical Security Update

ActivePython 3.6.6 has been updated to address two critical vulnerabilities found in Django v2.0.3.

For security reasons, whether or not you are actively using Django, we strongly recommend you update all deployments of ActivePython 3.6.6 with the latest version of ActivePython.

April 2020

Enhancement: ActivePython 2.7.18 is now available

ActivePython 2.7.18, the final release of the Python 2 series, is now available as a featured project for Windows, Linux, and macOS. You can install and work with ActivePython 2.7 using the State Tool, the command line interface for the ActiveState Platform. For more information on ActivePython 2.7.18, see the project page and the documentation.

New Feature: macOS CLI Support:

The State Tool CLI now supports macOS, to get the power of the Platform right in your terminal to build, manage and deploy your runtimes. To get started, install the State Tool and Python with these two commands:

sh <(curl -q https://platform.activestate.com/dl/cli/install.sh)
state activate ActiveState/ActivePython-3.6

macOS 10.15 Catalina users may receive a warning when you try to install the State Tool. To work around this, go to the System Preferences > Security & Privacy > General tab.

For more information see the State Tool page and the documentation.

New Feature: Enterprise Tier Indemnification for Custom Projects

If your organization belongs to the Enterprise Tier, and your licensing from ActiveState includes indemnification, you can now create custom indemnified projects on the ActiveState Platform. Previously, only Managed by ActiveState projects were indemnified. You can choose available indemnified packages when creating your project. All of the requested packages and dependencies packages included in the project must be indemnified for the project to be indemnified. If you want to include a package that’s not indemnified, contact support@activestate.com to request that it be added to the catalog.

Indemnified project

Enhancement: Python package catalog expanded to include the packages you need

  • We’ve added a large set of around 20,000 Python packages/versions. The ActiveState Platform now have coverage of the important packages/versions in the Python ecosystem, and they’re available for you to add to your projects.

March 2020

New Feature: State tool now supports requirements.txt

When you add packages to a Python project using the State Tool, you now have the option to specify the package requirements for the project in a requirements.txt file using the new state packages import command. For details, see the packages Command reference and Creating projects from requirements.txt files for more general information on this feature.

New Feature: Uploading requirements.txt now supported

When you create or update a Python project on the platform, you now have the option to provide the package and version requirements for the project in requirements.txt file format. You can copy and paste the contents of an existing requirements text file, or type in your project’s requirements.

requirements.txt

New Feature: macOS now supported for custom runtimes

When you create a new custom project, or update an existing one, you can now specify macOS as a platform to build your language runtime for. When your build completes, you can download your custom runtime as a standard package installer.

macOS support

The State Tool is compatible with several popular continuous integration/continuous deployment tools to enable the setup of more secure, consistent, and up-to-date CI/CD pipelines.

The compatible CI/CD platforms are:

Komodo 12.0.1

A maintenance release for Komodo 12 that resolves issues with State Tool integration identified in version 12.0, including a fix for login issues encountered due to State Tool failures. For the complete list of fixes, see Komodo 12 release notes.

January 2020

New Feature: State Tool adds package command

The State Tool, the command line utility for the ActiveState Platform, includes a new package command you can use to manage packages in your projects. You can view, add, remove, and change the packages included in your project, and update your project on the Platform.

For more information about the package command, see the command reference

Enhancement: Python catalog exceeds 20,000 packages/versions

You can now choose from over 20,000 unique packages/versions to add to your custom Python 2 and Python 3 projects.

Enhancement: Request specific dependency versions

You now have selective control over the versions of dependencies that are included in your project. For example, if you include pandas in your project, numpy will be included as a dependency with a specific version. You can now independently change the version of numpy to use.

Request dependency

Enhancement: Commit messages

You can now optionally add commit messages to record your changes to a project with each commit.

Commit message

New Feature: Komodo 12 available and integrated with the Platform

Komodo 12, the new release of ActiveState’s Komodo IDE, includes the State Tool which enables seamless integration with the ActiveState Platform.

Key features:

  • Associate your new or existing Komodo project with an ActiveState Platform project. The Komodo project manages your source code, while the Platform project manages the core language distribution (e.g. Python 3.6.6) and the specific packages you have chosen to use with the runtime (e.g. Requests 2.18.4).
  • Run State Tool commands from within Komodo using the toolbar or Commando. You can access the variety of commands the State Tool supports for viewing and working with Platform projects without leaving your editor.
  • Work in the isolated “activated” environment created by the State Tool. When a project is activated, the State Tool downloads the language runtime, the packages you have selected and any dependencies, and sets up the activated virtual environment. When you run your code in Komodo you are using the ActiveState project language runtime isolated from any other runtimes you may have installed on your computer.

For more detailed information on these new features, see the State Tool integration section in the Komodo 12 documentation.

December 2019

New Feature: ActiveTcl added

You can now create and build custom runtimes for Tcl 8.6.9 for Linux and Windows.

Enhancement: ActivePython 2.7 updated to version 2.7.17

Python version 2.7.17, the penultimate release of Python 2, is now available on the Platform for creating custom builds. A Featured Project (Community Edition) for Python 2.7.17 will be available soon.

Enhancement: ActivePython 2 now supports a win32 option

When you add the Windows operating system to your build you have the option of selecting the 32-bit version for your operating system release. This is included for backwards compatibilty with older desktop computers and servers.

Enhancement: New Python 2 and Python 3 packages now available

We’ve expanded our catalog of Python packages that you can use in your custom projects. The Platform currently supports over 3500 packages and we’re adding more each week.

November 2019

New Feature: GitHub authorization option added

You now have the option to use your GitHub credentials to create your ActiveState Platform account and authenticate with the Platform when you log in. When you authorize the ActiveState Platform to use your GitHub account for authentication, GitHub provides your email address, which ActiveState uses it to create your unique user account and link it with GitHub.

GitHub authorization

Signing up for GitHub authentication requires that your email address and username are unique on the Platform. If you previously signed up for the Platform with the email you have associated with your GitHub account, or your GitHub username is already in use on the Platform, you cannot successfuly set up GitHub authentication at this time.

October 2019

Enhancement: Organization Members list now searchable

You can search for users in the Members tab by entering a full or partial username or email address. This helps you avoid scrolling through a long list of users to find the user or users you are looking for.

Search the members tab

September 2019

Enhancement: Project History now includes commit changes

The Project History now lists the packages, languages, and platforms that were added, updated, or removed in each commit allowing you to view the full history for the project’s last 10 commits.

Enhanced Project history

Enhancement: Search added to Projects tab

You can now enter a partial name for a project in the new search text box to filter the projects listed in the projects tab. This allows you to quickly find the project you are interested in if you have a long list of projects.

Enhanced Project search

You can now link directly to a specific platform on the Builds tab, which makes it easier to share builds with other users. For example, you can link directly to the Windows 10 build for a project. Previously you were only able to link to the default platform on Builds tab. To share a link to a particular platform, switch to the desired platform and copy the URL from your browser address bar.

Enhanced Build tab links

August 2019

Enhancement: ActivePerl and ActivePython Community Editions projects are now editable

You can now add or remove packages from ActivePerl 5.26 and 5.28, and ActivePython 3.6, on both Windows and Linux. This allows you to tailor our language distributions to your exact requirements. You can pick the packages and versions you need from our extensive catalog and create your own unique build.

Enhancement: State tool now integrates with CI/CD tools

The State Tool now runs without any interactive prompts, enabling you to install and configure it in Continuous Integration/Continuous Deployment workflows. For more information, see the State Tool documentation.

July 2019

Enhancement: Streamlined form for creating projects

The form for creating new projects has been streamlined and simplified so you can quickly select the operating systems and language to include in your project, and choose if your project is public or private.

Private projects are only available for paid accounts.

New project

New project form

Enhancement: More help options for failed builds

If your build fails, you have a few options for moving forward:

  • You can edit your project and try building it again.
  • You can contact ActiveState for help with troubleshooting your build failure.
  • You can download the ActiveState-managed project, or featured project, that is most similar to the build you are creating.

The failed build page now provides more information and links for these options.

Failed build options

New Feature: Success/Failure Build Notification Emails

You no longer need to keep checking on the status of your build. We’ll let you know when it’s done. The Platform now notifies you by email when a build finishes indicating whether the build succeeded or failed. If the build succeeded, you can click on a link in the email to return to the project page to download your build.

Build Notification Email - Success!

Release: State Tool update: Secrets, Scripts, Events, and more

A new release of the State Tool is available which includes a number of exciting new features for integrating the State Tool and Platform builds with your development environment.

The addition of constants and secrets allows you to manage configuration settings and other information for your project in the activestate.yaml configuration file. Secrets provide a simple and secure way to store and optionally share sensitive information, such as API keys and passwords. Learn more about Secrets in this blog post.

Scripts and events provide ways to run additional logic required to configure your development environment. For example, you could configure an event to start your database server each time you activate your project. Scripts are run manually; events run when you state activate your project.

June 2019

New Feature: Custom Windows builds for ActivePerl and ActivePython

  • You can now create you own customized ActivePerl and ActivePython distributions on Windows from scratch, or you can fork an existing project and customize it for you specific needs. After you build your project you can download the Windows installer (.msi) for your project, or use the State Tool to install it in a virtual environment.

Builds that are Managed by ActiveState cannot be customized. They are maintained by ActiveState, and if you fork these projects you regularly get the updated packages and dependencies as they are available.

Release: State Tool Preview

  • A preview release of the State Tool is now available on Windows and Linux. The State Tool is the command line tool for the ActiveState Platform. Create a custom build or fork an ActiveState build, and then use the State Tool to download it and activate your project in a virtual environment. For details on getting started, see the State Tool documentation.

    State Tool on Windows

New Feature: Private Projects

  • Paid users can create private projects. Users on the Coder, Team, Business, and Enterprise tiers can now create private projects. Private projects are restricted to members of the organization the project belongs to. Users on the Coder tier can create private projects that are only visible to themselves in their personal org. By default new projects on all tiers are public projects, which are visible to all users on the Platform.

    Private projects

New Feature: ActiveTcl Community Editions added to the Platform

  • New language added! You can now download ActiveTcl builds from the Featured Projects page.

    ActiveTcl Projects

May 2019

  • Improved Build Status information: You can now monitor the progress of your build including the total elapsed time, the success or failure of individual packages included in your build, and how long each package took to build.

    Build status Build success

  • New top-level navigation menu for quickly accessing Your Dashboard, Featured Projects, and Dev Tools from anywhere in the Platform.

    Top-level navigation

  • Red Hat Enterprise Linux 7 support: The Platform now supports builds with the latest Glibc version supported on RHEL 7 (glibc 2.17) and the latest kernel. Glibc is the main C library used by the Linux operating system, and the 2.17 release includes enhancements an bug fixes summarized here.

  • New Featured Projects tab: Provides access to the latest ActivePython and ActivePerl managed projects – projects that are curated and maintained by ActiveState. Currently available for Linux, these projects are the latest evolution of ActiveState Community Edition language distributions. You can view these projects to see the packages they contain, or fork them to make them accessible in your personal projects, or the projects that belong to any of the organizations you belong to.

    Featured projects

  • New Dev Tools tab: Access the latest edition of the Komodo IDE. For a limited time it’s available to all Platform users. You can also try out the preview release of the State Tool, which enables you to work with your Platform projects in an isolated virtual environment.

    Dev Tools

  • Your Dashboard tab: Provides quick access to your personal homepage on the Platform.

  • Delete projects: Added the ability to delete a project in the project Settings tab.

April 2019

  • You can rename your projects in the project Settings tab.

  • You can create your own customized ActivePerl distributions on Linux.

    Customized ActivePerl project

    Download customized build

  • For ActivePerl projects, you can search by either package name or module name. For example, you can search for mysql and locate packages that include this search term in their name, or you can enter the DateTime::Format::MySQL to locate the exact package you need based on the module name.

    Perl package search

  • You’re sent directly to the Build tab your new project when you create a copy of a project, or a fork, from the ActiveState.com downloads page.

  • Installer files are clearly differentiated from other files you can download from the Project > Builds tab.

March 2019

  • Fork Community Editions of ActivePython 3.6.6 and ActivePerl 5.26.3 directly from the activestate.com downloads page.

  • First release of the state tool, a command line interface for interacting with the ActiveState Platform and setting up projects in a local virtual environment.

  • Copying, or forking, projects supported. For all projects, forking a project enables you to track updates to the project. For example, when ActiveState updates a managed project, such as ActivePerl-5.24, the changes including bug fixes and updated packages will be automatically available in your forked project. Currently, you can fork and modify two ActiveState Community Edition projects and add or remove packages, and then create your own custom distributions. This is a beta feature available now for ActivePython 3.6.6 and ActivePerl 5.26.3 on Linux.

  • All users are now able to create and build projects.

  • Recommended languages and platforms for creating builds are highlighted. Builds of projects created for Python 3.6.6 on Linux are the most likely to succeed.

  • Build catalog increased to over 400 Python packages.

February 2019

  • ActivePython 3.7.0 and 3.7.1 custom builds supported.
  • Build catalog increased to over 300 Python packages available for selection.
  • Dashboard Latest Activity now shows the 20 most recent activities.

January 2019

  • Improved experience of creating a build by simplifying some of the language & platform options as well as guiding the user through the flow of getting to their first build.
  • Our beta functionality of being able to make your own language builds are available for Python 2.7, 3.5 and 3.6 on Linux 64 (RHEL, CentOS, Ubuntu, Debian, and most other flavors using Glibc 2.12).