Skip to content

Toast v1.3.0

Compare
Choose a tag to compare
@JaciBrunning JaciBrunning released this 26 Apr 06:33
· 195 commits to master since this release

+Add default Delegates for Logging and the Command Bus
    Default network connections for Logging Output and Command Bus input, for remote consoles

+Add arrays to Config Files
    GroovyPreferences configuration files can now use Arrays to store data

+LoadPhase system
    Migrated to the new LoadPhase system, which consists of Bootstrap, Pre-Init, Init, Pre-Start and Start. This allows for more control over phases of loading and simpler debugging for the Toast Core

+ToastThreadPool
    Added a Thread Pool implementation, which allows for tasks or calculations to be scheduled for completion by 2 threads. These tasks are queued and executed when a Thread is not busy. The new 'threads' command is used to debug this and view data about the ThreadPool.

~Update USB Command
    The 'usb' command can now take a drive name as an argument, as well as load data from a USB drive to the local Toast files, enabling easy loading of modules.

~Improve Concurrency Performance and Stability
    Most classes using ArrayList have been migrated to Vectors, and the StateTracker now uses a concurrent form of instance storage, allowing for listeners to be added while in a ticking phase.

~Fix memory leaks
    The 'Logger' class had a memory leak due to it storing its entire backlog in RAM. This has been removed and any classes wishing to access the backlog must read from the 'recent.txt' logging file to avoid unnecessary RAM usage. An example implementation is seen in the LoggerDelegate.