Skip to content

Release Notes

Alchemist Software Update [Version 2024.2] - June 11, 2024

We're excited to announce a groundbreaking change in the latest release of Alchemist. For the first time ever, we're introducing a completely free version of Alchemist!

Whether you are SAS customer, a individual user or a professional services company, Alchemist is now available for you to analyze SAS environments. It offers unparalleled insights and significantly simplifies the migration process.

This release also includes numerous enhancements and bug fixes, continuing our commitment to improving code conversion quality and migration efficiency.

Experience the power of Alchemist like never before, for free! Stay tuned for more updates.

Alchemist Software Update [Version 2024.1] - Feb 9, 2024

This release represents the culmination of several months of diligent work, encompassing 16 private pre-releases and extensive production testing. It delivers a plethora of new features, both major and minor, along with numerous bug fixes.

Most importantly it is the last version before we introduce a major change to our analyzer functionality, so stay tuned for more updates!

We've left no stone unturned in this release, enhancing everything from parsing to UI, templates, pattern matching, function support, and documentation.

We trust that you will find this release as satisfying to use as we found it to create.

Alchemist Software Update [Version 2023.7] - September 8, 2023

This is a small release that expands on supported SAS functions and constructs, fixes a few bugs, and improves the overall user experience.

Notable changes include:

  • Alchemist now leverages Prophecy's new gem comment feature to preserve SAS DI job and transform descriptions and notes.
  • Support for TRANWRD, IFN, MDY, MONTH, QTR, INT, INDEX, FIND, MEAN, and RANUNI functions has been added.
  • The experience in air-gapped environments has been improved.

Alchemist Software Update [Version 2023.6] - July 28, 2023

While you [hopefully] have been enjoying the your summer, Alchemist team has been busy working on the next release. Naturally this release is much smaller than the previous one, but it still packs a number of important improvements. Below are some of the highlights:

  • Strengthened SAS Code parsing identifies all procedures, regardless of rare option syntax or dynamic macro generated code.
  • Enhanced progress display provides warnings for larger projects where parsing and analysis may be prolonged.
  • Extended auto-conversion support to more common SAS functions, formats and expressions to Spark, applicable to Databricks & Prophecy dialects.

Below is the full list of changes:

New Features

  • UI
    • Notifications for UI start failure due to port conflict.
    • AST Explorer: Search from root or selected node option.
    • Warnings for large project processing.
  • Parser
    • External file column metadata extraction from ImportTask.xml in SAS EG Parsing.
    • New SAS Parser config option treat_numeric_cols_wo_format_as_double (default False).
  • Resolver
    • Type hints configuration in SAS Resolver config in cases when auto inference is not possible.
  • Analyzer
    • SAS Steps x Stat analysis table and SAS Stat Options table (for product enhancement).
  • Converter
    • SAS to Spark SQL Conversion:
      • Trailing blanks handling for SAS strings.
      • Runtime UDF for date & timestamp comparison.
      • Bool to int casting for integer expressions.
      • Warning for expressions requiring user-provided type hint.
      • Minimal handling for BEST format.
      • Support for several functions (CAT[T/X/S], LEFT, TRIM, HOUR, YEAR, DAY, DATETIME, DATE, LENGTH, NOTDIGIT, SCAN, INTCK).
      • Warning for unsupported PRXCHANGE, PRXMATCH functions.
      • Support for non-aggregate COUNT function.
      • Support for DISTINCT qualifier in SQL COUNT aggregate function.
    • Template Config
      • New option inline to define template directly in the config without a jinja file.

Improvements

  • UI
    • Better progress indication for the load command and SAS Code Analyzer
  • Parser
    • Changed default inferred type of SAS numeric columns for EG & DI metadata.
  • Analyzer
    • All file sources now present even if they didn't produced any stats
    • Added notification code to report tables
    • SAS Analyzer
      • Removed built-in macros from Macro Calls analysis table
      • Sort summary tables by occurrences
      • SAS Formats used in tasks (EG, Job transforms) are now shown in the Formats analysis table. This means that code_id column has been replaced with location_id and location_type similar to other analysis tables to allow joining with other tables depending on the location type.
  • Converter
    • Improved handling of SAS NULL\missing values during Spark SQL conversion
    • Prophecy dialect
      • Support same dataset for source and target gems
      • SAS DI Append transform now uses unionByName to support inputs with different columns
      • Added NULLs casting to a column type when column type can be inferred from metadata
      • Support multiple gem inputs with the same input data frame

