DIRECT includes many improvements and upgrades to the skins. It also addresses several workflow and client issues.

Please see the list below for complete details.


  • Extend all JS helper functions using Object.defineProperty
  • Fixed issues merging arrays in extend() JS helper function.
  • Fixed nameFromId including separator param when not necessary.
  • Fixed crash in platform.findWindow on mac
  • Fixed issues with wildcards using platform.findWindow.
  • Fixed platform.shellOpen not opening program in Windows.
  • Check both the filename and full path when looking for processes.
  • Fixed timeToRFC1123 possibly returning wrong time when input is negative.
  • Added maximize, isMinimized, isMaximized, canMaximize functions.
  • Added Maximize notification to SkinWindow.
  • Print navigation errors to debug log for IE and CEF on Windows.
  • Fixed crash when using getCreationTime and getModifiedTime in JS.
  • Fixed CEF window not rendering properly after calling skinWindow.setSize.
  • Fixed TextFileReader.setBufferSize not returning false when buffer size is <= 0.
  • Fixed localization slow to load when DHCP requests take a while to respond.
  • Change webget redirect functions to return pass/fail the way other functions do.
  • Fixed context menu is not being dismissed when clicking desktop.
  • Fixed expired logs not being deleted.

Workflow Engine

  • Added status notification to clear errors when a task requests.
  • Added retry functionality to download task.
  • Added overwrite option to directoryCopy task.
  • Allowed directoryCopy to work when target directory already exists.
  • Fixed programOpen task can't open zip file in Windows.
  • Fixed don't create empty directories with directoryCopy if recurse set to false.
  • Added pathFromUrl, urlJoin, urlFix, and hexToBase64, urlParse, pathParse macro.


  • All - Added ES7 shim
  • All - Added mac icons.
  • All - Added argument to wait for a particular state in stateNavigate JS task.
  • All - Added Solid State Networks public key.
  • All - Added additional state language strings.
  • All - Added model change directive for input elements.
  • All - Added axis-show option to performance directive.
  • All - Added ability to set performance axis label color.
  • All - Added ability for early shutdown in stateNavigate task.
  • All - Various CSS style changes
  • All - Updated icomoon library with chevron, cloud, and upload characters
  • All - Moved icomoon css into fonts folder
  • All - Change the way browse for folder string is localized.
  • All - Fixed not showing repository name when downloading multiple repositories.
  • All - Fixed time duration being off by a minute and add rollover to time duration filter.
  • All - Fixed don't add macro if it is angular's $$haskey property.
  • All - Fixed issue with IE throwing error when updating task status.
  • All - Fixed Host text showing in titlebar when translation not available.
  • All - Fixed browse button does not work on initial click.
  • All - Fixed reminify es6-shim due to failure on IE9
  • All - Fixed bug in IE9 when parsing user agent with trident with jQuery flot axis labels plugin.
  • All - Fixed macros not being imported into workflow properly.
  • All - Fixed state entry point being run when workflows are unloading.
  • All - Fixed errors not being cleared after running entry point again.
  • All - Clear errors when task sends empty errors array in status notification.
  • All - Moved repository error handling to repository task.
  • Downloader - Added ability to pass in next state to login ok call.
  • Downloader - Added ability to customize header with html.
  • Downloader - Made eula and login screens configurable in app config.
  • Downloader - Fixed bytes remaining check for mac.
  • Downloader - Fixed header image wrong height.
  • Downloader - Use IE11 rendering.
  • Multi - New skin to show multiple downloader in a single list view.
  • Branch - Don't allow item images larger than 60px wide.
  • Branch - Updated the name string for the process singleton.
  • Branch - Set default update interval to 10 minutes.
  • Branch - Added showLaunchArgs option to allow/disallow showing the launch settings button.
  • Branch - Fixed length of text box for folder selection.
  • Branch - Fixed install directory input using repositoryDirectory macro instead of installDirectory macro.
  • Branch - Fixed issues with user selected install dir not saved between sessions.
  • Branch - Fixed workflow installDirectory not loading at start.
  • Branch - Fixed launch args not working properly.
  • Branch - Implement erase repository and set onlyIfEmpty true on deleting directory.
  • Branch & Multi - Move library controller to its own js file.
  • Branch & Multi - Support loading library from external url.
  • Branch & Multi - Added libraryJson option to pull data from JSON string in app config.
  • Brnach & Multi - Added row selection to library controller and select first row by default.
  • Branch & Multi - Added askForInstallDirectory option for use-case where we want all workflows to install to the same directory.
  • Branch & Multi - Fixed browse for folder string is not localized.
  • Branch & Multi - Fixed library not loading when install directory not set.
  • Installer - Fixed line-height when program name is long.
  • Installer - Added Visual C++ 2017 runtime prerequisite.
  • Updater - Fixed singleton name for updater.
  • Launcher - Allow youtube content in rss feed.
  • Launcher - Added carousel and use of rss feed with images.
  • Launcher - Added repository encryption challenge handler.
  • Launcher - Added spinner icon to loading of support feed.
  • Launcher - Fixed issues with rss popup not displaying elements well.
  • Launcher - Fixed error icon position.
  • Launcher - Fixed keep speed label visible even if speed drops to zero.
  • Launcher - Fixed remaining bytes showing as negative number on mac.
  • Launcher - Show read disk speed, write disk speed, and read network speed.
  • Launcher - Added support for JSON feeds which don't have encoding issues like RSS feeds.
  • Store - Show login error reported by JSON User Plus API.
  • Store - Fixed width of library item images.
  • Store - Only show performance graph for each workflow when showProgress is set.

