Repository navigation
v0.4.0.0
0.4.0.0 -- 2024-11-15
New features
- Interruptable expressions! This was a huge rework of the code. You can now press
Ctrl+c
and expression evaluation will be interrupted! Very handy for avoiding hanging.
See GitHub Issue #49 for details.
API changes
Large overhaul in general, as GHCiTUI has moved to an async daemon scheduling model.
- Ghcitui.Brick
- Introduction of the new
CustomAppEventto handle new event handling. - The
brickAppnow specifies aCustomAppEvent. - Moved event utils to
EventUtils.hs - Separated out
Events.hsintoInterpWindowEvents.hsandSourceWindowEvents.hs. - Introduced the callback functions
handleSourceWindowPostCbandinterpWindowPostCb.
- Introduction of the new
- Ghcitui.Core
- Removed the
runcommand as it was misleading in an asynchronous context. Replaced with
threadUnsafeRun. - Added the
scheduleandscheduleWithCbfunctions, which mostly replace the intent
ofrun, but work with async. - Added
interruptDaemonto call the interrupt signal. emptyInterpreterStatenow must be run underIO, as it must set up the lock.- Added
readyToExecto check if theghcihandle lock is taken.
- Removed the
In general, lots of doc fixes.
Bug fixes
- Fixed a bug where the module display wouldn't reveal the source in the
Source Window.
when there was only one module. See GitHub Issue #48
for details.
Known issues
See https://github.com/CrystalSplitter/ghcitui/issues for the latest issues.
- Inability to suspend operation through
Ctrl+z.