2026-06-25  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  2.56.2

2026-03-28  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Small fixes to adapt to defs files generated by mmgir

  * pango/src/pango.defs: Read pango_vfuncs.defs before pango_signals.defs.
  Some define-vfunc sections in pango_vfuncs.defs, when generated by mmgir,
  can contain information that shall be overridden by like-named define-signal
  sections in pango_signals.defs.
  * pango/src/renderer.hg: Add _EQUAL(PangoLayoutRun*,PangoGlyphItem*).

2026-03-28  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Add tools/gen_scripts/generate_from_gir.sh

  * tools/gen_scripts/generate_from_gir.sh: New script. Generates all defs
  files from GIR files.
  * tools/gen_scripts/init_generate.sh: Define $GMMPROC_GEN_INSTALL_DIR
  and $gen_with_mmgir, used by generate_from_gir.sh.

2026-01-21  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Meson build: Don't require the 'dot' command

  Make it possible to build documentation without the dot command.
  Set the HAVE_DOT option in Doxyfile during configuration.
  In Autotools builds it's still unconditionally YES.
  The inheritance diagrams don't look as nice without the dot
  command from the GraphViz package.

2026-01-14  Chun-wei Fan  <fanc999@yahoo.com.tw>

  NMake Makefiles: Update .m4 installation location

  Copy the .m4 files to $(PREFIX)\lib\pangomm-2.48\proc\m4, as done everywhere
  else.

2026-01-08  Chun-wei Fan  <fanc999@yahoo.com.tw>

  NMake Makefiles: Make build process more robust

  In order to generate the object/executable lists for our build, we generate a
  temporary makefile snippet and include it immediately to carry out the build,
  but this poses an issue when a different toolchain carry out the build using
  NMake when a build is ongoing.
  
  This makes the snippet use the toolset version, config and target arch for the
  build which should greatly improve the situation without adding much complexity

2026-01-08  Chun-wei Fan  <fanc999@yahoo.com.tw>

  Visual Studio: Update build information

  Update the build documentation in README.win32.md and MSVC_NMake/info-msvc.mak
  to reflect the recent updates to the NMake Makefiles.

2026-01-07  Chun-wei Fan  <fanc999@yahoo.com.tw>

  NMake Makefiles: Consolidate items and improve flexibility

  This attempts to clean up the NMake Makefiles by consolidating the items that
  are repetitive, and make finding dependencies more flexible, by allowing one
  to specify <dep>_INCLUDEDIR and <dep>_LIBDIR for each dependency, along with a
  BASE_INCLUDEDIR and BASE_LIBDIR for those who wish to encompass dependencies
  grouped in a single directory hierarchy and specify the <dep>_[INCLUDE|LIB]DIR
  as needed.
  
  Also make GMMPROC_DIR default to $(GLIBMM_LIBDIR)\glibmm-x.y\proc, and try to
  deduce the full path the m4.exe, so that we can include that path at run time
  so that one may not need to make m4.exe in their %PATH%.
  
  For builds from GIT checkouts, ensure that pangommconfig.h and pangomm.rc are
  indeed generated.
  
  Also standardize on using the /GL and /LTCG compiler and linker flags for
  better optimization.

2026-01-05  Chun-wei Fan  <fanc999@yahoo.com.tw>

  README.win32.md: Mention Visual Studio 2026

2026-01-05  Chun-wei Fan  <fanc999@yahoo.com.tw>

  NMake Makefiles: Make Visual Studio 2026 builds distinct

  ...from Visual Studio 2022 builds, by appending the appropriate toolset version
  for the built DLLs and .libs's.
  
  Also drop some cruft as Visual Studio 2017 or later is really required

2026-01-05  Chun-wei Fan  <fanc999@yahoo.com.tw>

  meson.build: Make Visual Studio 2026 builds distinct

  ...from Visual Studio 2022 builds, by applying the applicable toolset version

2025-09-21  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Meson build: Use SPDX expression for license

  This is the recommended format.
  See https://gitlab.freedesktop.org/cairo/cairomm/-/merge_requests/33

2025-09-21  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Meson build: Use the Python installation that Meson uses

  See glibmm!67

2025-07-03  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Update the pango_docs_override.xml file with enum documentation

  * pango/src/pango_docs_override.xml: Add enum documentation that
  glibmm/tools/defs_gen/docextract_to_xml.py has not been able to extract.

