Releases: Kymorphia/gid
v0.9.7 - libgda binding added, shared libraries are now loaded optionally, generated package README.md files, add underscore prefix to built-in method names, Flag!"Take" no longer has a default, several other bug fixes and improvements
v0.9.7 add a libgda binding for the GNU Data Access library to access databases and other data. Improved shared library loading which no longer throws an exception if a library is missing, only if a function is called in the missing library. This makes it possible to write D applications which only use a library if it is available at runtime. Other changes include adding underscores to built in methods and Flag!"Take" argument to object constructors no longer have a default value. Both of those changes were made to decrease the chance of conflicting with GIR binding API methods. Packages now have website, D, and C API URIs. These are used to generate package README.md files and the website is also now added to the dub.json package files.
Other minor improvements and bug fixes including: missing parenthesis for return type in signal connect templates, new giD SVG logo, fix crash bugs in containerFree for GList and GSList for GidOwnership.None, add working/improved glib.global.strftime, add valType method to gobject.value.Value to get the gType of the value, and add custom gst1.init_ and initCheck methods.
Commit details:
- 9138675 (Element Green): Minor updates to README.md
- f2a4053 (Element Green): Add giD logo SVG
- b66921b (Element Green): Update packages including adding all new generated README.md files, C_API_Library_Reference.md just links to main package README.md now
- ba00380 (Element Green): Add library information to def files and update gidgen git hash
- 8bc4e1e (Element Green): Wrapper constructor no longer has default for Flag!"Take"
- fbe9e5e (Element Green): Update packages and also remove package README.md files which will be generated in a subsequent commit
- 060bbb6 (Element Green): giD loader improvements
- fd1c706 (Element Green): Forgot to update dub.json for Gda5 and libxml2 bindings
- aa1f730 (Element Green): Add Gda5 and libxml2 bindings
- 66b26c2 (Element Green): Add custom gst1 init_ and initCheck implementations (inout argv array not currently supported)
- fbecdbc (Element Green): Add valType method to gobject.value.Value to get the value GType
- 7c71590 (Element Green): Add improved glib.global.strftime implementation which works, unlike the previous one, and automatically resolves passed in buffer size
- b1b3c99 (Element Green): Add bare constructor for ErrorWrap
- dc4724a (Element Green): Fix crash bugs in containerFree for GList and GSList for GidOwnership.None
- 82c63b1 (Element Green): Add underscore prefix to built-in methods
- 020add9 (Element Green): Forgot to rename ObjectWrap.getType to getGType
- 91f66fa (Element Green): Add giD logo to README.md
- 821a2ca (Element Green): Add giD logo SVG
- 779b5a4 (Element Green): Added the topl-level module NOTE under Quickstart which links to Package Dependencies
- d0e0246 (Element Green): Add example dub.json and note about not using top-level package
- b0d3d94 (Element Green): Update gidgen to fix missing parenthesis for return type in signal connect templates
v0.9.6 - WebKit, GObject property support, Boxed type constructors with support for variable number of args, doc improvements, and more!
v0.9.6 adds a binding for WebKit, the open source web browser engine. This release also adds GObject property support. Several objects were renamed, including ObjectG -> ObjectWrap, VariantG -> Variant, and several improvements to documentation output.
NOTE: Backwards compatibility broken with this release.
Commit details:
- 9b32cf0 (Element Green): Updates to README.md for properties and renames
- b5c3fcb (Element Green): Use gidgen submodule for generating packages
- b7c38f8 (Element Green): Variant and Wrap postfix renames
- d958df3 (Element Green): Remove unused webkitwebprocessextension6 UserMessage error_quark with missing error enum
- 6e9419b (Element Green): Rename javascriptcoregtk6 Exception to ExceptionJSC
- 08f5828 (Element Green): Fix gobject2.object.ObjectG.getProperty() template
- da52d19 (Dejan Lekic): WebKit, WebKitWebProcessExtension, and JavaScriptCore 6.0 bindings. (#39)
- 83bf2c9 (Element Green): Fix Github Discussions link.
- 1400384 (Element Green): Add Community Discussions section with link to Github Discussions and new Discord Server.
- 7bae7a2 (Element Green): Add gidgen as a submodule to gid to keep them in sync
v0.9.5 - GStreamer, json-glib, libadw, and libpanel added; signal handler improvements; object self property for with statements; memory leak fixes; improved docs; other bug fixes and improvements
Summary of changes with release v0.9.5:
- GStreamer bindings
- json-glib binding
- libadw binding
- libpanel binding
- Add self property for
withstatement convenience, when using a newly created object as the with subject. - Object memory management improvements which fixes memory leaks and potential use after free issues
- Many XML patches to fix individual APIs
- Fix adrdox search feature
- Latest gidgen changes
- Variable arguments with signal handler callbacks. Only those arguments which are needed, in sequence, can be specified in the callback.
- Derived object types can be used for signal handler arguments. For example: an ApplicationWindow argument can be used instead of the native Window type for a Window signal handler, since it is a derivative type.
- Improved signal connection template documentation with callback prototypes.
- Add self property to ObjectG and Boxed types for with statement convenience, when the with statement uses a newly created object as the subject.
- Improved binding report output which does not count methods, signals, or fields for structures which are inactive.
- Support for signal container input arguments.
- Improved adrdox documentation: C function pointers/aliases are now included in docs, module docs with links to classes, Throws: now added for functions/methods which throw ErrorG or derived exceptions.
- Other bug fixes and binding improvements.
Commit details:
- 8e007c5 (Element Green): Update packages for latest gidgen which adds Throws: to doc comments
- cd888a4 (Element Green): Add link to dlang.org and link the "And more!" item in the supported libraries list to the packages/ directory
- 6e9647b (Element Green): README.md updates
- 5590770 (Element Green): Update packages for release
- 0a29c54 (Element Green): Add links for all other supported libraries (other than a few uninteresting ones)
- f1f24be (Element Green): README.md updates
- 03f57cd (Dejan Lekic): Moved the C API Reference links to a separate Markdown file in doc/ directory. (#34)
- dac94ba (Dejan Lekic): Add libpanel binding (#33)
- 684d425 (Element Green): Add missing docs in defs files
- 89ec491 (Element Green): Revert ObjectG back to using GC roots instead of AA due to recursive GC issues during destruction
- cdb89e1 (Element Green): ptrFreezeGC: Re-added check for GC.inFinalizer
- feefe88 (Element Green): Memory management changes to ObjectG and signals
- 32f03d5 (Element Green): freezeDelegate/thawDelegate now us GC.malloc and freeze the delegate not just the ptr
- bd339d7 (Element Green): Rename DGClosure.dlg to DGClosure.cb and remove some templates that weren't used and look broken
- 624821c (Element Green): objectDebugLog calls now @nogc
- 5a53e1f (Element Green): Add search-docs.js temporarily until it is available in upstream adrdox with fix to JS search feature ('constructor' symbol JS bug)
- 4672dd3 (Element Green): TextBufferSerializeFunc callback return value should be transfer-ownership full
- 20552b6 (Element Green): Disable more class and interface APIs
- 188b59e (Element Green): Disable gst Meta.serialize method and MetaSerializeFunction callback, since there are alternatives and was problematic
- ba9bde4 (Element Green): Ignore type plugin and interface callbacks
- d87f234 (Element Green): Additional gid.gid public imports for signal connect templates
- 23fe868 (Element Green): Enable GObject.TypeClass structure
- c7383e7 (Element Green): Add self() method for Boxed and ObjectG for convenience using D with statements
- 0b31ce2 (Element Green): Rename gdk3.Monitor to MonitorG just as with gdk4 so as not to conflict with Phobos
- 01e80a0 (Element Green): Update packages from latest gidgen run
- 082b8cb (Element Green): Updates to gid and defs
- dc919b7 (Element Green): Rename safeMalloc and safeFree to gMalloc and gFree to be less confusing
- a1413ae (Element Green): Global defs: Change free/ref/unref methods to ignore instead of introspectable=0, add rules to ignore reserved and dummy fields (was hardcoded before)
- ff5dded (Dejan Lekic): Adwaita binding (#29)
- e55eb51 (Element Green): Add many XML patch statements to fix issues with GIR files as well as disable unsupported APIs
- 17f1952 (Element Green): Add GStreamer and json libraries
- 9998045 (Element Green): Change getType to getGType for Boxed, Object, and Interfaces
- cb19f6b (Element Green): Add support for simple structures to Array, PtrArray, List, and SList and free them with containerFreeItem
- ebe3300 (Element Green): Gidgen update to FuncWriter.processArrayOutParam: Cast source C array to target D type to handle void* C type
v0.9.4 - Gtk3, RSvg, libsoup, libsecret, and other new libraries, optional parameters, Mac OS fix, using adrdox with improved API docs and custom theme
v0.9.4 adds Gtk3, Gdk3, RSvg, libsoup, libsecret, vte 2.91, GtkSource 4, and other dependent packages; optional parameter support; loader fix for Mac OS; now uses adrdox for API documentation with custom gtk-doc inspired theme; removed some symbol renames since fully qualified names are now used in the bindings; and several API documentation improvements.
250065d (Element Green): Update packages from latest gidgen which reverts changes to enums which was causing circular module issues * DDoc comments are now added to enum aliases so they get added to adrdox output
fedec51 (Element Green): Update README.md
605b505 (Element Green): Documentation updates: * Add doc/Makefile and docs target to build adrdox html documentation * Add doc/skeleton.html which is output by adrdox (not currently used) * Add custom adrdox stylesheet to mimic gtk-doc color scheme * Update packages for latest gidgen, including a lot of doc updates
154a76e (Element Green): Update to gen-adrdox.d to handle recursive dependencies. Still doesn't work right though. Just generating docs on latest libraries.
2907b86 (Element Green): First iteration of adrdox generator helper utility (needs full recursive dependency support)
6bfe08e (Element Green): Update packages from gidgen with optional parameter support
fc92f05 (Element Green): Update packages to use optional parameters from latest gidgen
5222f80 (Dejan Lekic): GtkSource 4 added, for Gtk 3 based applications that need GtkSource. (#21)
e437b8f (Dejan Lekic): Vte 2.91 added, providing VTE for the recently added Gtk 3 (#20)
2a92470 (Element Green): Remove several symbol renames which are no longer necessary with fully qualified symbols: * ValueAtk -> atk.value.Value, CrLanguage -> cairo.types.Language (doesn't seem to be getting generated), ApplicationGio -> gio.application.Application, PgLanguage -> pango.language.Language, ValueSecret -> secret.value.Value, AlignVte -> vte.types.Align.
467896f (Element Green): gtk3, gdk3, and xlib2 bindings, gidgen update to fully qualified symbols
9faed56 (Dejan Lekic): Add binding for libsecret. (#18)
954f92f (Christian Köstlin): Fix gid.loader compile error on OSX with ldc-1.40.0 (#14)
41cf621 (Dejan Lekic): Updated/added references to RSvg2, Soup3 and Vte3 (#15)
c34a5b7 (Dejan Lekic): Soup v3 (libsoup) giddy package. (#12)
27d842c (Element Green): Definition file renames to support multiple library versions and gidgen generate which fixes ddoc symbols to be lower case
0e1f550 (Dejan Lekic): Updated the report.txt (#10)
ac362a2 (Dejan Lekic): RSvg 2.0 added to giddy. (#9)
v0.9.3 - Atk, Vte-3.91, and GtkSource-5 libraries added; lowercase module names, several other binding improvements, README.md updates
With v0.9.3 of the giD binding repository there is now support for Atk, Vte-3.91, and GtkSource-5. Module names and package namespace directories are now lowercase to conform to D coding conventions. Removed many binding rules which are now handled automatically by gidgen (arrays of strings). Other updates from latest gidgen and improvements to binding coverage.
- Update to use renamed gidgen repo command (now 'gir') and use new package version scheme (Element Green) 56eaef4
- Updates to README.md to reflect current gidgen and giD bindings (Element Green) af877e1
- Update from latest gidgen which fixes GtkSource constructors with external return types GtkSource definition: Set get_mark_attributes.priority as out direction (Element Green) 4f35d30
- Ignore many items in definitions including Interface structures, change several items from disable to ignore, ignore several additional items which are not useful to the D binding (Element Green) 12f5f51
- Remove string array zero termination rules since gidgen now handles this automatically, remove some other unnecessary rules (Element Green) e6db8cd
- Support for GtkSource-5. (#7) (Dejan Lekic) 427469e
- Lowercase package source directory and module names update (Element Green) d8577ce
- Update packages for latest gidgen changes which fixes issue with null delegate arguments (Element Green) c6c9ad3
- Add Vte-3.91 terminal library support (#3) (Dejan Lekic) 240f7a9
- Atk-1.0 support, remove all Class/Iface structures from binding, many changes to list of supported/unsupported API after gidgen updates (Dejan Lekic) f6c3bcc
v0.9.2 - Windows support, report generation, Apache Arrow binding, and other improvements
giD 0.9.2 adds support for Windows, binding coverage reports, Apache Arrow binding, and many other improvements.
- Dynamic loader now supports Windows and Mac (untested)
- Dynamic symbol loader is now in Gid.loader instead of being generated per package
- GID_LOADER_DEBUG environment variable added for increasing verbosity of dynamic symbol loader
- Now using "library" instead of "dynamicLibrary" for dub targetType (seems to result in static libraries for now)
- Add binding for Apache Arrow, ArrowDataset, ArrowFlight, and Parquet as the first non-GTK binding
- Add report.txt to repository for tracking giD binding coverage
- Remove manual aliases for conflicting ancestor class methods, since they are now automatically generated by gidgen
- gidLink() of the loader is now a function instead of a template which cuts down on template instantiation overhead
- long/ulong now use versioned aliases so that they are 32 bit on Windows
- Remove dub.selections.json
- Changed several API items from "disabled" to "unsupported"
v0.9.1 - Fixes for building with dmd compiler
Fix building giD with the dmd compiler.
NOTE: This breaks backwards compatibility, due to the GLib.Boxed to GObject.Boxed rename.
- 089f015 Remove variant_get_gtype from GObject binding since it resulted in duplicate symbols with GLib-2.0.gir when using dmd, this seems like an error in the GObject-2.0.gir file.
- 32cebc4 Rename GLib.Boxed to GObject.Boxed and remove unnecessary localized dlsym resolution of g_boxed_copy and g_boxed_free which was causing crashes when building with the dmd compiler