X
2161

What's New in IDL 8.8.1

This article contains release notes for IDL 8.8.1.

See the following sections:

For system requirements, see Platform Support for ENVI 5.6.1 and IDL 8.8.1.

New Features

.PRO Files Ported to Native C/C++ Code

For improved performance, the following classes were ported from PRO code in the lib/datatypes folder to C/C++ code in idl.dll:

  • DICTIONARY
  • HASH
  • LIST
  • ORDEREDHASH
  • REVERSE

Additionally, the new procedure SAVEFILE_CLEANUP was added. This procedure inspects the given routine save files and removes any routines that could cause problems in modern IDL. See the SAVEFILE_CLEANUP topic in IDL Help for details and usage.

Macintosh M1 Support

Support for Macintosh M1 platforms has been added.

MKL_FFT Routine

The MKL_FFT routine (Math Kernel Library Fast Fourier Transform) was added to upgrade FFT performance. MKL_FFT returns a result equal to the complex, discrete Fourier transform of Array

Updates

QUERY_PNG

QUERY_PNG has been updated to return more metadata from a PNG file, including custom fields.

H5_PARSE

H5_PARSE has been updated to read in UTM8 encoded string data.

JSON_PARSE

JSON_PARSE has been updated to improve parsing speed. In comparison tests between IDL 8.7.3 and 8.8.1, speed was 3 - 9 times faster, depending on the size of the JSON files being parsed.

Updated Windows File Selector

The Windows file selector user interface for the DIALOG_PICKFILE() function has been updated. For details, see DIALOG_PICKFILE.

OpenGL Hardware Rendering Support

OpenGL hardware rendering is not fully supported on Linux VMs with the VMWare SVGA device driver. For full OpenGL hardware support on a VM, switch to using an nVidia driver.

To identify which driver is being used, run this compound command:

w = IDLgrWindow(Renderer=0) & w.GetDeviceInfo, All=all & print, all, /Implied

If the driver is VMWare SVGA, you will see properties such as this:

"NAME" : "SVGA3D; build: RELEASE;  LLVM;"
"VENDOR" : "VMWare, Inc."
"VERSION" : "3.0 Mesa 17.2.3"

Library Updates

The 3rd party libraries listed below have been updated to new these versions:

  • AdoptOpenJDK JDK and JRE, 11.0.11
  • Chromium Embedded Framework, 91.1.22
  • cURL, 7.77.0
  • Eclipse CVS Client, 1.4.1700.v20210303-1800
  • Eclipse Git, 5.12.0.202106070339-r
  • Eclipse Platform, 4.20.0.v20210612-2011
  • FreeType, 2.10.4
  • GDAL, 3.2.2
  • GEOS, 3.8.1
  • JasPer, 2.0.32
  • libHaru, 2.3.0
  • libjpeg-turbo, 2.1.0
  • libpng, 1.6.37
  • libxml2, 2.9.11
  • OpenSSL, 1.1.1k
  • python, 3.7.10, 3.8.10, 3.9.5
  • Spatialite, 5.0.0

The following 3rd party libraries have been added in this release:

  • POCO, 1.10.1