2025-04-13  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Remove obsolete FSF (Free Software Foundation) address

2025-04-13  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Remove ChangeLog.pre-2-34-0

2025-02-15  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Meson build: Add install_tag keyword argument

2025-02-06  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  CI: Publish the generated pangomm-2.48.tag file

  and use libsigc++'s, glibmm's and cairomm's published tag files.
  The *-doc modules don't install the tag files.

2025-01-16  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  CI: Make a distribution tarball conditionally

  When a tag is created and when manually triggered.

2025-01-15  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  2.56.1

2025-01-15  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  CI: Update for the new release-service component

  https://discourse.gnome.org/t/gnome-release-service-ftpadmin-replacement-coming-11th-december/25487

2025-01-14  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  2.56.0

2025-01-14  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Add new API from pango 1.56.0

  * configure.ac:
  * meson.build: Require pangocairo >= 1.56.0
  * pango/src/fontdescription.hg: Add set/get_features().
  * pango/src/fontmap.hg: Add add_font_file().

2025-01-14  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Regenerate docs.xml and .defs files, using files from pango 1.56.0

2024-12-17  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Replace gtkmm.org by gtkmm.gnome.org

2024-12-17  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  AttrList: Update the documentation

  Pango::UNDERLINE_LOW -> Pango::Underline::LOW.
  Use _WRAP_METHOD() on insert(), insert_before() and change().

2024-12-17  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  docs/reference/Doxyfile.in: Remove unsupported entries

2024-07-25  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  2.54.0

2024-07-25  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  CI: Don't build pango examples or tests

2024-07-25  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Add new API from pango 1.54.0

  Most of this new API was added to pango earlier than 1.54.0.
  
  * configure.ac:
  * meson.build: Require pangocairo >= 1.54.0
  * pango/src/attriter.hg: Add a TODO comment.
  * pango/src/color.[ccg|hg]: Add parse_with_alpha().
  * pango/src/context.hg: Add set/get_round_glyph_positions().
  * pango/src/item.[ccg|hg]: Add default constructor, get_char_offset().
  Simplify the Item(PangoItem* castitem, bool make_a_copy) constructor.
  * pango/src/layout.hg: Add set/get_justify_last_line(), get_direction(),
  get_caret_pos().
  * pango/src/layoutiter.[ccg|hg]: Add operator bool(), get_run_baseline().
  * pango/src/layoutline.[ccg|hg]: Add is_paragraph_start(),
  get_resolved_direction(), get_height().
  * pango/src/tabarray.[ccg|hg]: Add TabArray(const Glib::ustring& text) ctor,
  operator bool(), set_positions_in_pixels(), to_string(),
  set/get_decimal_point(), sort().

2024-07-25  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Regenerate docs.xml and .defs files, using files from pango 1.54.0

2024-07-20  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Meson build: Use Meson's pkgconfig module

  instead of using the *.pc.in templates.
  
  Require meson >= 0.62. Remove the can_add_dist_script variable.
  It's unnecessary when the meson version >= 0.58.
  
  Simplify the calls to dependency().get_variable().
  Possible when meson version >= 0.51.

2024-07-03  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  CI: meson install -> meson install --quiet

2024-07-03  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Don't link to library.gnome.org

  Require python3 >= 3.7. That's what Meson requires.

2024-07-03  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  docs/reference/Doxyfile.in: Remove obsolete entries

2024-04-25  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Language::get_scripts(): Improve the documentation

  * pango/src/language.ccg: 0 -> nullptr
  * pango/src/language.hg: Improve the documentation of get_scripts().

2024-03-15  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  2.52.0

2024-03-15  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  CI: Don't use warning_level and werror in meson setup

  They are applied also to subprojects.

2024-03-15  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Add new API from pango 1.52.0

  * configure.ac:
  * meson.build: Require pangocairo >= 1.52.0
  * pango/src/fontfamily.hg: Add property_item_type(), property_n_items(),
  property_name(), property_is_monospace(), property_is_variable().
  * pango/src/fontmap.hg: Add reload_font(), property_item_type(),
  property_n_items().

2024-03-15  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Regenerate docs.xml and .defs files

  using files from pango 1.52.0. Add pango_signals.defs.

2024-01-27  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  2.50.2

2024-01-15  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  meson.build: Update htmlrefpub

2023-12-11  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  meson.build: Don't fail if warning_level=everything

