2.56.2 (stable) 2026-06-25

Documentation:
* Remove obsolete FSF (Free Software Foundation) address
  (Kjell Ahlstedt)
* README.win32.md: Mention Visual Studio 2026
* Visual Studio builds: Update build information
  (Chun-wei Fan) Merge request !25

Meson build:
* Use the Python installation that Meson uses.
  See merge request glibmm!67
  (Kjell Ahlstedt)
* Meson and NMake builds: Distinguish Visual Studio 2026 builds
  from Visual Studio 2022 builds
* NMake Makefiles: Consolidate items and improve flexibility
* NMake Makefiles: Make build process more robust
  (Chun-wei Fan) Merge request !25
* NMake Makefiles: Update .m4 installation location
  (Chun-wei Fan) Merge request !28
* Don't require the 'dot' command to build the documentation
  (Kjell Ahlstedt)


2.56.1 (stable) 2025-01-15:

Identical to 2.56.0.
The 2.56.0 tarball has not been stored at download.gnome.org.
The CI pipeline in GitLab had not been updated when tag 2.56.0
was added to the git repository.


2.56.0 (stable) 2025-01-14:

* FontDescription: Add set/get_features().
* FontMap: Add add_font_file().
  (Kjell Ahlstedt)

Documentation:
* AttrList: Pango::UNDERLINE_LOW -> Pango::Underline::LOW.
* www.gtkmm.org -> gtkmm.gnome.org.
  (Kjell Ahlstedt)

Build:
* Require pango >= 1.56.0.
  (Kjell Ahlstedt)


2.54.0 (stable) 2024-07-25:

* Color: Add parse_with_alpha().
* Context: Add set/get_round_glyph_positions().
* Item: Add default constructor, get_char_offset().
* Layout: Add set/get_justify_last_line(), get_direction(),
  get_caret_pos().
* LayoutIter: Add operator bool(), get_run_baseline().
* LayoutLine: Add is_paragraph_start(), get_resolved_direction(),
  get_height().
* TabArray: Add TabArray(const Glib::ustring& text) constructor,
  operator bool(), set_positions_in_pixels(), to_string(),
  set/get_decimal_point(), sort().
  (Kjell Ahlstedt)

Documentation:
* Language::get_scripts(): Improve documentation.
* Don't link to removed parts of library.gnome.org.
  (Kjell Ahlstedt)

Build:
* Require pango >= 1.54.0.
* Meson build: Require meson >= 0.62.0.
  Use Meson's pkgconfig module instead of using
  the *.pc.in templates.
  (Kjell Ahlstedt)


2.52.0 (stable):

* FontFamily: Add property_item_type(), property_n_items(),
  property_name(), property_is_monospace(), property_is_variable().
* FontMap: Add reload_font(), property_item_type(),
  property_n_items().
  (Kjell Ahlstedt)

Build:
* Require pango >= 1.52.0.
  (Kjell Ahlstedt)


2.50.2 (stable):

* Fontset: Use callback functions with C linkage
  (Kjell Ahlstedt) Issue glibmm#1 (Murray Cumming)
* Coverage: Don't use deprecated pango_coverage_ref/unref()
  (Kjell Ahlstedt)

Documentation:
* Doxyfile.in: Don't hide undocumented classes
  (Kjell Ahlstedt)
* README.win32: Convert to MarkDown and rename to README.win32.md
  Make dependencies clearer
  (Chun-wei Fan)
* Remove AUTHORS, HACKING, README.SUN; add general info to README.md
  (Kjell Ahlstedt) Issue gtkmm#140

Meson build:
* Detect if we build from a git subtree
  (William Roy) Merge request gtkmm!72
* Don't copy files with configure_file()
  (Kjell Ahlstedt)
* Fix the evaluation of is_git_build on Windows
  (Kjell Ahlstedt) Issue gtkmm#131 (William Roy)
* Don't fail if warning_level=everything
  (Daniel Boles, Kjell Ahlstedt) Merge request gtkmm!87


2.50.1 (stable):

* Context::get_font_map(): Fix reference count
  (Kjell Ahlstedt)

Build:
* Meson build: Specify 'check' option in run_command()
  Will be necessary with future versions of Meson.
  Require Meson >= 0.55.0
* Meson build: Check if Perl is required for building documentation
* Meson build: Avoid unnecessary configuration warnings
  (Kjell Ahlstedt)
* Meson build: Re-organize warning-related compiler flags for MSVC
  (Chun-wei Fan)


