1.60.1 - 2019-04-07
-------------------

* Update glib annotations (glib-2-60)
* shlibs: fall back to basename on macOS for relative paths :issue:`222`
* meson: always pass --quiet to g-ir-scanner
* docs: include '--c-include' in g-ir-scanner man page :issue:`275`
* tests: Fix compatibility with Python 3.5 :issue:`274` (:user:`Tomasz Miąsko <tmiasko>`)


1.60.0 - 2019-03-10
-------------------

NOTE: This is the last release supporting autotools. Please try building with
meson instead and report any problems. This does not affect projects using
autotools + g-i, only the build of g-i itself.

* gir: Update glib annotations :mr:`142` :mr:`141` (:user:`Andrea Azzarone <azzaronea>`)


1.59.5 - 2019-03-04
-------------------

* gir: Include C header in cairo gir file :mr:`138` (:user:`Tomasz Miąsko <tmiasko>`)
* ccompiler: restore customize_compiler() setup for macOS. :issue:`268`
* gir: skip glib-enumtypes.h for GObject-2.0 :mr:`140`


1.59.4 - 2019-02-04
-------------------

* tests: Add functions using flat struct arrays. :mr:`130` (:user:`Tomasz Miąsko <tmiasko>`)
* Clean shebangs out of non-executable scripts and drop exec perm from xmlwriter.py. :mr:`131` (:user:`Dominique Leuenberger <DimStar77>`)
* maintransformer: parse deprecation annotations for section blocks. :issue:`213` :mr:`132`
* repository: g_irepository_get_object_gtype_interfaces. :mr:`30` (:user:`Colin Walters <walters>`, :user:`Philip Chimento <ptomato>`)
* message: handle fatal errors even if warnings are disabled. :issue:`229` :mr:`126`
* autotools: Fix build with ``-Wl,--as-needed``. :issue:`226` :mr:`134`
* maintransformer: Don't warn on (optional) annotations on (inout) :mr:`135` (:user:`Guido Günther <guidog>`)
* girepository: Fix a possible use-after-free if g_mapped_file_new() fails
  and fix possible leak of transitive dependency names. :mr:`136` (:user:`Elliott Sales de Andrade <QuLogic>`)


1.59.3 - 2019-01-08
-------------------

* meson: use underscore as a separator in build options (gtk-doc -> gtk_doc etc)
  :mr:`129`
* website: add cppgir C++ binding
  :mr:`124` (:user:`Mark Nauwelaerts <mnauw>`)
* scanner: Merge specifiers and qualifiers when merging basic types.
  Fixes "unsigned char" being wrongly parsed as "unsigned" etc.
  :mr:`125` (:user:`Tomasz Miąsko <tmiasko>`)
* meson: warn that not all tests will be run if building without cairo/doctool
* scanner: rework source root directory guessing code to not depend on the
  build directory
* scanner: Remove incorrect c:type generated for array of synthesized unions
  :mr:`127` (:user:`Tomasz Miąsko <tmiasko>`)
* scanner: Flatten multi-dimensional arrays fields
  :mr:`128` (:user:`Tomasz Miąsko <tmiasko>`)


1.59.2 - 2019-01-04
-------------------

* Everything included in 1.58.3
* meson: Various fixes and all tests have been ported (0.47+ is required now)
  :mr:`114` :mr:`110` etc.
  (:user:`Tomasz Miąsko <tmiasko>`, :user:`Emmanuele Bassi <ebassi>`,
  :user:`Christoph Reiter <creiter>`)
* scanner: Save preprocessor input and output files with ``save-temps``
  :mr:`107` (:user:`Tomasz Miąsko <tmiasko>`)
* automake: Use the wildcard function where needed
  :mr:`100` (:user:`William Hua <williamhua>`)
* build: extend ``PYTHONPATH`` instead of replacing it :mr:`101`
* gir/cairo: add ``cairo_rectangle_t`` :issue:`74` :mr:`103` (Yeti)
* Add a ``--version`` option to g-ir-compiler and g-ir-generate
  :issue:`55` :mr:`106`
* tests: various test improvements
  :mr:`111` :mr:`117` :mr:`119` (:user:`Tomasz Miąsko <tmiasko>`)
* ccompiler: don't use Python compiler flags
  :issue:`150` :mr:`118` :mr:`120`
  (:user:`Tomasz Miąsko <tmiasko>`, :user:`Christoph Reiter <creiter>`)
* parser: Do not bail out when parsing GIR files without doc positions
  :mr:`121` (:user:`Emmanuele Bassi <ebassi>`)
* gimarshallingtests: Remove declarations of nonexistent functions
  :mr:`123` (:user:`Philip Chimento <ptomato>`)


1.58.3 - 2018-12-30
-------------------

* docwriter: Support python-markdown 3.x
  :issue:`250`
* scanner:  Define grefcount and gatomicrefcount as aliases to gint
  :issue:`254` (:user:`Tomasz Miąsko <tmiasko>`)
* scanner: make using bool without stdbool include work again
  :issue:`247`
* gir: Update glib annotations for glib 2.58.2


1.59.1 - 2018-12-16
-------------------

* Everything included in 1.58.2
* build: Drop Python 2 support, require Python 3.4+ :mr:`69`
* build: Add option to make .gir files installation paths configurable
  :mr:`63` (:user:`Kai Kang <kai.7.kang>`)
* build: Skip gobject/gvaluecollector.h when constructing GObject GIR
  :mr:`20` (:user:`Tomasz Miąsko <tmiasko>`)
* build: Port various tests to work with meson
  :mr:`92` :mr:`94` :mr:`95` (:user:`Tomasz Miąsko <tmiasko>`)