2023-07-11  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Remove AUTHORS, HACKING, README.SUN; add info to README.md

  See gtkmm#140

2023-07-11  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Update pangomm.doap

2023-06-27  Chun-wei Fan  <fanchunwei@src.gnome.org>

  README.win32.md: Make dependencies clearer

  Make it clear that glibmm-2.68 and cairomm-1.16 refer to the C++17 branches of
  glibmm and cairomm, which are the glibmm-2.68.x and cairo-1.16.x or later
  branches/releases, including the master/main branch.

2023-06-27  Chun-wei Fan  <fanchunwei@src.gnome.org>

  README.win32: Convert to MarkDown

  Convert to MarkDown format so that the formatting is easier on the eye, and
  switch to UNIX line endings.
  
  Also update the info in there so that the actual build situation is better
  refleted, especially in regards to Visual Studio builds.  Re-organize items
  for the Meson builds to be under their respective headers for MinGW and Visual
  Studio.

2023-05-04  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Coverage: Don't use deprecated pango_coverage_ref/unref()

  They are deprecated since pango 1.52.0. It has been possible
  to use g_object_ref/unref() since pango 1.44.0.

2023-05-04  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Doxyfile.in: Remove obsolete entries

2023-05-04  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  pangomm.pc.in: Update htmlrefpub

2023-03-25  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  fontset.ccg: Use callback function with C linkage

  Code that mixes up C linkage and C++ linkage has undefined behavior.
  Most compilers make no difference between C and C++ linkage, so it
  has not been an issue so far. But see issue glibmm#1.

2023-03-25  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  meson.build: Simplify if-file-exists test

2023-03-25  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  README.md, CI: meson -> meson setup

2023-03-25  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Doxyfile.in: Don't hide undocumented classes

  Might make the inheritance diagrams less incomplete when Doxygen's
  tag files are not perfect.

2023-01-04  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  CI: Install all dependencies with apt

  Ubuntu 22.10 contains libsigc++-3.0-dev, libglibmm-2.68-dev
  and libcairomm-1.16-dev.

2023-01-04  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  meson.build: Simplify lookup of python command

  See libsigcplusplus PR#83

2023-01-04  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  meson.build: Fix the evaluation of is_git_build on Windows

  See gtkmm#131

2023-01-04  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Meson build: Don't copy files with configure_file()

  It's deprecated from Meson 0.64. The replacement, fs.copyfile(),
  is not useful here. It only copies from the source directory to
  the build directory.

2022-09-27  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  meson.build: Detect if we build from a git subtree

  See gtkmm!72 (William Roy)

2022-09-21  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  2.50.1

2022-09-12  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Convert README to README.md

2022-05-24  Chun-wei Fan  <fanchunwei@src.gnome.org>

  meson/MSVC: Re-organize warning-related compiler flags

  Add a short description for each of the warning-related compiler flags that we
  apply globally.
  
  Also, apply '/wd4267' only when we are building a 64-bit build, as that warning
  should only be related to 64-bit builds.

2022-05-20  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  meson.build: Avoid configuration warnings

2022-03-18  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  CI: Use artifacts to transfer data between stages, part 2

2022-03-16  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  CI: Build documentation of dependencies

  Build documentation of libsigc++, glibmm, cairomm, or else pangomm's
  inheritance diagrams will be incomplete due to missing tag files.

2022-03-16  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  CI: Use artifacts to transfer data between stages

2022-02-27  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  CI: Don't build everything with warnings=fatal

  Build only pangomm with warnings=fatal.
  Select latest released version of libsigc++3.

2022-02-27  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  meson.build: Check if Perl is required for building documentation

  New versions of mm-common use the Python scripts doc_postprocess.py
  and doc_install.py instead of the Perl scripts doc-postprocess.pl and
  doc-install.pl when documentation is built.

2022-02-22  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Context::get_font_map(): Fix reference count

  pango_context_get_font_map() returns "(transfer none)".
  See https://mail.gnome.org/archives/gtkmm-list/2022-February/msg00031.html

2022-02-15  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  meson.build: Specify 'check' option in run_command()

  The default value will be changed in future Meson releases.
  
  Don't use deprecated python3.path().
  Let import('python').find_installation() always find the python
  installation used to run Meson.

2022-01-04  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  CI: Reinsert 'meson test'

  now with (hopefully) correct YAML syntax.