2.50.0 (stable):

* AttrList: Add get_attributes(), update(), equal()
  (Kjell Ahlstedt) Issue #12 (misos1)
* Make CairoFontMap::set_resolution() usable
  by adding the CairoFontMapImpl class
  (Kjell Ahlstedt) Issue #15 (Ievgenii Meshcheriakov)
* Add FontMap::get_family()
  (Kjell Ahlstedt)
* AttrList: Add to_string() and from_string()
  Attribute: Add TextTransform, BaselineShift and FontScle enums
  and some create_attr_*() methods
  (Kjell Ahlstedt)

Build:
* Don't include individual pango headers
  (Matthias Clasen, Kjell Ahlstedt) Merge request !22
* Support Visual Studio 2022 builds
  (Chun-wei Fan)
* Require pango >= 1.49.4
  (Kjell Ahlstedt)


2.49.1 (unstable)

* Layout, LayoutIter: Add get_const_line() and get_const_lines()
  (Kjell Ahlstedt) Issue #10 (misos1)
* GlyphItem: Make most methods public
  (Kjell Ahlstedt) Issue #11 (Josh Bialkowski)


2.48.1 (stable):

* GlyphItem: Fix a memory leak in split()
  (Kjell Ahlstedt)
* Layout: Speed up get_log_attrs()
  (Kjell Ahlstedt)

Build:
* Meson build: Use relative paths to untracked/
  (Kjell Ahlstedt) Merge request gtkmm!61 (Mingli Yu)
* pangommconfig.h.*: Don't dllimport on MinGW
  (Chun-wei Fan) Issue gtkmm#90 (Lukas K.)
* Meson build: Make it possible to use pangomm as a subproject
  (Kjell Ahlstedt)
* Meson build: No implicit_include_directories
  (Kjell Ahlstedt)


2.48.0 (stable):
This is the first stable release in the pangomm-2.48 ABI series.
It is parallel-installable with the pangomm-1.4 ABI.

The tarball for 2.48.0 has been created with 'meson dist'.
If you build with Autotools from the tarball, please read the relevant
part of the README file.

* FontFamily, FontMap: Implement the Gio::ListModel interface
  CairoFontMap: Add get_default()
  (Andreas Persson) Merge request !20
* Attribute: Add Overline and ShowFlags enums and some create*() methods
  Renderer: Add vfuncs
  (Kjell Ahlstedt) Issue #9 (misos1)
* Font, FontFace, FontFamily, FontMetrics: Add new methods
  (Kjell Ahlstedt)
* LayoutRun: Rename to GlyphItem
  (Kjell Ahlstedt)
* LayoutIter: Fix get_run() and get_line()
  (Kjell Ahlstedt)
* GlyphString, Item: Wrap pango_shape_with_flags()
  (Kjell Ahlstedt) Issue #9 (Tavmjong Bah)
* Layout: Add set/get_line_spacing()
  (Kjell Ahlstedt) Issue #9 (misos1)

Build:
* Depend on giomm (not just glibmm)
  (Andreas Persson) Merge request !20
* Use __declspec(dllexport) when building with Visual Studio
  (Chun-wei Fan) Merge request !15, !16
* Meson build: Avoid some recompilations
  (Kjell Ahlstedt)
* Meson build: Better error message if trying to build with
  maintainer-mode=false when true is necessary
  (Kjell Ahlstedt) Issue #6 (Rasmus Thomsen)
* Meson build: Set default value of the 'warnings' option to 'min'
  (Kjell Ahlstedt)
* Improve NMake support
  (Chun-wei Fan)
* Improve Visual Studio support
  (Chun-wei Fan) Merge request !15, !19
* docs/reference/: Update for Doxygen >= 1.8.16
  (Kjell Ahlstedt)
* Meson build: Fix versioning on macOS
  (Kjell Ahlstedt) Pull request libsigcplusplus#65 (Tom Schoonjans)
* Change the ABI to pangomm-2.48
  (Kjell Ahlstedt)


2.43.2 (unstable):
Distro packagers should probably not package this yet.

* Coverage: Remove max(), to_bytes() and one create()
  (Kjell Ahlstedt)
* Layout::get_lines(): Fix ownership of the GSList
  (Kjell Ahlstedt)
* Remove deprecated API
  - AttrList: non-const operator bool()
  - CairoFontMap: create_context()
  - Color: non-const operator bool()
  - Layout: get_iter(LayoutIter& iter)
  - LayoutIter: assign_gobj()
  (Kjell Ahlstedt)
