# Release history for fudgets ## 0.19.0 -- 2026-??-?? * You can now cabal configure with the flag ``-fx11protocol`` to use a new [X Windows System Protocol](https://www.x.org/releases/current/doc/xproto/x11protocol.html) implementation instead of the old home-grown binding to the Xlib C library, eliminating most uses of the Foreign Function Interface and the potential memory safety issues what come with it. The X Window System Protocol implementation is still work in progress, but all the demos and examples listed in ``fudgets.cabal`` work, and so do some larger programs, like WWWBrowser and Alfa. Known issues: dependencies on [network](https://hackage.haskell.org/package/network)<2.7 and [select](https://hackage.haskell.org/package/select) can cause problems: * ``network-2.6.3.6`` can be installed with recent versions of ghc by using ``--allow-newer``. * ``select`` contains a superfluous ``extra-libraries: rt``. It appears to be harmless on Linux, but needs to be removed on macOS. * The fudget ``bufferButtonF`` was added to ``ContribFudgets``. * Changes to data types (requiring a major version number bumb, even though the changes are fairly small): * Added support for the GC attribute ``GCArcMode``, with choices ``ArcChord`` and (the default) ``ArcPieSlice``. * The data type ``Points`` was added and used in the constructors ``DrawLines`` and ``FillPolygon`` in the ``DrawCommand`` data type. Backwards compatible functions ``drawLines`` and ``fillPolygon`` were also added. * The data type ``BitmapData`` was added and used in the ``BitmapReturn`` data type. * Various minor documentation improvements, bug fixes, internal implementation changes and source code cleanup. Fixed some old-style C function declarations. * Tested with 20 different versions of GHC, from 7.4.1 to 9.14.1. ## 0.18.4 -- 2023-06-27 * ``Cla`` (Lennart Augustsson's calculator) is now included. * Added support for binary I/O with lazy bytestrings to files and network sockets. * Removed the last remnants of the ``PackedString`` type. * Tested with 14 different versions of GHC, from 7.4.1 to 9.6.2. * Fudgets turned 30 this month, can you believe it? [The first paper on Fudgets](https://www.altocumulus.org/Fudgets/fpca93-abstract.html) was presented at the *Conference on Functional Programming Languages and Computer Architecture*, Copenhagen, June 1993. ## 0.18.3.2 -- 2022-08-04 * Simplified the installation on macOS by adding a helper script `hsrc/fudcpp` to workaround problems with the `-optP` option in `ghc>=8.10.3` and automatically detect which version of `gcc` is installed. ## 0.18.3.1 -- 2022-03-14 * Renamed `doRequest.hs` to `doRequestCmd.hs` to avoid a name clash with `DoRequest.hs` on systems with case-insensitive file names. ## 0.18.3 -- 2022-03-13 * Although Fudgets dates back to the early 1990s, this is the first release on Hackage.