Releases: iaincollins/icarus
v0.1.19
Release Notes
This release includes major UI improvements, with support for mobile and tablet displays and improved UI scaling. The approach being used should lend itself well to development of other UI panels that are adaptable to different screen sizes and display orientations.
There is a new data transfer indicator, that in addition to indicating (by blinking) when the connection between client and server is lost, also indicates when data is being transferred by lighting up.
In this release, only logs from the last 30 days are loaded at startup. Previously all data from the last 90 days was loaded at startup, but loading only data from the last 30 days is likely to be much faster while still loading enough data to be useful.
This further change to what data is loaded is an interim change to improve startup times. Eventually data should be persisted and this won't be necessary (all logs will be loaded once at initial run and from then on, only very fast incremental updates necessary). There may still be intermediate approaches applied on a pragmatic basis until persistence is implemented - the effort is not in persisting the data, but in doing so efficiently and in a useful way that scales well and meets needed use cases.
New Features
- Added navigation menu (only Log view enabled)
- Added network status / data transfer indicator
- Added support for mobile sized displays
- Added support for tablet sized displays
Other
- Changed to load logs from last 30 days (was 90 days) at startup
- Improved UI scaling
- Improved text on launcher
- Refactored UI layout components
v0.1.18
Release Notes
Now defaults to loading log entries from the last 90 days by default. Includes log view improvements.
Loading everything from the last 90 days is a pragmatic middle ground between only loading the most recent log file and loading everything. This will likely be revised again in future (once data persistence is in place it will be possible to import everything, once) but this provides a decent amount of utility for now without depending on other features.
New Features
- Import all data from last 90 days
- Improved log view
Other
- Internal API now supports loading additional logs after startup, with the option to load everything (or specify a cutoff point). This with a view in future to supporting fast initial startup (with no delay) and an optional, slower one-time bulk ingestion that runs in the background and only incrementally hydrates on future runs.
v0.1.17
Release Notes
Improved log browser interface with better display of log events and event details.
New Features
- Improvements to log browser UI
- Slightly large default window size for new terminal windows
v0.1.16
Release Notes
You can now browse log messages. Additionally, new interface elements are now implemented.
This is the first release with something approaching meaningful functionality.
With the application scaffolding in place a framework to build on and assets imported (including a new icon library) porting features and assets is proving straightforward. While the event handling as been slightly refactored (and is not yet final; there is currently no event data persistence between reloads) functionality has so far been easy to port in from the unreleased prototype.
New Features
- Select and browse recent log events
- New toolbar UI
- Implemented layouts for 3 types of panel (full, left and right)
Fixes
- Improved loading spinner appearance
v0.1.15
Release Notes
Added icons using the new icon font.
Using an icon font (rather than vector graphics) means that icons can have the same effects (e.g. glow, glitching) applied to them as other text.
Icon font glyphs are still vector images, but are (in practice) monotone and transparency is not supported (though it is possible to approximate it using a halftone effect). SVG images will still be used in the app (the map view, for example, generates SVGs on the fly to generate the system map) but icon buttons and some other use cases will use the icon font to allow the same special effects to applied to icons and text.
Some icons are original, some are recreations of icons seen in Elite Dangerous icons and many come from http://edassets.org (see also https://github.com/SpyTec/EDAssets).
New Features
- Now uses icon for fullscreen button
- Added connection signal indicator (changes to a blinking red icon when the connection is lost)
Other
- Internal refactoring of UI components
v0.1.14
Release Notes
Improved loading performance and improved loading UI with new statistics (log lines, file sizes) and progress meter.
New terminal view now shows a list of recent log events (and updates in real time)
IMPORTANT:
This release has reverted to loading all events to an in-memory database each time the app starts.
This takes a few seconds and uses lots of RAM and is not intended final behavior for release, but is useful for testing the performance delta between this build and previous builds, to quantify the impact of recent improvements.
The approach as we get closer to a 1.0 release will likely be a hybrid model with a small percentage of data persisted to storage (e.g. stellar cartography, system services, trade data) and the rest treated as transient events used to enrich data that is persisted; and previously imported data will persisted between app launches.
New Features
- Improved loading performance with a range of optimizations
- Improved loading UI with new statistics and progress meter
- New terminal window view, with real time list of log events
- Support for full screen mode and creating new terminal windows in Safari, Firefox and other browsers
Other
- Internal optimizations and bug fixes to improve performance
- Improved bulk loading mode
v0.1.13
Release Notes
Refactored internal event handling to drastically improve load times and reduce memory usage.
This update also includes cosmetic changes to how loading status is displayed in the launcher.
The performance improvements came by selectively indexing in the in-memory database only some types of in-game event, keeping only the most recent instance of others in memory (but not in the database) and discarding other event types we don't care about entirely.
If required, further improvements could be made to performance by persisting previously loaded data to a cache on disk. If performance proves to be sufficient, given that loading is non-blocking (i.e. you can start using the app before it has finished loading and the UI continually updates as new information is loaded) implementing a persistent cache may not be necessary.
New Features
- Improved time to load event data at startup
- Improved memory usage
- Cosmetic changes to loading info displayed in launcher
Other
- Simplified event handling to reduce code/complexity of interface components
v0.1.12
Release Notes
Terminal window now displays list of events and how many of each type found.
Terminal windows can now be launched before data has finished loading, they will update as new data is loaded.
New Features
- Displays list of events found, sorted by number of each event type
Other
- Refactored event loading to reduce complexity in both service and in interface components
- Added single handle to broadcast whenever game state changes. This event is rate limited, so should not be used for message delivery but is useful for knowing that the game state has changed and that new data has been loaded.
v0.1.11
Release Notes
Now displays count of the number of log files and events loaded in the launcher window. These update in real time as new events come in.
New Features
- Statistics for data loaded now displayed in the launcher window.
Fixes
- Bug fixes to file watching and event handling
Other
Release v0.1.10 is a defective build and should not be used (it will error at startup and exit with an error).
It should still auto-update to this build, but if you have any issues you may need to manually upgrade.
v0.1.9
Release Notes
The launcher window now displays statistics for data that has been loaded.
Following the updated custom installer images in the last update - there is a new custom icon to give the app it's own visual identity.
New Features
- Display number of log entries loaded - and JSON files parsed - in the launcher
- New application icon
Fixes
- Improved deferred message queue handling (when server is still loading/offline)
- Improved event model- easier for different views to listen to events they might care about
Other
- Developer documentation has been updated since the last release