Changelog of @hackage/h-raylib 5.5.2.1

h-raylib changelog

Changelog guidelines (apply to 5.5.0.0 onward)

Changes ported from the upstream raylib code are not mentioned unless they are breaking changes. Changes and bug fixes in the h-raylib API are mentioned, breaking and non-breaking. Internal changes that do not change the API or affect functionality are not mentioned (e.g. performance improvements).

Versioning scheme

h-raylib's version numbers do not follow the usual format. The first two numbers in the version track the underlying C raylib version. For example, 5.1.x.x versions use raylib 5.1 under the hood. The third number represents breaking changes (renamed/deleted functions or modules). The last number represents non-breaking changes (new functions or modules, bug fixes, etc). The safest version bound format to use is h-raylib >=x.y.z.w && <x.y.(z+1) (instead of the usual ^>= bound).

Version 5.5.2.1

28 October 2024

  • Bug fixes for web compilation

Version 5.5.2.0

21 October 2024

  • BREAKING CHANGE: is*Ready functions renamed to is*Valid (upstream change in raylib)
  • BREAKING CHANGE: setGamepadVibration takes a fourth argument, duration (upstream change in raylib)
  • Loosened the version bound on base

Version 5.5.1.0

11 October 2024

  • BREAKING CHANGE: set*Callback functions are no longer managed and do not return IO C'*Callback values
  • BREAKING CHANGE: Removed loadImageSvg (upstream change in raylib)
  • [#58] Added support for setTraceLogCallback

Version 5.5.0.0

12 July 2024

  • BREAKING CHANGE: Reimplemented Vector2/3/4 using linear's V2/3/4
  • [#55] BREAKING CHANGE: Completely reworked memory management (check DOCUMENTATION.md and the example programs)
  • Dropped ghc 8.10 support
  • [#54] Exposed internal modules
  • [#56] Fixed a bug with loadFontEx and other font-related functions not working

Version 5.1.3.0

13 April, 2024

  • Made some utility functions pure
  • Improved the performance of Raylib.Util.Math

Version 5.1.2.0

9 April, 2024

  • Internal changes for performance
  • Fixed a typo in filePathList'capacity (previously filePathlist'capacity)
  • Fixed marshalling bugs with FilePathList

Version 5.1.1.0

22 February, 2024

  • Split Raylib.Types into different modules (Raylib.Types reexports everything, so this will not break existing code)
  • Fixed flake.nix and default.nix
  • Exposed all the native functions
  • Added support for callbacks
  • Added more thorough Haddock documentation
  • Added pointer utility functions (p'*)
  • [#4] Started working on web support
  • [#34] Added bindings for raygui (Raylib.Util.GUI, Raylib.Util.GUI.Styles)

Version 5.1.0.1

16 January, 2024

  • Updated raylib to the master branch
  • [#26] New platform-nixos build flag
  • [#27, #35] Added flake.nix

Version 4.6.0.7

10 September, 2023

  • Updated raylib to the master branch

Version 4.6.0.6

24 July, 2023

  • Updated raylib to the master branch

Version 4.6.0.5

29 June, 2023

  • [#22] Allowed base-4.18 to support GHC 9.4 and higher
  • [#23] Added helper functions in Raylib.Util as an alternative to the begin* and end* functions

Version 4.6.0.4

16 June, 2023

  • Updated raylib to the master branch
  • [#19] Changed all the Raylib.Util functions to use MonadIO for flexibility
  • [#20] Changed CFloat to Float in drawCapsule and drawCapsuleWires

Version 4.6.0.3

23 April, 2023

  • Updated raylib to the master branch
  • [#18] Added lenses for raylib data structures

Version 4.6.0.2

8 April, 2023

  • Fixed a bug in clamp
  • Updated raylib to the master branch

Version 4.6.0.1

2 April, 2023

  • Created the Raylib.Util.Math and Raylib.Util.Camera modules. They are Haskell implementations of raymath and rcamera.
  • [#15] Fixed a memory issue with getFontDefault

Version 4.5.3.4

19 March, 2023

  • Updated raylib to the master branch

Version 4.5.3.3

15 March, 2023

  • Added GHCi support (see README.md for usage instructions)
  • Updated raylib to the master branch
  • Removed global state; use WindowResources (see examples for usage)

Version 4.5.3.2

1 March, 2023

  • [#12] Added rlgl bindings (Raylib.Util.RLGL)

Version 4.5.3.1

27 February, 2023

  • Added manual asset unloading functions
  • Updated raylib to the master branch
  • [#11] Fixed a build issue on MacOS

Version 4.5.3.0

24 February, 2023

  • BREAKING CHANGE: Restructured project; the main modules are moved into Raylib/Core and Raylib.Colors is now Raylib.Util.Colors
  • Changed setShaderValue and setShaderValueV to consume Haskell values rather than Ptrs
  • Added the Raylib.Util module for utility functions

Version 4.5.2.0

21 February, 2023

  • BREAKING CHANGE: Removed asset unloading functions
  • BREAKING CHANGE: Changed Camera3D API to match C code
  • Added code to automatically unload assets
  • Added mathematical operators for vector types
  • Updated raylib to the master branch

Version 4.5.1.1

14 February, 2023

  • Added finalizers to auto-unload audio data
  • Fixed C include errors

Version 4.5.1.0

12 February, 2023

  • BREAKING CHANGE: Changed all types to minimize usage of Ptrs
  • BREAKING CHANGE: Split the Raylib module into six modules: Raylib.Audio, Raylib.Core, Raylib.Models, Raylib.Shapes, Raylib.Text, and Raylib.Textures
  • Added the internal Freeable typeclass to prevent memory leaks
  • [#8] Added Xext as a dependency again

Version 4.5.0.12

14 January, 2023

  • Removed ShaderLocationIndex from some function types

Version 4.5.0.11

14 January, 2023

  • Fixed some function types
  • Allowed omitting fragment/vertex shaders in loadShader functions

Version 4.5.0.10

5 January, 2023

  • Restructured to make the examples easier to run
  • Updated raylib to the master branch

Version 4.5.0.9

23 December, 2022

  • Changed setConfigFlags and setGesturesEnabled to use an array of flags

Version 4.5.0.8

18 December, 2022

  • [#9] Fixed an issue on Mac where clang failed to detect that rglfw.c was using objective-c

Version 4.5.0.7

26 November, 2022

[#7]

  • Removed all constants that were enums in the original C API and replaced them with sum types deriving Enum
  • Removed some CInt usage in the main API
  • Removed Raylib.Constants

Version 4.5.0.6

24 November, 2022

  • [#6] Fixed Font marshalling

Version 4.5.0.5

19 November, 2022

  • Replaced CInt with CBool in RayCollision
  • Updated raylib to the master branch

Version 4.5.0.4

13 November, 2022

  • Replaced CInt with CBool for functions that return booleans
  • Removed Xext dependency (it is no longer required for Nix builds)