2022-01-04  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  CI: Skip 'meson test'

2022-01-04  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  CI: Don't build documentation of dependencies

2021-12-06  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  2.50.0

2021-12-06  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  CI: Comment out 'meson test'

  If the package manager does not find a new enough version of pango,
  pango is built as a subproject, and 'meson test' tests both pango and
  pangomm. If a pango test fails, the whole CI fails.
  There are no tests in pangomm, anyway.

2021-12-06  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Attribute: Add some create_attr_*() methods

  and add TextTransform, BaselineShift and FontScale enums.

2021-12-06  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  AttrList: Add to_string() and from_string()

  and require pango >= 1.49.4.

2021-12-06  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Regenerate docs.xml and .defs files, using files from pango 1.50.0

  and update pango_docs_override.xml.

2021-11-10  Chun-wei Fan  <fanchunwei@src.gnome.org>

  build: Support Visual Studio 2022 builds

  Make these builds distinct from the Visual Studio 2019 builds.

2021-10-11  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Add FontMap::get_family()

2021-10-11  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Add the CairoFontMapImpl class

  * pango/pangomm/.gitignore:
  * pango/pangomm/filelist.am:
  * pango/pangomm/meson.build: Add cairofontmapimpl.
  * pango/src/cairofontmap.hg: Improve the documentation of get_default().
  * pango/src/fontmap.[ccg|hg]: Add a custom wrap_new(). Wrap in a
  CairoFontMapImpl if the PangoFontMap object implements PangoCairoFontMap.
  * pango/pangomm/cairofontmapimpl.[cc|h]: New files. A CairoFontMapImpl
  derives from FontMap and implements CairoFontMap.
  
  Fixes #15

2021-09-12  Pavlo Solntsev  <p.sun.fun@gmail.com>

  CI: Switching to debian:testing

2021-09-06  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  AttrList: Add get_attributes(), update(), equal()

  Fixes #12

2021-09-06  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  docs/reference/Doxyfile.in: Remove obsolete entry

2021-08-25  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  CI: Add .gitlab-ci.yml

2021-08-25  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Don't include individual pango headers, part 2

2021-08-24  Matthias Clasen  <mclasen@redhat.com>

  Don't include individual pango headers

  As in every gnome library, you are only supposed
  to include the main pango.h header from the outside.
  
  This was causing build failures after some recent
  pango header rearrangements.

2021-07-16  Matthias Clasen  <mclasen@redhat.com>

  Use pango from the main branch

  Change the Pango subproject to use the main branch.
  
  This depends on
  https://gitlab.gnome.org/GNOME/pango/-/merge_requests/379

2021-05-21  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  2.49.1

2021-05-18  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Add dependencies to Doxygen tag files in subprojects

  Doxygen in a main project shall not be called before tag files have been
  created or updated in subprojects.

2021-05-14  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Fix build as subproject without building documentation

  * meson.build: If mm-common-get is not found in maintainer-mode
  with 'required: false', try with 'required: true'.
  Don't try to use tag_file, if documentation is not built.
  * docs/reference/meson.build: Don't use variables from modules
  that don't define doxytagfile. These are subprojects that don't build
  their documentation.

2021-05-11  Chun-wei Fan  <fanchunwei@src.gnome.org>

  Visual Studio builds: Clean up build files

  glibmm will be updated to be clear of classes that export items making the
  built binaries dependent on the exact compiler version and the STL version,
  which will eliminate the need to ignore warnings C4251, C4273 and C4275.
  
  We will also use the /EHsc compiler flag so that we can also drop the
  ignore on warning C4530.

2021-05-05  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Subprojects can use meson.add_dist_script() if meson.version() >= 0.58.0

  Call add_dist_script() in a subproject, if meson.version() >= 0.58.0.

2021-04-08  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Meson build: No implicit_include_directories

2021-03-26  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Meson build: No implicit_include_directories

  It shall not be possible to find a pangomm header file
  with #include <xxx.h> instead of #include <pangomm/xxx.h>.
  Not fully fixed until https://github.com/mesonbuild/meson/issues/8562
  has been fixed.

2021-03-16  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Meson build: Make it possible to use pangomm as a subproject

  pango, cairomm and glibmm can be subprojects of pangomm.