Bug Fixes

  • Fixed parsing issues with SQL predicates and unsupported nodes in SAS Code Parser.
  • Resolved missing column mappings issue for Extract/SQL Transform in SAS Meta Parser.
  • Fixed loading issue for some saved projects from earlier versions of Alchemist.

Security Enhancements

  • No significant updates to security in this release.

Alchemist Software Update [Version 2023.5] - June 26, 2023

This is our biggest update to date with too many features & improvements to list. Below are some of the highlights.

New Features

  • Introduced Project Dashboard, a new screen offering a comprehensive summary of project analysis results, delivering a holistic view of your projects.
  • Launched a new AST Explorer feature for match pattern search & testing, making it easier to locate specific nodes or validate match patterns, and eliminating the need to configure templates blindly.
  • Enhanced Notification screen and included notification codes for improved troubleshooting and guidance, with future linkage to documentation in progress.
  • Enriched SAS Code Parser with full support for SQL DROP, INSERT, UPDATE & DELETE, and expanded support for less popular variations of SQL CREATE TABLE, INDEX & VIEW. It also now fully parses hash objects (declarations, methods, calls, etc.) and even more data step statements.
  • Added obfuscation support for SAS Code parser to help you anonymize sensitive data before sharing it with Alchemist team for support.
  • Introduced SAS Code type inference (beta) in Resolver.
  • Added Alchemist Size metric & Target Dialect Support in Analyzer, read more in the docs.
  • Introduced conversion report generation in Converter, including a source list and notifications for all dialects, along with additional tables for different conversion targets.

Improvements

  • Significant enhancements to the Alchemist UI, CLI, Parser, Analyzer, and Converter modules, for even better efficiency.
  • A lot of new SAS analysis tables, providing deeper insights into your SAS projects.
  • Restored and enhanced cyclomatic complexity analysis for SAS programs.
  • Upgraded SQL conversion with better output formatting and an auto-format option available for end users.
  • Databricks dialect now has an option to generate inline source & partialy converted result when Alchemist detects unsupported constructs.
  • Further imporvement to pattern matching capabilities.
  • And overall improvements to automatic conversion coverage across all dialects.

Bug Fixes

  • Addressed various bugs in Prophecy, SAS & Databricks dialects, improving the coverage and quality.
  • Resolved numerous SAS Code parser bugs, thereby increasing support for edge cases.

Security Enhancements

  • No significant updates to security in this release.

Alchemist Software Update [Version 2023.4] - April 9, 2023

New Features

  • Introduced a new analysis format: Parquet, enabling users to access detailed data for further analysis and dashboard creation
  • Substantially expanded analytical capabilities, with a particular focus on enhancing support for SAS programs
  • All analysis tables now include reference identifiers (commonly known as foreign keys), facilitating seamless integration and matching between different tables
  • Alchemist UI is now accessible to all users possessing a valid license
  • Added functionality for remote analysis of SAS Enterprise Guide (EG) projects, allowing for parsing, saving to save files, and conducting analysis or conversion on separate machines for all Alchemist-supported inputs
  • Enhanced support for SAS EG projects, including limited compatibility with SAS EG versions dating back to 5.1

Improvements

  • Alchemist is now distributed as a package for both macOS and Windows, streamlining the installation process and significantly decreasing startup time

Bug Fixes

  • Addressed numerous bugs across the software
  • Eliminated extraneous console output of debug information

Security Enhancements

  • The Windows application now features a digital signature from our developer certificate
  • Alchemist UI has been configured to run on 127.0.0.1, reducing the likelihood of triggering firewall warnings