* pango/src/color.hg: Fix call to _CLASS_BOXEDTYPE_STATIC
  (Chun-wei Fan) Merge request !9

Build:
* Use glibmm-2.66 instead of glibmm-2.60
  (Kjell Ahlstedt)
* tools/gen_scripts: Update for non-source-dir builds
  (Kjell Ahlstedt)
* Add support for building pangomm with Meson
  (Chun-wei Fan, Kjell Ahlstedt) Merge request !4, !5, !6
* meson.build: Check if .git is a directory or file
  (Ting-Wei Lan) Merge request !8
* NMake Makefiles: Allow builds from a GIT checkout
  (Chun-wei Fan)
* Visual Studio: Drop gendef.exe, use __declspec(dllexport)
  (Chun-wei Fan) Merge request !13
* The fixed call to _CLASS_BOXEDTYPE_STATIC in color.hg
  is necessary in order to use glibmm 2.65.1 or later,
  combined with maintainer-mode in pangomm.


2.43.1 (unstable):
Distro packagers should probably not package this yet.

* Attribute: Add several create_attr_*() methods
  (Kjell Ahlstedt) Bug #781059 = Issue #2 (Tony Houghton)
* FontDescription: Add set/get_variations()
  (Kjell Ahlstedt)

Build:
* Require C++17.
  (Murray Cumming)
* Replace the Visual Studio project files with MSVC NMake project files
  (Chun-wei Fan) Merge request !1
* Use glibmm-2.60 instead of glibmm-2.56
  (Kjell Ahlstedt)
* Requires pango >= 1.41.0
  because of FontDescription::set/get_variations()
  (Kjell Ahlstedt)
* Change the ABI to pangomm-2.44
  (Kjell Ahlstedt)

2.41.5 (unstable):
Distro packagers should probably not package this yet.

* Only build changes.
  (Kjell Ahlstedt)

2.41.4 (unstable):
Distro packagers should probably not package this yet.

* Build: Use glibmm-2.56 instead of glibmm-2.54.
  We have changed the ABI name in glibmm.
  (Murray Cumming)
* Build: Fontset: Remove GLIBMM_EXCEPTIONS_ENABLED
  (Kjell Ahlstedt)
* AttrString: Let _MEMBER_GET convert from const char*.
  (Kjell Ahlstedt)  Bug #783360
* Weight enum: Make this implicitly convertible to int.
  (Kjell Ahlstedt) Bug #86864

2.41.3 (unstable):

* Use C++11 enum classes instead of old-style enums, and put many enums
  inside relevant class declarations:
  - Coverage: Change CoverageLevel to Coverage::Level.
  - Renderer: Change RendererPart to Renderer::Part.
  (Kjell Ahlstedt, Murray Cumming)
* Build: Windows: Visual Studio builds: Update glibmm ABI version.


2.41.2 (unstable):

* Build: Use glibmm-2.54 instead of glibmm-2.52.
  (Murray Cumming)
* Visual Studio: Require Visual Studio 2017.
  (Chun-wei Fan)

* Replace uses of Glib::ArrayHandle<>, Glib::ListHandle, and Glib::SListHandle
  in the API with std::vector.
  (Murray Cumming)


2.41.1 (unstable):

This is the first release of the pangomm-2.42 API/ABI.
It installs in parallel with the pangomm-1.4 API/ABI, of which
the most recent version is pangomm 2.40.1.

* Require C++14.
  (Murray Cumming)
* Use glibmm-2.52 instead of glibmm-2.4.
  (Murray Cumming)
* Use cairomm-1.16 instad of cairomm-1.0
  (Murray Cumming)


2.40.1 (stable):

* C++11: Make all operator bool()s explicit.
  (Murray Cumming)
* Build: Fix silent builds.
  (Kjell Ahlstedt) Bug #768797

2.40.0 (stable):

* No major changes compared to 2.39.1.

2.39.1 (unstable):

* Renderer: Added get/set_alpha().
  (Murray Cumming)
* Attribute: Added create_attr_background_alpha() and
  create_attr_foreground_alpha().
  (Murray Cumming)
* Reduce the cairomm dependency back to 1.2.2.
  (Murray Cumming) Bug #755460 (Daniel Stone)

2.38.1 (stable):

* Regenerate with the latest glibmm.

2.38.0 (stable):

* MSVC build fixes.
  (Chun-wei Fan)

2.37.2 (unstable):