2021-03-09  Chun-wei Fan  <fanchunwei@src.gnome.org>

  pangommconfig.h.*: Don't dllimport on MinGW

  This will fix warnings when building items using pangomm with MinGW/GCC.
  
  Please see: https://gitlab.gnome.org/GNOME/gtkmm/-/issues/90

2021-02-25  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Meson build: Use relative paths to untracked/

  The paths to the source code in untracked/ shall be relative to the
  meson.build file, when library files are built from a tarball.
  With absolute paths Meson may generate too long file names.
  See merge request gtkmm!61

2021-01-18  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  GlyphItem: Make most methods public

  They became private by mistake 12 years ago in
  commit d5781fecebf7eeb5bafbfb875027f6f1707a2bf1.
  
  Fixes #11

2021-01-18  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Layout, LayoutIter: Add get_const_line() and get_const_lines()

  * pango/src/layout.hg: Add get_const_line() and get_const_lines().
  * pango/src/layoutiter.hg: Add get_const_line().
  
  Fixes #10

2021-01-17  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Layout: Speed up get_log_attrs()

  Call pango_layout_get_log_attrs_readonly() instead of
  pango_layout_get_log_attrs(). The PangoLogAttr structs
  will then be copied once instead of twice.

2021-01-16  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  GlyphItem: Fix a memory leak in split()

2021-01-16  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  docs/reference/Doxyfile.in: Remove obsolete entries

2020-12-19  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  2.48.0

2020-12-18  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Regenerate docs.xml and .defs files

2020-12-11  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Change ABI to pangomm-2.48; Use glibmm-2.68 instead of glibmm-2.66

  So we can use the 2.44-2.46 version numbers for stable releases in
  the pangomm-1.4 ABI series.
  
  We've done similar ABI name changes before.

2020-11-27  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Add Layout::set/get_line_spacing()

  See #9

2020-11-27  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  configure.ac, meson.build: Require pangocairo >= 1.45.1

  Overline support, such as pango_attr_overline_new(), was added in
  pango 1.45.1. The requirement should have been bumped when those
  functions were wrapped.

2020-11-16  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Wrap pango_shape_with_flags()

  * configure.ac:
  * meson.build: Require pangocairo >= 1.44.3
  * pango/src/glyphstring.[ccg|hg]: Add constructor
  GlyphString(const Glib::ustring& item_text,
  const Glib::ustring& paragraph_text, const Analysis& analysis,
  ShapeFlags flags = ShapeFlags::NONE).
  * pango/src/item.[ccg|hg]: Add enum ShapeFlags and
  shape(const Glib::ustring& item_text, const Glib::ustring& paragraph_text,
  ShapeFlags flags = ShapeFlags::NONE).
  * tools/m4/convert_pango.m4: Add conversions for ShapeFlags.
  
  See #9

2020-10-07  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Bump version to 2.43.3

  Even micro version in released versions, odd micro version in Git.
  See https://wiki.gnome.org/MaintainersCorner/Releasing
  (which says minor version in one sentence where it should
  say micro version)

2020-10-01  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Meson build: Fix versioning on macOS

  See libsigcplusplus, pull request 65

2020-07-23  Chun-wei Fan  <fanchunwei@src.gnome.org>

  NMake Makefiles: Use Meson-style DLL and .lib naming if requested

  To make things more consistent and less prone to confusion, if 'USE_MESON_LIBS'
  is specified in the NMake command line, build the DLLs and .lib's that are
  named like the Meson counterparts.  Binaries built with Meson+Visual Studio
  and the ones that are built via NMake using 'USE_MESON_LIBS' are
  interchangeable, provided that they are built with the same Visual Studio
  version.

2020-07-23  Chun-wei Fan  <fanchunwei@src.gnome.org>

  NMake Makefiles: Fix generating pangomm[config.h|.rc]

  The previous additions to generate those files accidentally made the build
  attempt to generate them, even if done from a release tarball that is done by
  the autotools builds.
  
  This will fix this situation, and improve the situation that if pangomm.rc or
  pangommconfig.h needs to be generated, these files will be generated
  automatically

2020-07-22  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  LayoutIter: Fix get_run() and get_line()

  get_run() shall call pango_layout_iter_get_run_readonly() and
  take a copy of the returned PangoLayoutRun.
  Make proper const and non-const versions of get_line().

2020-07-22  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  LayoutRun: Rename to GlyphItem

  PangoLayoutRun was renamed to PangoGlyphItem in the year 2002.
  For backward compatibility PangoLayoutRun is a typedef of PangoGlyphItem.
  No such backward compatibility is needed in this version of pangomm.

