haskell-gi

Generate Haskell bindings for GObject Introspection capable libraries

https://github.com/haskell-gi/haskell-gi

Version on this page:0.21.5
LTS Haskell 22.17:0.26.8
Stackage Nightly 2024-04-19:0.26.8
Latest on Hackage:0.26.8

See all snapshots haskell-gi appears in

LGPL-2.1-only licensed by Will Thompson, Iñaki García Etxebarria, Jonas Platte
Maintained by Iñaki García Etxebarria ([email protected])
This version can be pinned in stack with:haskell-gi-0.21.5@sha256:c76ff4730e94d717edece46baad09f25d69e0f100b7b7f5f59f74c27f315ab88,5085

Module documentation for 0.21.5

  • Data
    • Data.GI
      • Data.GI.CodeGen
        • Data.GI.CodeGen.API
        • Data.GI.CodeGen.Cabal
        • Data.GI.CodeGen.CabalHooks
        • Data.GI.CodeGen.Callable
        • Data.GI.CodeGen.Code
        • Data.GI.CodeGen.CodeGen
        • Data.GI.CodeGen.Config
        • Data.GI.CodeGen.Constant
        • Data.GI.CodeGen.Conversions
        • Data.GI.CodeGen.CtoHaskellMap
        • Data.GI.CodeGen.EnumFlags
        • Data.GI.CodeGen.Fixups
        • Data.GI.CodeGen.GObject
        • Data.GI.CodeGen.GType
        • Data.GI.CodeGen.GtkDoc
        • Data.GI.CodeGen.Haddock
        • Data.GI.CodeGen.Inheritance
        • Data.GI.CodeGen.LibGIRepository
        • Data.GI.CodeGen.ModulePath
        • Data.GI.CodeGen.OverloadedLabels
        • Data.GI.CodeGen.OverloadedMethods
        • Data.GI.CodeGen.OverloadedSignals
        • Data.GI.CodeGen.Overrides
        • Data.GI.CodeGen.PkgConfig
        • Data.GI.CodeGen.ProjectInfo
        • Data.GI.CodeGen.Properties
        • Data.GI.CodeGen.Signal
        • Data.GI.CodeGen.Struct
        • Data.GI.CodeGen.SymbolNaming
        • Data.GI.CodeGen.Transfer
        • Data.GI.CodeGen.Type
        • Data.GI.CodeGen.Util
      • Data.GI.GIR
        • Data.GI.GIR.Alias
        • Data.GI.GIR.Allocation
        • Data.GI.GIR.Arg
        • Data.GI.GIR.BasicTypes
        • Data.GI.GIR.Callable
        • Data.GI.GIR.Callback
        • Data.GI.GIR.Constant
        • Data.GI.GIR.Deprecation
        • Data.GI.GIR.Documentation
        • Data.GI.GIR.Enum
        • Data.GI.GIR.Field
        • Data.GI.GIR.Flags
        • Data.GI.GIR.Function
        • Data.GI.GIR.Interface
        • Data.GI.GIR.Method
        • Data.GI.GIR.Object
        • Data.GI.GIR.Parser
        • Data.GI.GIR.Property
        • Data.GI.GIR.Repository
        • Data.GI.GIR.Signal
        • Data.GI.GIR.Struct
        • Data.GI.GIR.Type
        • Data.GI.GIR.Union
        • Data.GI.GIR.XMLUtils

Generate Haskell bindings for GObject Introspection capable libraries. This includes most notably Gtk+, but many other libraries in the GObject ecosystem provide introspection data too.

Changes

0.21.5

  • Add support for callback-valued properties.

0.21.4

  • Try to guess signedness of enums and flags on the C side, fixes #184.

0.21.3

  • Do not add nodes in overrides if a node with the same name already exists, fixes #171.

0.21.2

  • Do not free Ptr Word8 types after performing the call to C, since they only get passed along. Otherwise one could easily double free in functions such as GdkPixbuf.pixbufNewFromData.

  • Fix a leak on optional ScopeTypeAsync callbacks.

0.20.4

  • Improve marshaling of array arguments with no specified size. This improves the generated bindings for various functions, for instance GObject.signalEmitv.

  • Replace the enable-overloading flags with a explicit CPP check of the version of haskell-gi-overloading we are being compiled against, see issue 124 for the rationale.

0.20.3

  • Make the overloading code protected by a CPP conditional, depending on ENABLE_OVERLOADING being defined. See issue 107.

  • Wrap boxed structs/unions as transient ManagedPtrs in callbacks. This is needed to fix a number of issues, including issue 96 and issue 97.

0.20.2

  • Fixes for GHC 8.2.1.

0.20.1

  • gtk-doc parser and haddock generator: while by no means perfect, now the autogenerated bindings come with some reasonable autogenerated documentation.

  • Many bugfixes. A particularly important one is for issue 82, which made compilation of gi-glib fail, for the latest version of gobject-introspection.