DIRECT includes minor bug fixes and improvements to the client. Extended support has been added for Steam interop implementations. Two new tasks have been added to the to the workflow along with a couple new macros. And the certificate signing console tool has been updated for macOS 10.14 Mojave.

Please see the list below for complete details.


  • Fixed bug determining length of http response body.
  • Fixed platform singleton and make it consistent across platforms.
  • Added dataStore macro that uses module path on win/linux and dmg on mac.
  • Added Base64ToHex macro which is safer than a FromBase64+ToHex combination.
  • Rename SubCopy macro as Substring.
  • Support for DataStore 2.0
  • Fixed gzip compression in WebGetRequest.

Core - Analytics

  • Added verbosity to analytics.


  • Added functions to get screen size of window in Windows, Mac, Linux.
  • Improvements to window dpi detection and handling for 4k monitors.
  • Fixed IE host not scaling properly with DPI on Windows 7.
  • Fixed directoryErase javascript function not working.
  • Fixed killOtherInstances option causes second instance to crash after killing first instance.
  • Fixed logExpirationDays not causing logs to be deleted in Mac/Linux
  • Expose WebGet's Authenticate function in javascript.
  • Added ability to get the datastore from the skin web server.
  • Added jwsVerifyX509 and jwsVerifyKey functions to host javascript.
  • Added skinWindow prompt icon types to host javascript.
  • Added requiresDataStore to app config.


  • Added directoryList task to workflow.
  • Added processList task.
  • Fixed type is null when printing error message.
  • Fix task error and warning count functions.
  • Automatically add a unique id on to urls so we don't have to specify unique urls in configs.
  • Fixed WorkflowRun fails to find specified entry point if specified entry point is one of the standard names.
  • Fixed issue launching file with programOpen task when path contains a space on mac.
  • Use simplified event name for interop load/unload.
  • Added response status variables to download task.
  • Added activeTime and pauseTime to download task status.
  • Added overwriteIfNewer and overwriteIfOlder options to download task to overwrite when comparing server modified time.
  • Fixed issues with resume not working as expected in download task when file already exists and outputPath argument specifies a directory.
  • Fixed issue with byte range when existing file is greater than content in download task.
  • Added recovery for when range requests are not supported in download task. In this instance resume will start back from the beginning.
  • Fixed workflow eats percentage character and everything after it.
  • Fixed directoryMove task fails on mac.

Console Tools

  • Signer - Support for DataStore 2.0 and added datastoresize command line switch.
  • Signer - Added support for authenticating signature on 64-bit executables.
  • Signer - Add warning when directory or binary not signed.
  • Signer - Fixed CMS signature generation bug with using octet string greater than 4k.
  • Signer - Fixed DMG signing for macOS 10.14 Mojave
  • Signer - Store signer version in signed attributes

DIRECT 5.1.10 is a bug-fixing release for client-side and UI issues with along with a lot of new minor things.  This release includes a new hash macro, client-side functions for triggering analytics events and loading/unloading interops, FTP support for the metafile and release console tools, and simplification of skins using the FontAwesome library for displaying icons. And that is pretty much it - but we have major things in store for DIRECT 5.2, which is coming soon.  Stay tuned!

Check out the list below for details on 5.1.10:

DIRECT introduces our new analytics system and the Origin Service Management Console.

This release also contains improvements to the interop interface, the ability to add checkmarks on context menus, tray icon support on Ubuntu, OAuth support and skin example, a new fast verify or quick scan of repositories workflow task, and support for accelerated s3 and dual stack endpoints in the console tools.Read on for a full list of features and fixes:​