2020-07-22  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Renderer: Add vfuncs

  See #9

2020-07-22  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Font, FontFace, FontFamily, FontMetrics: Add new methods

2020-07-22  Chun-wei Fan  <fanchunwei@src.gnome.org>

  NMake Makefiles: Link with giomm

  ...since we are now using items from giomm since commit 17021092, and ensure
  that we do indeed refer to the glibmm (giomm) master headers
  as we are using items from

2020-07-20  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Attribute: Add Overline and ShowFlags enums and some create*() methods

  Fixes #9

2020-07-20  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Regenerate docs.xml and .defs files

2020-07-19  Andreas Persson  <andreasp56@outlook.com>

  Let FontMap and FontFamily implement ListModel

  Let the FontMap and FontFamily classes implement the Gio::ListModel
  interface, just as the C level pango classes do. For this, a dependency
  to giomm was added. Wrap CairoFontMap::get_default().

2020-07-08  Chun-wei Fan  <fanchunwei@src.gnome.org>

  NMake Makefiles: Fix headers search

  We ought to look in $(PREFIX)\include\harfbuzz and $(PREFIX)\include, as the
  HarfBuzz and Cairo headers can be found in these respective locations.

2020-07-08  Chun-wei Fan  <fanchunwei@src.gnome.org>

  NMake Makefiles: Support ARM64 Windows builds

  This will make the NMake Makefiles capable of building ARM64 binaries of
  pangomm, which can be used on Windows 10 on ARM systems.

2020-06-30  Chun-wei Fan  <fanchunwei@src.gnome.org>

  README.win32: Update Meson build info

  It is now possible to build Pango directly from a GIT checkout on Visual Studio
  builds for a while, so let people know about this.
  
  Also note that glibmm and cairomm should be built with Meson in order to use the
  Meson build files for pangomm, and that it is recommended to use the same compiler
  to build pangomm, glibmm and cairomm.

2020-06-30  Chun-wei Fan  <fanchunwei@src.gnome.org>

  NMake Makefiles: Use the /utf-8 compiler flag

  This makes it easier to build pangomm on non-Western locales, without requiring
  to change the "Locale settings for non-Unicode programs" to English, which will
  require a restart, since warning (error) C4819 can be otherwise triggered, which
  can indicate broken builds due to Unicode handling issues in the compiler.

2020-06-30  Chun-wei Fan  <fanchunwei@src.gnome.org>

  NMake Makefiles: Apply toolset version for Meson-built deps

  As the Meson build files for Visual Studio apply the toolset version in the
  .lib filenames by default, apply the toolset version in the Meson-built -mm
  .lib files that we link in, just as we did when we we link in the -mm .lib
  files that was built with NMake, by default.
  
  The option 'USE_COMPAT_LIBS' will also mean that we will use the former
  behavior when we link in the Meson-built -mm .lib's, just as we did when we
  link in the NMake-built -mm .lib's.
  
  Also fix the case also when the 'USE_COMPAT_LIBS' option is used and when
  'USE_MESON_LIBS' is not used on Visual Studio 2017, where the toolset version
  was not correctly applied.

2020-06-29  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  docs/reference/: Update for Doxygen >= 1.8.16

  * docs/reference/meson.build: Doxygen 1.8.16 and later does not store
  tag file names in the html files. This requires changes in meson.build
  and in doc-install.pl (in mm-common). Otherwise references to other modules
  won't be updated in the html files when they are installed.
  * docs/reference/Doxyfile.in: Remove PERL_PATH and MSCGEN_PATH.
  Doxygen since version 1.8.0 does not use them.

2020-06-29  Chun-wei Fan  <fanchunwei@src.gnome.org>

  Meson/Visual Studio builds: Include toolset version by default

  This makes the built DLL and .lib's contain the toolset version if the build is
  carried out using Visual Studio 2017 or later, unless the
  'msvc14x-parallel-installable' option is set to be false during configuration.
  
  The reasoning behind this change is that there can be subtle problems when, for
  instance, one tries to link to a Visual Studio 2017-built pangomm when building
  items dependening on pangomm with Visual Studio 2019.  This is unfortunate as
  Microsoft did try hard to make interoperating between binaries built with
  Visual Studio 2017 and 2019 as easy as possible in terms of ABI and API, but
  unfortunately this can hit the corner cases where this compatibility does not
  work.
  
  As the name suggests, this attempts to make Visual Studio 2017 and 2019 builds
  share a single set of underlying C DLLs easier, while avoiding breakages caused
  by such subtle differences.