* regress: Add test for write-only property
  :mr:`67` (:user:`Philip Chimento <ptomato>`)
* regress: Implement interface and override properties
  :mr:`59` (:user:`Philip Chimento <ptomato>`)
* writer: Include documentation and symbol position in source files
  :mr:`75` (:user:`Thibault Saunier <thiblahute>`)
* giscanner: Print relative filename paths when warning
  :mr:`74` (:user:`Jonas Ådahl <jadahl>`)
* giscanner: Define grefcount and gatomicrefcount as aliases to gint
  :mr:`76` (:user:`Tomasz Miąsko <tmiasko>`)
* giscanner: Allow empty declarations. Fixes warnings with mingw headers.
  :issue:`216` :mr:`89` (:user:`Christoph Reiter <creiter>`)
* giscanner: Replace linked lists with arrays in source scanner
  :mr:`90` (:user:`Tomasz Miąsko <tmiasko>`)
* girepository: Various docs cleanups and fixes
  :mr:`96` :mr:`97` :issue:`66` (:user:`Tomasz Miąsko <tmiasko>`,
  :user:`Christoph Reiter <creiter>`, Jasper St. Pierre)
* girepository: Don't abort when calling g_base_info_get_name() on a GITypeInfo
  :issue:`96` :mr:`99` (:user:`Christoph Reiter <creiter>`)
* girepository: Add version macros and functions
  :issue:`200` :mr:`98` (:user:`Christoph Reiter <creiter>`)


1.58.2 - 2018-12-09
-------------------

* meson: Fix random build errors (mostly MSVC)
  :mr:`88` (:user:`Tomasz Miąsko <tmiasko>`)
* scanner: Fix parsing of __typeof__ that is part of a cast expression
  :mr:`78` (:user:`Tomasz Miąsko <tmiasko>`)
* scanner: Ignore __pragma keyword used by MSVC
  :mr:`87` (:user:`Tomasz Miąsko <tmiasko>`)


1.58.1 - 2018-11-17
-------------------

* meson: Install warnlib :mr:`62` (:user:`Jan Tojnar <jtojnar>`)
* scanner: Parse __typeof__ and discard it
  :mr:`71` (:user:`Jan Alexander Steffens <heftig>`)
* meson: add back /usr/bin/env to the python-cmd
  :issue:`237` :mr:`70` (:user:`Håvard Graff <hgr>`)
* Fix non libtool build
  :mr:`72` (:user:`Olivier Crête <ocrete>`)


1.58.0 - 2018-08-31
-------------------

::

    • Changes:
      - Update annotations imported from GLib, and require GLib 2.58
      - Ensure that G-I builds on macOS
      - Add a --version argument to the Python-based tools
      - Allow selecting the output format for g-ir-doc-tool
      - Drop the Visual Studio templates
      - Use Sphinx to generate the user documentation; gtk-doc is still
        required for the girepository-1.0 C API reference
      - Support all _Float* C types from ISO/IEC TS 18661-3:2015
      - The autotools build now uses autoconf-archive
      - g-ir-doc-tool: Add DevDocs formatting for GJS (--format=devdocs)
        This adds a dependency on the Python markdown package

    • Issues resolved on gitlab.gnome.org:
      - #139 - make check fails for gobject-introspection 1.44.0 on
               OS X 10.10.4
      - #184 - Default element-type not set for GByteArray object
               properties
      - #189 - c:type missing pointer/array information in GIR for
               C array parameters
      - #134 - Allow multiple output formats
      - #218 - gtk2 hits unreachable code after enable -Wswitch-default
      - #113 - Memory leaks in GI regress and marshalling tests property
               setters

    • Bugs resolved on bugzilla.gnome.org:
      - #702788 - The girepository DLL is acquiring pointers incorrectly
                  on Windows/x64

    • Contributors:
      Tomasz Miąsko, Emmanuele Bassi, Rico Tzschichholz, Chun-wei Fan,
      Philip Chimento, Tom Schoonjans, Christoph Reiter, Ray Donnelly,
      Marcus Calhoun-Lopez, Florian Müllner, Evan Welsh, Mathieu Duponchelle

1.56 - 2018-03-13
-----------------

::

    • Changes:
      - Add _Float128 to the base C types
      - Update annotations imported from GLib, and require GLib 2.56

    • Issues resolved on gitlab.gnome.org:
      - #173 - Fails to parse flag-constants
      - #175 - writer: Include documentation and symbol position in
               source files
      - #120 - adding subdir-objects to AM_INIT_AUTOMAKE
      - #190 - const qualifier dropped from c:type on (type filename)
               parameters
      - #188 - giscanner: don't print "suppressed N warnings" if --quiet
               was specified

    • Bugs resolved on bugzilla.gnome.org:
      - #764791 - gitypelib.c: increase #define MAX_NAME_LEN from 200 to 255
      - #756921 - g-ir-scanner does not recognize _Thread_local
      - #791991 - Broken shared-library value in gir files on *BSD when
                  builddir includes the name of the library
      - #791902 - Building using non-libtool (e.g., meson) on MinGW
      - #629667 - MY_ENUM_VALUE = <constant> only works for last member
      - #699354 - g-ir-compiler man page for --shared-library incorrectly
                  says "lib" and ".so" should be removed
      - #761985 - os.name can be wrong in some context
      - #699328 - GI_TYPELIB_PATH is undocumented

    • Contributors:
      Ting-Wei Lan, Leslie Giles, Rico Tzschichholz, Christoph Reiter,
      Nicola Fontana, Tomasz Miąsko, Emmanuele Bassi, Philip Chimento,
      Karl-Philipp Richter

.. note::

    For older releases, see the Git log
