Skip to content

Releases: iaincollins/icarus

v0.1.8

21 Nov 16:56
Compare
Choose a tag to compare

Release Notes

New default port (3300)

ICARUS Terminal now always defaults to running port 3300, to provide for a consistent URL for remote connections.

The URL for remote network connections (from tablets, laptops, other computers, etc) is displayed in the launcher. It will be different on each system, depending on your computers local network IP address, and can be copied/pasted from the launcher window.

The number 3300 is significant as it corresponds to the in-game year when Elite Dangerous launched (the game is set 1286 years in the future).

If depending on a fixed port turns out to cause problems on some systems (e.g. because of other software using that port) it's trivial to revert the behavior of selecting an available free port (and could provide a UI to configure this) but having it be the same port every time, on all systems, would be ideal from a user experience point of view as would be the least confusing.

NB: It's still possible to override the default port by creating a shortcut to ICARUS Terminal.exe and using a command line flag to specify another port (e.g. --port=1234).

New installer branding

From this release forward there is custom branding on installation/update package.

New Features

  • Now defaults to running port 3300 at startup
  • Added branding on installation/update package

Other

  • This release also sees the introduction of a build step for creating an Elite Dangerous icon font (and React components) from SVG assets.

This is significant as a number of unique animation and effects can be applied to font assets that cannot be applied to SVG files and will make it easier to blend in effects applied to icons with other text in the interface.

I intend to both leverage assets from https://edassets.org/ and share the resulting fonts back with them / the community so it can also be used in other projects. Expect more information about this in a future update.

v.0.1.7

20 Nov 13:30
Compare
Choose a tag to compare

Summary

When loading content (launcher, a new terminal window) a version of the loading animation embedded into the application is now displayed.

This improves perceived loading performance and reduces flicker while the UI is rendered.

New Features

  • Embedded loader is now displayed while UI (launcher, terminal) is loading
  • Launcher size is now larger to accommodate future UI

v0.1.6

19 Nov 17:19
Compare
Choose a tag to compare

Summary

UI now powered by Next.js/React.

This is an internal change but an important feature to test.

Other

  • Implements WebSocket interface using Hooks and React Context which will be used to share state across all views
  • App versioning for dependency management, application files, installer and in user interface all managed by the version field in package.json, this ensures app versioning should always be consistent as defined in a single place for the entire application / build process.
  • Improved developer experience for interface development, with hot reloading of the interface in development mode.

v0.1.5

18 Nov 23:54
Compare
Choose a tag to compare

Summary

New versions are now automatically downloaded and run when you choose to update to the latest version.

New Features

  • Updates now automatically downloaded and run (with appropriate privileges required)

Other

  • Improved build step for installer so that the the installer version always matches the product version. This should mean the installed application version is correctly displayed in Windows Add/Remove programs.

Known Issues

  • No progress is displayed during the download phase, though the application is only 20 MB in size so typically this should only take a few seconds at most. This user experience is likely to improve when the update check is integrated into the launcher UI in a future update.
  • Updates are not silent and still require you to confirm the update in the installer window that is displayed. This is not likely to change anytime soon due to a number of side effects and additional work that would be required to ensure a smooth user experience that wasn't confusing in edge case scenarios, without compromising on security or using an alterative commercial installer (and/or a fully custom updater).

v0.1.4

18 Nov 17:51
Compare
Choose a tag to compare

Summary

The application exits if an update is download.

New Features

  • The application exits if update is download, which avoids the update displaying an error until the application is shutdown.

Other

  • Added credit for loading animation
  • Build process improvements

Known Issues

  • Updates are not automatically applied (users must run the installer to apply the update), this may also not be obvious that this is happening (depending on the users browser). The installer needs to run with escalated pillages and investigation is needed to determine if this can be resolved by code that invokes it or if refactoring the installation/update mechanism will be required.

v0.1.3

18 Nov 13:04
Compare
Choose a tag to compare

Summary

The installer now checks for Microsoft Edge WebView2 Runtime at installation time and automatically installs dependencies that are required - this means the application will work out of the box on systems that don't have Microsoft Edge installed.

New Features

  • Improved installer - now checks for and installs missing dependencies

Fixes

  • Includes a fix for a bug that caused the update check to run twice at startup

Other

  • Scaffolding for Next.js/React UI

v0.1.2

17 Nov 18:18
Compare
Choose a tag to compare

This prelease build is not intended for production use.

There is no meaningful functionality in this release.

This release is being tagged up as a production release in order to facilitate testing of the upgrade mechanism.

This build improves the behavior of checking if a new version is available.

v0.1.1

17 Nov 18:09
Compare
Choose a tag to compare

This prelease build is not intended for production use.

There is no meaningful functionality in this release.

This release is being tagged up as a production release in order to facilitate testing of the upgrade mechanism.

This version should automatically check for new releases at startup and provide the option to download a new release.

This is a crude initial implementation to test release integration and is not intended to be the final behavior.

v0.1.0

17 Nov 17:36
Compare
Choose a tag to compare

This prelease build is not intended for production use.

There is no meaningful functionality in this release.

This release is being tagged up as a production release in order to facilitate testing of the upgrade mechanism.