2020-06-29  Chun-wei Fan  <fanchunwei@src.gnome.org>

  meson.build: Check for /utf-8 on Visual Studio

  Enable this compiler flag on Visual Studio if it is supported, so that building
  under non-English (East Asian) locales is made easier, which helps to avoid the
  C4819 error under such situations, due to a Unicode handling issue in the
  compiler when running under such locales

2020-06-29  Chun-wei Fan  <fanchunwei@src.gnome.org>

  Meson: Use pkg-config to find glibmm and cairomm for all builds

  Stop manually looking for glibmm and cairomm for better consistency, as:
  
  -Items that depended on glibmm which added Meson build support after glibmm,
   such as gtkmm and libxml++ also required glibmm to be found via pkg-config
   files, and they still had NMake Makefile support for Visual Studio builds.
   For items that use cairomm directly, this will be the case as well.
  -There could be corner cases on the glibmm and cairomm libraries that pangomm
   links to in  terms of ABI compatibility between Visual Studio 2015, 2017 and
   2019.

2020-06-16  Chun-wei Fan  <fanchunwei@src.gnome.org>

  NMake Makefiles: Use toolset version in DLL/.lib naming

  Instead of using the Visual Studio version ('vc150' for Visual Studio 2017),
  use the toolset version ('vc141' for Visual Studio 2017 and 'vc142' for Visual
  Studio 2019, as defined by Microsoft) so that we are more in-line with what
  is now done in the pangomm-2-42 branch.
  
  If using the old naming convention is desired, an NMake command line option
  'USE_COMPAT_LIBS' have been added-note that this will require glibmm, cairomm,
  and libsigc++ to be built with that option enabled.

2020-05-05  Chun-wei Fan  <fanchunwei@src.gnome.org>

  meson: Clean up Visual Studio bits

  Streamline how we look for the dependencies manually, by using the
  'has_headers:' attribute of cpp_compiler.find_library(), so that we can
  check for the presence of the headers at the same time as looking for
  the glibmm, cairomm and/or libsigc++ headers.

2020-05-05  Chun-wei Fan  <fanchunwei@src.gnome.org>

  Meson/Visual Studio: Support cairomm lookup using pkg-config

  cairomm recently received Meson build support, which will generate the
  pkg-config files for us, so try to look for cairomm first using
  pkg-config, before looking for it manually.
  
  Since cairomm's pkg-config file also pulls in libsigc++, we can also
  skip looking for libsigc++ if we found cairomm via pkg-config.

2020-05-05  Chun-wei Fan  <fanchunwei@src.gnome.org>

  NMake Makefiles: Support Meson-built cairomm

  Allow linking directly to Meson-built cairomm when using the
  USE_MESON_LIBS option when running NMake.

2020-04-28  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  pango/meson.build: Minor fix of pangomm-2.44.pc

  libdir=${exec_prefix}/lib, as when it's generated with Autotools.

2020-04-11  Chun-wei Fan  <fanchunwei@src.gnome.org>

  pango/src/fontdescription.hg: Mark operators with PANGOMM_API

  We are using a _WRAP_EQUAL here which generates operator== and
  operator!= overloads that actually need to be exported.  So, pass in a
  function decorator to _WRAP_EQUAL

2020-04-07  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Meson build: If not maintainer-mode, check that generate-binding.py exists

  Trying to build with maintainer-mode=false from a tarball generated with
  Autotools will fail with a proper error message.
  Fixes #6

2020-03-31  Kjell Ahlstedt  <kjellahlstedt@gmail.com>

  Meson build: Set default value of the 'warnings' option to 'min'

  And add 'dist-warnings' with default value 'fatal'. It's used when a
  tarball is tested by 'ninja dist' or 'meson dist'.
  https://mail.gnome.org/archives/gtkmm-list/2020-March/msg00025.html
  
  Add a better error message if mm-common-get is required but not found.

2020-03-31  Chun-wei Fan  <fanchunwei@src.gnome.org>

  pango/src/*.hg: Mark _WRAP_ENUM with decl_prefix
[--snip--]