* Rebuilt with latest glibmm,
  whose gmmproc generates C++ move operations.
  (Murray Cumming)
* C++11: Mark all _CLASS_OPAQUE_REFCOUNTED classes as final.
  (Murray Cumming)

2.37.1 (unstable):

* Use (and require) C++11.
* Attribute: fix operator!=.
  (Maks Naumov) Bug #751531

2.36.0 (stable):

No changes compared to 2.35.1.

2.35.1 (unstable):

* Context: Add get_serial().
  (Murray Cumming)
* FontMap: Add get_serial().
  (Murray Cumming)
* Layout: Add get_character_count() and get_serial().
  (Murray Cumming)
* Documentatoin: Update appearance to match recent glibmm and gtkmm.
* Win32 MSVC 2008/2010 Build: Many updates and corrections.
  (Chun-wei Fan)

2.34.0 (stable):

* Remove the use of g_type_init() because it has been deprecated.
  (José Alburquerque)
	
2.28.4 (stable):

* Add #includes needed with the latest glibmm.
  (Murray Cumming)
  
2.28.3 (stable):

Build
* Ship convert_pangomm.m4 in tarballs.
	(Frederic Peters) Bug #657817
* Don't use obsolete macros.
  (Krzesimir Nowak)

2.28.2 (stable):

* Install the m4 files even without --enable-maintainer-mode, as with
  other modules.
  (Kalev Lember) Bug #645669

2.28.1 (stable):

* Avoid a tarball dependency on mm-common.
  (Murray Cumming)

2.28.0 (stable):

Just a version increase and a regenerated tarball due to changes in an m4
macro in mm-common.

2.27.1 (unstable):

* LayoutIter: This now has a copy constructor.
* Layout::get_iter(): There is now a version of this method that returns a
  LayoutIter. The version with the output parameter is now deprecated.

2.26.2 (stable):

* Documentation: Added main page text at index.html.
  (David King, Murray Cumming)

2.26.1 (stable):

* Minor documentation improvements.
  (Murray Cumming, José Alburquerque)

2.26.0 (stable):

* Minor documentation build fixes. (Daniel Elstner)

2.25.1.3 (unstable):

* Change public documentation location to library.gnome.org in
  the pkg-config files as well.  (Daniel Elstner)

2.25.1.2 (unstable):

* Change public documentation location to library.gnome.org.
  (Daniel Elstner)

2.25.1.1 (unstable):

* Reenable the per-class hierarchy graphs in the reference documentation.
  (Daniel Elstner)
* Drop the custom HTML header and footer, and use the shared doxygen.css
  file from mm-common. (Daniel Elstner)

2.25.1 (unstable):

* Reworked the build system, using mm-common.
  (Daniel Elstner)

2.24.0 (stable):

(Skipped version numbers since 2.14.1, to match pango 1.24
(apart from the first digit, which we can't decrease.)

* Layout: Added show_in_cairo_context().
  (Louis-Francis Ratté-Boulianne) Bug #560232.
* Build: Allow pangomm to build outside the source tree. Bug #570322
  (Theppitak Karoonboonyanan)
* License Header consistency. (Deng Xiyue)

2.14.1 (stable):

* Windows build: Use the new DLL naming convention, like boost.
  (Armin Burgmeier)
* Documentation:
  - Corrected the index page for DevHelp.
    (Deng Xiyue) Bug #559896

2.14.0 (stable):

* Language: Added get_scripts().
  (Murray Cumming)
* README and COPYING fixes.
  (Deng Xiyue)
* Fixed the Windows build with Visual Studio Express.
  (Armin Burgmeier)

2.13.8 (unstable):

* Context: Added set_font_map() because the C function is now
  public (non backend-only) API.
* LayoutRun/GlyphItem: Added split() and letter().
* Renderer: Added draw_glyph_item().
* CairoFontMap:: Added set_default().
  (Murray Cumming)
* Build: Updated the MS Visual Studio 2005 build.
  (Armin Burgmeier)

2.13.7 (unstable):

* Build: Require a correct version of pango.
  (Sebastian Bacher)
* Documentation: Correct some mentions of pangomm-2.4 to pangomm-1.4.
  (Deng Xiyue)

2.13.6 (unstable):

* Layout: Added get_height(), set_height(), get_baseline().
* LayoutIter: Added get_layout().
* Renderer: Added get_layout() and get_layout_line().
  (Murray Cumming)

2.13.5 (unstable):

This is a first version of pangomm in its own tarball.
The API and ABI are not changed.
