"Fossies" - the Fresh Open Source Software Archive

Member "glibmm-2.74.0/ChangeLog" (19 Sep 2022, 52047 Bytes) of package /linux/misc/glibmm-2.74.0.tar.xz:


As a special service "Fossies" has tried to format the requested text file into HTML format (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file. See also the latest Fossies "Diffs" side-by-side code changes reports for "ChangeLog": 2.73.2_vs_2.74.0 or 2.72.1_vs_2.74.0.

    1 2022-09-19  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
    2 
    3   2.74.0
    4 
    5 2022-09-19  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
    6 
    7   glib/glibmm.h: Update the link to the gtkmm tutorial
    8 
    9 2022-09-19  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
   10 
   11   Glib, Gio: Regenerate docs.xml files
   12 
   13   using gtk files from glib 2.74.0.
   14 
   15 2022-09-12  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
   16 
   17   Convert README to README.md
   18 
   19 2022-09-02  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
   20 
   21   CI: Return to using ubuntu:rolling (22.04)
   22 
   23 2022-09-02  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
   24 
   25   Gio::File docs: Add @throws
   26 
   27   and other minor documentation fixes.
   28 
   29 2022-09-01  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
   30 
   31   Gio::File: Add create_tmp()
   32 
   33   * gio/src/file.[ccg|hg]: Add create_tmp().
   34   Document create_for_parse_name().
   35   * tests/giomm_simple/main.cc: Test File::create_tmp().
   36 
   37 2022-09-01  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
   38 
   39   Gio::ListStore::find() docs: Small changes
   40 
   41 2022-08-29  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
   42 
   43   Gio::ListStore: Add find()
   44 
   45   * gio/src/liststore.[ccg|hg]: Add two ListStoreBase::find() and
   46   two ListStore::find().
   47   * tests/giomm_listmodel/main.cc: Test ListStore::find().
   48 
   49 2022-08-27  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
   50 
   51   CI: Skip building with Autotools if glib is too old
   52 
   53 2022-08-23  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
   54 
   55   2.73.2
   56 
   57 2022-08-23  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
   58 
   59   CI: Use ubuntu:devel (22.10)
   60 
   61   Test with only one gcc version.
   62   Don't use warning_level and werror. They are applied to subprojects.
   63 
   64 2022-08-22  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
   65 
   66   Gio: Add some methods for glibmm 2.74
   67 
   68   * configure.ac:
   69   * meson.build: Require glib-2.0 >= 2.73.2.
   70   * gio/src/appinfo.hg: Add get_default_for_type_async/finish(),
   71   get_default_for_uri_scheme_async/finish().
   72   * gio/src/file.hg: Add make_symbolic_link_async/finish().
   73   * gio/src/liststore.hg: Add property_n_items().
   74   * gio/src/resolver.hg: Add enum Resolver::NameLookupFlags,
   75   lookup_by_name_with_flags(), lookup_by_name_with_flags_async/finish().
   76   * gio/src/gio_docs_override.xml:
   77   * tools/m4/convert_gio.m4: Add conversions for Resolver::NameLookupFlags.
   78 
   79 2022-08-22  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
   80 
   81   Glib, Gio: Regenerate docs.xml and .defs files
   82 
   83   using gtk files from glib 2.73.3.
   84 
   85 2022-08-22  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
   86 
   87   Doxyfile.in: Remove obsolete entry
   88 
   89 2022-08-21  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
   90 
   91   Add Glib::ustring::release()
   92 
   93   Fixes #101
   94 
   95 2022-07-29  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
   96 
   97   Gio::DBus::Proxy: Add some refreturn
   98 
   99   get_connection() and get_interface_info() must add a reference.
  100   The error in get_connection() was noticed by 우정모 (kr.woaini).
  101   Fixes #102
  102 
  103 2022-07-23  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  104 
  105   gmmproc: Make h2def.py recognize G_DEFINE_AUTOPTR_CLEANUP_FUNC
  106 
  107 2022-07-07  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  108 
  109   gmmproc, DocsParser.pm: Improve the handling of gi-docgen syntax, part 3
  110 
  111 2022-06-08  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  112 
  113   Gio::ListStore: Don't derive a gtkmm__GListStore GType
  114 
  115   GListStore is declared G_DECLARE_FINAL_TYPE.
  116 
  117 2022-06-08  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  118 
  119   gmmproc: Improved handling of final types
  120 
  121   Some GObject-derived classes shall not be derived from.
  122   
  123   * glib/glibmm/class.cc:
  124   * glib/glibmm/interface.cc: Don't derive or add interfaces to a class
  125   if G_TYPE_IS_FINAL(gtype) is true.
  126   * tools/m4/class_shared.m4: Fix gtype_ when _DO_NOT_DERIVE_GTYPE is used.
  127   Add _ABI_AS_WITH_DERIVED_GTYPE, making it possible to
  128   add _DO_NOT_DERIVE_GTYPE without breaking ABI.
  129 
  130 2022-06-06  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  131 
  132   Gio::Action: Improve the documentation
  133 
  134   See issue #100
  135 
  136 2022-06-06  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  137 
  138   Glib::RefPtr: Improve the documentation
  139 
  140   See issue gtkmm#119
  141 
  142 2022-06-01  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  143 
  144   Update tools/test_scripts/testheaders.sh
  145 
  146 2022-05-27  Chun-wei Fan  <fanchunwei@src.gnome.org>
  147 
  148   NMake Makefiles: Ensure g[lib|io]mm[config.h|.rc] are created
  149 
  150   ...before attempting the build.  This will ensure that they are available
  151   during the build and that we do not accidentally refer to an old copy that
  152   exists on the system.
  153   
  154   Should fix issue #99.
  155 
  156 2022-05-27  Chun-wei Fan  <fanchunwei@src.gnome.org>
  157 
  158   NMake Makefiles: Remove rules on build directory creation
  159 
  160   Instead, create them using plain 'md' commands if they don't exist prior to
  161   compiling the sources, if applicable.
  162   
  163   Should speed up builds a bit.
  164 
  165 2022-05-23  Chun-wei Fan  <fanchunwei@src.gnome.org>
  166 
  167   Meson/MSVC: Add more warnings to ignore
  168 
  169   We can actually silence more warnings here, since the issues that they cover
  170   can normally be fished out by the unit tests.
  171 
  172 2022-05-23  Chun-wei Fan  <fanchunwei@src.gnome.org>
  173 
  174   Meson: Re-organize MSVC compiler warnings-related items
  175 
  176   Add a short description of each of the current compiler flags we are using for
  177   this purpose, and only apply '/wd4267' for 64-bit builds since that flag
  178   normally applies for 64-bit builds only.
  179 
  180 2022-05-19  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  181 
  182   meson.build: Avoid configuration warnings
  183 
  184 2022-05-05  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  185 
  186   2.72.1
  187 
  188 2022-05-04  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  189 
  190   CI: Accept warnings from clang++
  191 
  192 2022-05-04  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  193 
  194   Revert "ustring_Iterator: Declare the copy constructor =default"
  195 
  196   This reverts commit 7b811a0be824675f31a422d40a75bbb5d10e32ad.
  197   It broke ABI. See #98
  198 
  199 2022-04-08  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  200 
  201   2.72.0
  202 
  203 2022-04-08  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  204 
  205   Gio::TlsCertificate: Fix the create*() methods
  206 
  207   Don't call constructors that don't work because the g_tls_certificate_new_*()
  208   functions do more than just call g_object_new().
  209 
  210 2022-04-07  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  211 
  212   CI: Don't test subprojects
  213 
  214 2022-04-07  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  215 
  216   Glib, Gio: Add some methods for glibmm 2.72
  217 
  218   * configure.ac:
  219   * meson.build: Require glib-2.0 >= 2.71.2.
  220   * gio/src/dbusproxy.hg: signal_signal() accepts a signal name.
  221   * gio/src/file.[ccg|hg]: Add move_async() and move_finish().
  222   * gio/src/socketclient.hg: Deprecate set/get/property_tls_validation_flags().
  223   * gio/src/tlscertificate.hg: Add properties private_key, private_key_pem,
  224   pkcs11_uri, private_key_pkcs11_uri.
  225   * gio/src/tlsclientconnection.hg: Deprecate set/get/property_validation_flags().
  226   * glib/glibmm/main.[cc|h]: Add create(MainContextFlags flags).
  227   * glib/src/enums.hg: Add enum Glib::MainContextFlags.
  228 
  229 2022-04-07  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  230 
  231   Glib, Gio: Regenerate docs.xml and .defs files
  232 
  233   using gtk files from glib 2.72.0.
  234   And update gio/src/gio_signals.defs.patch.
  235 
  236 2022-03-18  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  237 
  238   CI: Use artifacts to transfer data between stages
  239 
  240 2022-02-16  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  241 
  242   CI: Don't build everything with warnings=fatal
  243 
  244   Build only glibmm with warnings=fatal.
  245   Select latest released version of libsigc++3.
  246 
  247 2022-02-16  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  248 
  249   Add Gio::AppInfoMonitor
  250 
  251   Fixes #97
  252 
  253 2022-02-15  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  254 
  255   ustring_Iterator: Declare the copy constructor =default
  256 
  257   Avoid warnings from the clang++ compiler.
  258   
  259   It's deprecated to implicitly declare a copy constructor, if there
  260   is a user-defined copy assignment operator.
  261 
  262 2022-02-14  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  263 
  264   Remove HACKING
  265 
  266 2022-02-14  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  267 
  268   meson.build: Specify 'check' option in run_command()
  269 
  270   The default value will be changed in future Meson releases.
  271   
  272   Don't use deprecated python3.path() and execute(..., gui_app: ...).
  273 
  274 2021-11-26  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  275 
  276   Gio: Use _WRAP_METHOD(..., ignore_deprecations)
  277 
  278 2021-11-26  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  279 
  280   gmmproc: Add "ignore_deprecations" argument in _WRAP_METHOD()
  281 
  282   Makes it easier to suppress deprecation warnings when a C method has been
  283   deprecated, but the corresponding C++ method shall not (yet) be deprecated.
  284 
  285 2021-11-24  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  286 
  287   Gio::SocketClient, TlsClientConnection: Ignore some deprecations
  288 
  289   g_socket_client_[set,get]_tls_validation_flags() and
  290   g_tls_client_connection_[set,get]_validation_flags() are deprecated in
  291   glib 2.72. They can't be deprecated in glibmm 2.70. Ignore the deprecations,
  292   so it will still be possible to compile with warnings=fatal.
  293 
  294 2021-11-09  Chun-wei Fan  <fanchunwei@src.gnome.org>
  295 
  296   Build: Support VS2022 builds
  297 
  298   Make these builds distinct from the Visual Studio 2019 builds.
  299 
  300 2021-10-06  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  301 
  302   2.70.0
  303 
  304 2021-10-05  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  305 
  306   Glib::Binding: Fix return type from dup_source() and dup_target()
  307 
  308   Change from Glib::RefPtr<Glib::Object> to Glib::RefPtr<Glib::ObjectBase>.
  309 
  310 2021-10-05  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  311 
  312   Glib, Gio: Add some methods for glibmm 2.70
  313 
  314   * configure.ac:
  315   * meson.build: Require glib-2.0 >= 2.69.1.
  316   * glib/src/binding.[ccg|hg]: Add dup_source(), dup_target(),
  317   Deprecate get_source(), get_target().
  318   * glib/src/spawn.[ccg|hg]: Change parameter name, exit_status to wait_status.
  319   * glib/src/timezone.[ccg|hg]: Add operator bool(), create_identifier().
  320   Deprecate create().
  321   * gio/src/fileinfo.hg: Add get/set_access_date(), get/set_creation_date().
  322   * gio/src/notification.hg: Add set_category().
  323   * gio/src/tlscertificate.hg: Add property/get_not_valid_before(),
  324   property/get_not_valid_after(), property/get_subject_name(),
  325   property/get_issuer_name().
  326   * gio/src/tlsconnection.hg: Add enum Gio::TlsProtocolVersion,
  327   property/get_protocol_version(), property/get_ciphersuite_name().
  328   * tools/m4/convert_gio.m4: Add conversion for enum TlsProtocolVersion.
  329 
  330 2021-10-05  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  331 
  332   Glib, Gio: Regenerate docs.xml and .defs files
  333 
  334   using gtk files from glib 2.70.0.
  335   And update gio_docs_override.xml and glib_extra_objects.defs.
  336 
  337 2021-10-04  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  338 
  339   CI: Build with g++-11 instead of g++-9
  340 
  341   g++-9 is not available in debian:testing any more.
  342 
  343 2021-10-04  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  344 
  345   CI: Switching to debian:testing
  346 
  347   See pangomm#13 and pangomm!23.
  348 
  349 2021-10-04  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  350 
  351   Glib::wrap_register_init(): Don't use g_quark_from_static_string()
  352 
  353   Replace it by g_quark_from_string().
  354   g_quark_from_static_string() shall not be used, if glibmm (but not glib)
  355   is loaded and unloaded several times.
  356   Fixes #96
  357 
  358 2021-08-27  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  359 
  360   Declare some copy assignment operators deleted (=delete)
  361 
  362   Avoid warnings from the clang++ compiler.
  363   
  364   It's deprecated in C++ to implicitly declare a copy constructor, if there
  365   is a user-defined copy assignment operator. Instead of declaring copy
  366   assignment operators private without implementation, declare them deleted.
  367 
  368 2021-08-25  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  369 
  370   CI: Don't rebuild libsigc++ if it can be pulled from the cache
  371 
  372 2021-08-22  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  373 
  374   CI: Build libsigc++ only once
  375 
  376   and publish reference docs at gnome.pages.gitlab.gnome.org/glibmm.
  377 
  378 2021-08-17  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  379 
  380   .gitlab-ci.yml: Add dependency g++-10
  381 
  382 2021-08-17  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  383 
  384   meson.build: Check if Perl is required for building documentation
  385 
  386   New versions of mm-common use the Python scripts doc_postprocess.py
  387   and doc_install.py instead of the Perl scripts doc-postprocess.pl and
  388   doc-install.pl when documentation is built.
  389 
  390 2021-07-31  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  391 
  392   Use GLib from the main branch in subproject
  393 
  394 2021-07-29  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  395 
  396   Gio::AppInfo::get_all(): Use a local TypeTraits in ListHandler
  397 
  398   Instead of a specialization of Glib::Container_Helpers::TypeTraits
  399   for Glib::RefPtr<Gio::AppInfo>, add and use struct TypeTraits_AppInfo,
  400   local in gio/src/appinfo.ccg and appinfo.cc.
  401   Modifies the issue #94 fix.
  402 
  403 2021-07-26  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  404 
  405   Gio::AppInfo::get_all(): Use Glib::wrap_auto_interface()
  406 
  407   Applies also to get_all_for_type().
  408   
  409   Make a complete specialization of Glib::Container_Helpers::TypeTraits for
  410   Glib::RefPtr<Gio::AppInfo>, calling Glib::wrap(GAppInfo*, bool) which uses
  411   Glib::wrap_auto_interface(). The partial specialization in
  412   containerhandle_shared.h calls Glib::wrap_auto(), which is not acceptable
  413   if the GAppInfo object does not already have a wrapper, and its class type
  414   has been wrapped in a C++ class (e.g. GWin32AppInfo or GOsxAppInfo).
  415   Fixes #94
  416 
  417 2021-07-16  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  418 
  419   handle-built-files.py: Specify file encoding on generated files
  420 
  421   The default file encoding is platform dependent in Python.
  422   Better specify which encoding is preferred.
  423 
  424 2021-07-15  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  425 
  426   Gio::ListModel::get_object(): Don't try to cast to Glib::Object
  427 
  428   Gio::ListModel::get_object() returns Glib::RefPtr<Glib::ObjectBase>.
  429   Don't try to dynamic_cast it to Glib::Object. It would fail if the object
  430   has been constructed as an interface, and e.g. has a Gio::File wrapper.
  431   Fixes #93
  432 
  433 2021-07-10  talisein  <agpotter@gmail.com>
  434 
  435   fileenumerator.hg: Remove refreturn to avoid memory leak
  436 
  437 2021-06-04  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  438 
  439   Update gio_docs_override.xml
  440 
  441 2021-06-04  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  442 
  443   gmmproc, DocsParser.pm: 2nd improve the handling of gi-docgen syntax
  444 
  445 2021-06-01  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  446 
  447   gmmproc, DocsParser.pm: Improve the handling of gi-docgen syntax
  448 
  449 2021-05-31  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  450 
  451   Glib::ustring: Remove extraneous GLIBMM_API
  452 
  453   Deleted methods shall not be decorated with GLIBMM_API.
  454   Fixes #92
  455 
  456 2021-05-25  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  457 
  458   gmmproc, DocsParser.pm: Handle gi-docgen syntax in documentation
  459 
  460   gtk4 has started using gi-docgen instead of gtk-doc. It has a different
  461   syntax for referring to methods, signals, properties and other stuff
  462   in the documentation.
  463   
  464   gmmproc does not handle the gi-docgen syntax perfectly when it converts
  465   to Doxygen syntax and C++ names. It has never handled gtk-doc syntax
  466   perfectly, either. Hopefully it's good enough in most cases.
  467 
  468 2021-05-23  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  469 
  470   Add Glib::Environ and tests/glibmm_environ
  471 
  472   Fixes #89
  473 
  474 2021-05-23  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  475 
  476   Glib::Timer: Add resume() and is_active()
  477 
  478   Fixes #87
  479 
  480 2021-05-20  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  481 
  482   2.68.1
  483 
  484 2021-05-18  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  485 
  486   Add dependencies to Doxygen tag files in subprojects
  487 
  488   Doxygen in a main project shall not be called before tag files have been
  489   created or updated in subprojects.
  490 
  491 2021-05-15  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  492 
  493   Fix build as subproject without building documentation
  494 
  495   * meson.build: If mm-common-get is not found in maintainer-mode
  496   with 'required: false', try with 'required: true'.
  497   Don't try to use tag_file, if documentation is not built.
  498   * docs/reference/meson.build: Don't use variables from modules
  499   that don't define doxytagfile. These are subprojects that don't build
  500   their documentation.
  501 
  502 2021-05-07  Chun-wei Fan  <fanchunwei@src.gnome.org>
  503 
  504   Clean up Visual Studio build files
  505 
  506   Stop ignoring warnings C4251, C4273 and C4275 and add /EHsc in the compiler
  507   flags, so that we know if we are inadvertedly tying ourselves too closely to
  508   a Visual Studio compiler/STL version
  509 
  510 2021-05-07  Chun-wei Fan  <fanchunwei@src.gnome.org>
  511 
  512   Don't mark the Glib::Source class with GLIBMM_API
  513 
  514   Instead, mark the individual members with GLIBMM_API so that we avoid having
  515   the code tied to a particular STL and compiler version.
  516   
  517   Update the classes that derive from Glib::Source accordingly as well
  518 
  519 2021-05-07  Chun-wei Fan  <fanchunwei@src.gnome.org>
  520 
  521   error.h Avoid exporting class deriving frm std::exception
  522 
  523   This will avoid having the ABI tied to a particular STL and compiler version,
  524   and so will eliminate C4275 compiler warnings when building the code.
  525   
  526   Also update gerror.m4 so that it will generate code deriving from Glib::Error
  527   with the export macro markings with the member functions, so that things
  528   continue to build properly
  529 
  530 2021-05-07  Chun-wei Fan  <fanchunwei@src.gnome.org>
  531 
  532   fileattributeinfo.hg: Avoid exporting classes with std::string members
  533 
  534   ...and templates that inherit std::string.  This will help us to also eliminate
  535   C4251 warnings from code that use thid class and related items, and avoid ABI
  536   compatibility issues when building code that link and run aginst glibmm on
  537   Visual Studio builds.
  538 
  539 2021-05-07  Chun-wei Fan  <fanchunwei@src.gnome.org>
  540 
  541   variantdbusstring.h: Don't mark classes with GLIBMM_API
  542 
  543   It's actually not necessary here, and it will cause issues with the previous
  544   commit
  545 
  546 2021-05-07  Chun-wei Fan  <fanchunwei@src.gnome.org>
  547 
  548   ustring.h: Avoid exporting classes with std::string members
  549 
  550   ...and templates that inherit std::string.  This will help us to also eliminate
  551   C4251 warnings from code that use the ustring class and related items, and avoid
  552   ABI compatibility issues when building code that link and run aginst glibmm on
  553   Visual Studio builds.
  554 
  555 2021-05-05  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  556 
  557   Glib::PatternSpec: Ignore deprecation of g_pattern_match()
  558 
  559 2021-05-05  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  560 
  561   Subprojects can use meson.add_dist_script() if meson.version() >= 0.58.0
  562 
  563   * meson.build:
  564   * docs/reference/meson.build:
  565   * gio/giomm/meson.build:
  566   * glib/glibmm/meson.build:
  567   Call add_dist_script() in a subproject, if meson.version() >= 0.58.0.
  568   * tools/build_scripts/handle-built-files.py:
  569   Use MESON_PROJECT_DIST_ROOT if it exists, else MESON_DIST_ROOT.
  570   It exists if meson.version() >= 0.58.0.
  571 
  572 2021-04-19  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  573 
  574   Meson build: Make quiet installations possible
  575 
  576   * tools/build_scripts/handle-built-files.py: Don't print names of
  577   installed files if environment variable MESON_INSTALL_QUIET is set.
  578   It is set by "meson install --quiet" in Meson 0.54.0 and newer.
  579 
  580 2021-04-11  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  581 
  582   tests/glibmm_ustring_compare: Fix so it works for C++20
  583 
  584   Make 3 tests, where the 2 new tests check that the disallowed comparisons
  585   between std::string and Glib::ustring don't compile.
  586   The new tests are added only in Meson builds (ninja test).
  587   See MR !50
  588 
  589 2021-04-08  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  590 
  591   Meson build: No implicit_include_directories
  592 
  593 2021-04-06  Magne Oestlyngen  <magne@spacetec.no>
  594 
  595   Variant: Fix so it works with C++20
  596 
  597   C++20 changed some aspects of templates that broke variant.h on
  598   some compilers (GCC 11).
  599   
  600   Ref: https://wg21.cmeerw.net/cwg/issue2237
  601   
  602     template<class T>
  603     struct A {
  604       A<T>();  // ok pre-C++20, now incorrect
  605   //  A();     // correct for all versions
  606     };
  607   
  608   This commit removes the "simple-template-id" from both the default
  609   constructor (no args) and the explicit constructor (has args), even
  610   though only the default constructor currently gives error on GCC 11.
  611   Since both versions are wrong according to the issue referred to above
  612   it is expected that GCC (and possibly other compilers) will be updated
  613   to fail on both cases in the future.
  614 
  615 2021-03-26  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  616 
  617   Meson build: No implicit_include_directories
  618 
  619   It shall not be possible to find a glibmm header file
  620   with #include <xxx.h> instead of #include <glibmm/xxx.h>.
  621   Not fully fixed until https://github.com/mesonbuild/meson/issues/8562
  622   has been fixed.
  623 
  624 2021-03-17  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  625 
  626   Add tools/defs_gen/enumextract.py
  627 
  628   A Python script that can replace the Perl script tools/enum.pl.
  629   Why? Just because I've got fond of Python.
  630 
  631 2021-03-12  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  632 
  633   Meson build: Make it possible to use glibmm as a subproject
  634 
  635   glib and sigc++ can be subprojects of glibmm.
  636 
  637 2021-03-12  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  638 
  639   Meson build: examples and tests: Add dependency('threads')
  640 
  641   Multithreaded examples and tests depend on 'threads'.
  642   I noticed this when I started experimenting with subprojects.
  643   Strange that it was not reported as a missing dependency long ago.
  644 
  645 2021-03-09  Chun-wei Fan  <fanchunwei@src.gnome.org>
  646 
  647   g[io|lib]mmconfig.h.*: Don't dllimport on MinGW
  648 
  649   This will fix warnings when building items using glibmm and giomm with
  650   MinGW/GCC.
  651   
  652   Please see: https://gitlab.gnome.org/GNOME/gtkmm/-/issues/90
  653 
  654 2021-03-06  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  655 
  656   tools/gen_scripts: Ignore gio/gwin32api-*.h
  657 
  658   Ignore some new glib header files when generating
  659   gio/src/gio_enums.defs and gio/src/gio_methods.defs.
  660 
  661 2021-02-24  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  662 
  663   docs/reference/Doxyfile.in: Remove obsolete entries
  664 
  665 2021-02-24  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  666 
  667   Meson build: Use relative paths to untracked/
  668 
  669   The paths to the source code in untracked/ shall be relative to the
  670   meson.build file, when library files are built from a tarball.
  671   With absolute paths Meson may generate too long file names.
  672   See gtkmm!61
  673 
  674 2020-12-18  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  675 
  676   2.68.0
  677 
  678 2020-12-18  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  679 
  680   Glib, Gio: Regenerate docs.xml and .defs files
  681 
  682   and update gio/src/gio_docs_override.xml.
  683   
  684   Regenerated while the glib-2-66 branch was checked out from glib.
  685 
  686 2020-12-14  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  687 
  688   Glib::Binding, TimeZone: Ignore deprecation of some glib functions
  689 
  690   g_binding_get_source(), g_binding_get_target() and g_time_zone_new()
  691   are deprecated in glib 2.68. We can't use the replacement functions,
  692   which are new in glib 2.68. We want to build with -Dwarnings=fatal
  693   and run with both glib 2.68 and older versions of glib.
  694 
  695 2020-12-13  Pavlo Solntsev  <p.sun.fun@gmail.com>
  696 
  697   CI: Replacing old comments with correct ones
  698 
  699   The old comments were automatically added when initial version of the
  700   script was created. Here we repalce them with meaningful comments.
  701 
  702 2020-12-11  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  703 
  704   Change the ABI to glibmm-2.68
  705 
  706   So we can use the 2.66 version numbers for stable releases in the
  707   glibmm-2.4 ABI series.
  708   
  709   We've done similar ABI name changes several times before.
  710 
  711 2020-12-10  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  712 
  713   tests/glibmm_tls_client: Skip test, if socket can't be connected
  714 
  715   This test sometimes fails in CI runs, probably for a reason that's out
  716   of glibmm's control.
  717 
  718 2020-12-09  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  719 
  720   tests/glibmm_tls_client: Catch exceptions from more function calls
  721 
  722   Gio::Socket::create() can throw an exception. Put it in a try block.
  723   See #84
  724 
  725 2020-12-08  Pavlo Solntsev  <p.sun.fun@gmail.com>
  726 
  727   CI: Adding build and test job for clang compiler
  728 
  729   Release build and test was added for clang compiler.
  730 
  731 2020-12-08  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  732 
  733   Glib::Binding: Avoid warning from gcc-10
  734 
  735   g++-10 with optimization level -O1 or higher warns about possible use of
  736   an uninitialized variable when tests/glibmm_binding/main.cc is compiled.
  737   I don't understand why.
  738   
  739   There is no warning if the private method Glib::Binding::TransformProp::
  740   operator()() is compiled without optimization. Add an attribute that turns
  741   off optimization for this method when it's compiled with with gcc-10 or
  742   higher. gcc-9 does not warn. gcc-10 does not warn in glibmm-2.4, where
  743   std::optional is not used.
  744 
  745 2020-12-07  Pavlo Solntsev  <p.sun.fun@gmail.com>
  746 
  747   CI: Updating config file to reflect recent changes
  748 
  749   CI configuration file is updated to support meson and autotools builds
  750   for glibmm. libsigc++ version is updated up to 3.0.6 and it will be built
  751   using meson only.
  752   
  753   See #84 for details
  754 
  755 2020-11-21  Tom Schoonjans  <Tom.Schoonjans@rfi.ac.uk>
  756 
  757   Meson build: fix is_os_cocoa detection
  758 
  759   The previous check didnt work as the compiler choked on the Objective-C code
  760   that was dragged in by the Cocoa headers.
  761   
  762   This patch simplifies things by simply asking what system the host is
  763   running on.
  764 
  765 2020-11-19  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  766 
  767   Remove unnecessary TODO and README files
  768 
  769 2020-11-18  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  770 
  771   generate_wrap_init.pl.in: Use g_type_ensure()
  772 
  773   Call g_type_ensure(SomeClass::get_type()).
  774   
  775   Redefining the G_GNUC_CONST preprocessor macro does not have the
  776   intended effect (SomeClass::get_type() actually being called) if
  777   the package is compiled and linked with the -flto option.
  778   LTO = link time optimization
  779   
  780   https://mail.gnome.org/archives/gtkmm-list/2020-November/msg00009.html
  781 
  782 2020-11-01  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  783 
  784   Gio::File docs: Fix names of thrown exceptions
  785 
  786   and remove unnecessary TODO comments in several files.
  787 
  788 2020-10-12  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  789 
  790   glib/glibmm.h: Describe how to use glibmm with meson
  791 
  792 2020-10-01  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  793 
  794   Meson build: Fix versioning on macOS for libglibmm_generate_extra_defs
  795 
  796 2020-09-30  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  797 
  798   Meson build: Fix versioning on macOS
  799 
  800   See https://github.com/libsigcplusplus/libsigcplusplus/pull/65
  801 
  802 2020-09-13  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  803 
  804   Meson build: Add missing Glib::Value and Variant documentation
  805 
  806   The value_basictypes.h and variant_basictypes.h files, which are generated
  807   from .m4 files, were not included in the input to Doxygen.
  808 
  809 2020-09-07  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  810 
  811   Remove Glib::BalancedTree
  812 
  813   Use std::map or std::unordered_map instead.
  814 
  815 2020-08-31  Chun-wei Fan  <fanchunwei@src.gnome.org>
  816 
  817   class_interface.m4: Export the generated private class
  818 
  819   As in the case of class_shared.m4, we need to do the same for
  820   class_interface.m4 as well, in order to export the items in the private
  821   headers fully.
  822 
  823 2020-08-29  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  824 
  825   gmmproc: Make h2def.py recognize more macros
  826 
  827   When parsing function declarations, remove G_DECLARE_DERIVABLE_TYPE
  828   and GDK_DECLARE_INTERNAL_TYPE.
  829 
  830 2020-08-28  Chun-wei Fan  <fanchunwei@src.gnome.org>
  831 
  832   glib/glibmm/private/*.h: Decorate the classes with GLIBMM_API
  833 
  834   This is done for completeness' sake, as we are doing for the private headers that we
  835   generate.
  836 
  837 2020-08-28  Chun-wei Fan  <fanchunwei@src.gnome.org>
  838 
  839   class_shared.m4: Decorate private class prototype
  840 
  841   ...when using _WRAP_GOBJECT with a function decoration.  This will help expose
  842   the class definition in the generated private/*_p.h in the built DLLs/LIBs that
  843   is built with Visual Studio or clang-cl.
  844 
  845 2020-08-12  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  846 
  847   Rewrite Gio::Tls[Client,Server]ConnectionImpl
  848 
  849   TlsConnection_Class::wrap_new() can wrap a C object in a TlsConnection,
  850   TlsClientConnectionImpl or TlsServerConnectionImpl depending on which
  851   interface, if any, the C object implements.
  852   
  853   No need for special wrap*() functions in Tls[Client,Server]Connection
  854   or SocketClient::signal_event().
  855   
  856   This is similar to Gdk::DeviceWithPad.
  857 
  858 2020-08-02  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  859 
  860   Gio::Tls[Client,Server]ConnectionImpl: Improve the wrap*() functions
  861 
  862   Make Glib::wrap_tls_[client,server]_connection_impl() do like other
  863   wrap() functions for ref-counted objects when they are given a nullptr:
  864   return an empty RefPtr.
  865 
  866 2020-07-31  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  867 
  868   Gio::SocketClient::signal_event(): Fix wrapping of 'connection' param
  869 
  870   The GIOStream* parameter in the 'event' signal can point to either a
  871   GSocketConnection or to a subclass of GTlsConnection that implements
  872   the GTlsClientConnection interface. If it implements the
  873   GTlsClientConnection interface, wrap it in a Gio::TlsClientConnectionImpl.
  874   Then a signal handler can do:
  875     auto tls_client_connection =
  876       std::dynamic_pointer_cast<Gio::TlsClientConnection>(connection);
  877   
  878   Fixes #73
  879 
  880 2020-07-31  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  881 
  882   Glib::IOChannel docs: Update names of some enum values
  883 
  884 2020-07-30  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  885 
  886   Gio: Add Tls[Client,Server]ConnectionImpl
  887 
  888   Restructure Tls[Client,Server]Connection. They are interfaces. Now they
  889   derive only from Glib::Interface, like all interfaces shall do.
  890   
  891   Tls[Client,Server]ConnectionImpl don't correspond to C classes. They can
  892   wrap any C object that derives from GTlsConnection and implements
  893   GTls[Client,Server]Connection. Such C classes in GLib are not public.
  894   They can't be wrapped in the usual way.
  895 
  896 2020-07-23  Chun-wei Fan  <fanchunwei@src.gnome.org>
  897 
  898   NMake Makefiles: Use Meson-style DLL and .lib naming if requested
  899 
  900   To make things more consistent and less prone to confusion, if 'USE_MESON_LIBS'
  901   is specified in the NMake command line, build the DLLs and .lib's that are
  902   named like the Meson counterparts.  Binaries built with Meson+Visual Studio
  903   and the ones that are built via NMake using 'USE_MESON_LIBS' are
  904   interchangeable, provided that they are built with the same Visual Studio
  905   version.
  906 
  907 2020-07-22  Chun-wei Fan  <fanchunwei@src.gnome.org>
  908 
  909   NMake Makefiles: Fix generating [glib|gio]mm[config.h|.rc]
  910 
  911   This fixes the build process so that we won't need to generate them
  912   unnecessarily (i.e. when building from a release tarball built with autotools).
  913   
  914   Also streamline the build process that we no longer need to explicitly run
  915   the 'prep-git-build' target before building, where we generate
  916   [glib|gio]mm[config.h|.rc], and if needed, gmmproc and generate_wrap_init.pl,
  917   as part of the normal 'all' target if necessary
  918 
  919 2020-07-19  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  920 
  921   Gio::MenuModel: Make MenuAttribute and MenuLink enum class
  922 
  923   Change enum Gio::MenuAttribute to Gio::MenuModel::Attribute and
  924   change enum Gio::MenuLink to Gio::MenuModel::Link.
  925   Add new enum values to Attribute.
  926 
  927 2020-07-18  Andreas Persson  <andreasp56@outlook.com>
  928 
  929   Update documentation for ListStore too.
  930 
  931 2020-07-18  Andreas Persson  <andreasp56@outlook.com>
  932 
  933   Make ListStore accept Interfaces.
  934 
  935   I noticed that I couldn't create a ListStore containing AppInfo objects,
  936   because an AppInfo is not an Object but an Interface. ListStore seems to
  937   work fine with Interfaces, so I just changed the static_assert.
  938 
  939 2020-07-14  Chun-wei Fan  <fanchunwei@src.gnome.org>
  940 
  941   NMake Makefiles: Support ARM64 Windows builds
  942 
  943   This will make the NMake Makefiles capable of building ARM64 binaries of glibmm
  944   and giomm, which can be used on Windows 10 on ARM systems.
  945 
  946 2020-07-11  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  947 
  948   gmmproc: _CLASS_BOXEDTYPE, _CLASS_OPAQUE_COPYABLE: Fix move assignment
  949 
  950   Add a std::move() to avoid copying.
  951   Fixes #76
  952 
  953 2020-06-29  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
  954 
  955   docs/reference/: Update for Doxygen >= 1.8.16
  956 
  957   * docs/reference/meson.build: Doxygen 1.8.16 and later does not store
  958   tag file names in the html files. This requires changes in meson.build
  959   and in doc-install.pl (in mm-common). Otherwise references to other modules
  960   won't be updated in the html files when they are installed.
  961   * docs/reference/Doxyfile.in: Remove PERL_PATH and MSCGEN_PATH.
  962   Doxygen since version 1.8.0 does not use them.
  963 
  964 2020-06-18  Chun-wei Fan  <fanchunwei@src.gnome.org>
  965 
  966   Meson/Visual Studio builds: Include toolset version by default
  967 
  968   This makes the built DLL and .lib's contain the toolset version if the build is
  969   carried out using Visual Studio 2017 or later, unless the
  970   'msvc14x-parallel-installable' option is set to be false during configuration.
  971   
  972   The reasoning behind this change is that there are subtle problems when, for
  973   instance, one tries to link to a Visual Studio 2017-built glibmm when building
  974   gtkmm and libxml++ with Visual Studio 2019.  This is unfortunate as
  975   Microsoft did try hard to make interoperating between binaries built with
  976   Visual Studio 2015, 2017 and 2019 as easy as possible in terms of ABI and API,
  977   but unfortunately this hits the corner cases where this compatibility does not
  978   work.
  979   
  980   As the name suggests, this attempts to make Visual Studio 2017 and 2019
  981   builds share a single set of underlying C DLLs easier, while avoiding breakages
  982   caused by such subtle differences.
  983 
  984 2020-06-16  Chun-wei Fan  <fanchunwei@src.gnome.org>
  985 
  986   NMake Makefiles: Clean up building tests and examples
  987 
  988   Instead of hand-written rules, just make use of what we have to generate the
  989   rules on the fly for most of the tests and examples, since the rules are more
  990   or less the same for each of the test and example programs.  We only need to
  991   single-out the ones that aren't buildable under Windows and those that have
  992   multiple programs under each directory, as opposed to one example/test program
  993   per directory.
  994   
  995   Even for those directories that have multiple example programs, we can pretty
  996   easily generate the rules for them.
  997   
  998   Also remove repeated parts that were added by accident.
  999   
 1000   This can shrink the NMake Makefiles by a bit.
 1001 
 1002 2020-06-16  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1003 
 1004   NMake Makefiles: Use Toolset version in DLL names by default
 1005 
 1006   This updates the build to use the toolset version in the final DLL
 1007   and .lib filenames, similar to what is done in Boost, instead of
 1008   the Visual Studio version.
 1009   
 1010   This means that by default, we will use 'vc141' instead of 'vc150'
 1011   in Visual Studio 2017 builds, and 'vc142' instead of 'vc160' in
 1012   Visual Studio 2019 builds.
 1013   
 1014   If using the former naming is desired, use 'USE_COMPAT_LIBS=1' in
 1015   the NMake command line, albeit all such binaries will now be named
 1016   with 'vc150' in the DLL and library bames
 1017 
 1018 2020-06-15  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1019 
 1020   glib/glibmm/ustring.h: Fix Visual Studio macro check
 1021 
 1022   Commit 8b8af81f accidentally changed the macro check from '_MSC_VER' to
 1023   'MSC_VER', fix that.  It probably does not matter since Visual Studio 2017
 1024   is required, where 'GLIBMM_HAVE_ALLOWS_STATIC_INLINE_NPOS' is enabled,
 1025   but fix that for consistency's sake.
 1026 
 1027 2020-06-03  Daniel Boles  <dboles@src.gnome.org>
 1028 
 1029   propertyproxy_base: Fix using notify w/o prop name
 1030 
 1031   GLib has now specified that if you want to connect to a signal without a
 1032   detail argument, you omit the `::`. So, glibmm users previously
 1033   connecting to `notify::` to listen for changes to all properties broke.
 1034   Fix that by only passing `notify` i.e. no superfluous `::` in that case.
 1035   
 1036   Close https://gitlab.gnome.org/GNOME/glibmm/-/issues/74
 1037   Close https://gitlab.gnome.org/GNOME/glibmm/-/merge_requests/35
 1038 
 1039 2020-06-02  Daniel Boles  <dboles@src.gnome.org>
 1040 
 1041   ustring: Silence warning if MSC_VER is undefined/0
 1042 
 1043 2020-05-21  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
 1044 
 1045   tools/defs_gen/*.py: Specify that this is python3 code
 1046 
 1047   Specify #!/usr/bin/env python3, making it unnecessary to have a python
 1048   command which is a link to python3.
 1049   In h2def.py, use the built-in set() instead of Set() from the sets module.
 1050 
 1051 2020-04-11  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1052 
 1053   tools/m4/compare.m4: Allow decorating comparison operators
 1054 
 1055   This allows one to pass in deocrations for the comparison operators so
 1056   that those decorations may be defined as compiler directives to export
 1057   symbols in a more fine-grained manner.
 1058 
 1059 2020-04-05  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
 1060 
 1061   Meson build: Set default value of the 'warnings' option to 'min'
 1062 
 1063   * meson.build: Use dist-warnings when a tarball is tested by
 1064   'ninja dist' or 'meson dist'. Check if generate-binding.py exists, if not
 1065   maintainer-mode. Add a better error message if mm-common-get is required
 1066   but not found.
 1067   * meson_options.txt: Set default value of the 'warnings' to 'min'.
 1068   Add 'dist-warnings' with default value 'fatal'.
 1069 
 1070 2020-04-04  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1071 
 1072   gio/src/*.hg: Mark all _WRAP_ENUM() with decl_prefix
 1073 
 1074   As per Kjell's suggestions, make things more future-proof by marking all
 1075   _WRAP_ENUM()'s with 'decl_prefix GIOMM_API'.
 1076 
 1077 2020-04-04  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1078 
 1079   glib/src/*.hg: Mark all _WRAP_ENUM() with decl_prefix
 1080 
 1081   As per Kjell's suggestions, make things more future-proof by marking all
 1082   _WRAP_ENUM()'s with 'decl_prefix GLIBMM_API'.
 1083 
 1084 2020-04-04  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1085 
 1086   gio/src/*.hg: Mark _WRAP_ENUM with decl_prefix GIOMM_API
 1087 
 1088   This way, we can mark the template<> classes with GIOMM_API so that we
 1089   can export them as well using compiler directives.  Note that those
 1090   marked with NO_GTYPE do not need to be marked with this, as no
 1091   template<> classes are generated with these.
 1092 
 1093 2020-04-04  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1094 
 1095   glib/src/*.hg: Mark _WRAP_ENUM with decl_prefix GLIBMM_API
 1096 
 1097   This way we can mark the template<> classes that is generated via
 1098   _WRAP_ENUM with GLIBMM_API, so that we can export those as well.
 1099   
 1100   Note that for this, the _WRAP_ENUM calls with NO_GTYPE specified do not
 1101   need to be marked with decl_prefix GLIBMM_API as no template<> classes
 1102   will be generated in this manner.
 1103 
 1104 2020-04-04  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1105 
 1106   tools/[gerror|enum].m4: Make template<> classes exportable
 1107 
 1108   Allow to apply the decl_prefix argument onto the template<> classes that
 1109   we generate for the _WRAP_GERROR and _WRAP_ENUM directives in the
 1110   various *.hg files, if specified.
 1111   
 1112   Please note that this is done in GNU m4 style for enum.m4 since we are
 1113   using the 10th argument.
 1114 
 1115 2020-03-22  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
 1116 
 1117   2.65.3
 1118 
 1119 2020-03-20  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
 1120 
 1121   tests/glibmm_buildfilename: Add some tests
 1122 
 1123   See issue #71
 1124 
 1125 2020-03-19  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
 1126 
 1127   Meson build: Install generate_extra_defs.h
 1128 
 1129   Fixes #70
 1130 
 1131 2020-03-19  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
 1132 
 1133   README: Fix a misspelling
 1134 
 1135 2020-03-18  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
 1136 
 1137   2.65.2
 1138 
 1139 2020-03-18  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
 1140 
 1141   Glib, Gio: Add missing #includes
 1142 
 1143   Fixes #69
 1144 
 1145 2020-03-17  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
 1146 
 1147   NEWS: Remove an erroneous item
 1148 
 1149 2020-03-17  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
 1150 
 1151   2.65.1
 1152 
 1153 2020-03-17  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
 1154 
 1155   Change the ABI to glibmm-2.66
 1156 
 1157   So we can use the 2.64 version numbers for stable releases in the
 1158   glibmm-2.4 ABI series.
 1159   We don't need to release a stable ABI-parallel glibmm until we need
 1160   to release gtkmm 4.0, and that won't happen until GTK 4.0.0 happens.
 1161   
 1162   We've done similar ABI name changes several times before.
 1163 
 1164 2020-03-17  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
 1165 
 1166   glib/glibmm-uninstalled.pc.in: Require sigc++-3.0
 1167 
 1168 2020-03-17  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
 1169 
 1170   Glib, Gio: Regenerate docs.xml and .defs files
 1171 
 1172 2020-03-14  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
 1173 
 1174   README: Describe building with Meson and Autotools
 1175 
 1176 2020-03-12  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
 1177 
 1178   Gio::DBus::Message::get_unix_fd_list(): Add refreturn
 1179 
 1180   Fixes #68
 1181 
 1182 2020-03-12  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1183 
 1184   glibmm/objectbase.h: Mark _gobject_cppinstance_already_deleted()
 1185 
 1186   ...with GLIBMM_API.  This is needed for building gtkmm, with Visual
 1187   Studio.
 1188 
 1189 2020-03-11  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1190 
 1191   NMake Makefiles: Fix builds from Meson tarball
 1192 
 1193   For the glib/src/*.[c|h].m4 sources, look also for the generated sources
 1194   that are in untracked/glib/glibmm, so that we do not needlessly try to
 1195   generate that file, meaning m4 will be required even in release tarballs.
 1196   
 1197   Somehow this did not make it into master but is in glibmm-2-62... :|
 1198 
 1199 2020-03-10  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1200 
 1201   glib/glibmmconfig.h.[in|meson]: Clean up MSVC bits
 1202 
 1203   From
 1204   https://gitlab.gnome.org/GNOME/glibmm/-/merge_requests/29#note_734668,
 1205   it was noted by Kjell that we will always have thread_local, so there is
 1206   really no GLIBMM_CAN_USE_THREAD_LOCAL in the code, so we can drop that.
 1207   
 1208   Also drop the Visual Studio 2013 compatibility bits, since we need
 1209   Visual Studio 2017 to build glibmm master (C++17 branch), so they won't
 1210   be relevant.
 1211 
 1212 2020-03-09  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
 1213 
 1214   examples, tests: Disable deprecated API when building with Meson
 1215 
 1216   Deprecated GLIBMM and GIOMM API are disabled when example programs and test
 1217   programs are built with Autotools. Do the same when building with Meson.
 1218 
 1219 2020-03-09  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1220 
 1221   NMake Makefiles: Fix 'install' for Meson tarballs
 1222 
 1223   We need to look for headers from untracked/ as well.
 1224 
 1225 2020-03-09  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1226 
 1227   m4: Apply function decoration more thoroughly
 1228 
 1229   Apparently more items in the generated code must be marked with the
 1230   function decoration that is specified, otherwise the exported symbols
 1231   will not be complete.
 1232 
 1233 2020-03-09  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1234 
 1235   meson: Do not allow static MSVC-style builds
 1236 
 1237   The Visual Studio build files never really supported static builds, so
 1238   disallow that for now, until we can make sure that is tested better.
 1239 
 1240 2020-03-09  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1241 
 1242   glibmm: Update glibmmconfig.h.[in|meson] for MSVC
 1243 
 1244   Visual Studio 2015 or later has thread_local, so make sure that it is
 1245   enabled.
 1246   
 1247   Also update for Visual Studio 2017+ as the compiler does allow static
 1248   members to be initialized inline to std::string::npos
 1249   (GLIBMM_HAVE_ALLOWS_STATIC_INLINE_NPOS), but use a work
 1250   around for pre-Visual Studio 2015 so that we do not get a linker error
 1251   as GLIBMM_HAVE_ALLOWS_STATIC_INLINE_NPOS is not supported.
 1252 
 1253 2020-03-07  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1254 
 1255   build: Drop gendef
 1256 
 1257   We are now building glibmm without the use of gendef for all builds, so
 1258   we can now drop gendef from the glibmm sources.
 1259 
 1260 2020-03-07  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1261 
 1262   Visual Studio builds: build giomm without gendef
 1263 
 1264   Make sure that we are defining GIOMM_API as __declspec(dllexport) when
 1265   building giomm and so stop the use of gendef.exe.  We are now ready to
 1266   drop gendef from the glibmm sources.
 1267 
 1268 2020-03-07  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1269 
 1270   gio/giomm/*.h: Mark classes and functions with GIOMM_API
 1271 
 1272   This prepares the build to use compiler directives to export symbols, in
 1273   our bid to drop gendef.exe.
 1274 
 1275 2020-03-07  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1276 
 1277   gio/src/*.hg: Mark classes and functions with GIOMM_API
 1278 
 1279   This prepares the build to export symbols using compiler directives, in
 1280   our bid to drop gendef.exe.  We will also mark pre-declarations of usage
 1281   of glibmm class items with GLIBMM_API as well.
 1282 
 1283 2020-03-07  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1284 
 1285   build: Do not use gendef.exe for glibmm
 1286 
 1287   Clean up the build files a bit and update the glibmmconfig.h.[in|meson] so that
 1288   we use __declspec(dllexport) when GLIBMM_BUILD is defined (i.e. during the
 1289   build of glibmm) on Visual Studio.
 1290   
 1291   Also, for the meson builds, disable warnings 4251 and 4275 as they all relate
 1292   to building DLLs regarding symbol export, which is harmless as we know clearly
 1293   that we are indeed building DLLs in our case, and we have already set
 1294   GLIBMM_API appropriately
 1295 
 1296 2020-03-07  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1297 
 1298   glib/src: Decorate classes and methods with GLIBMM_API
 1299 
 1300   This prepares for us to export symbols using compiler directives, so that we
 1301   can eventually retire gendef.exe.  This also makes the scripts place GLIBMM_API
 1302   as appropriate for the generated Glib:Error classes and the wrap() method.
 1303 
 1304 2020-03-07  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1305 
 1306   tools: Allow generating Glib:Error class with decorations
 1307 
 1308   This allows one to export the generated Glib::Error class with decorations so
 1309   that one may be able to use this to export it using compiler directives.
 1310   
 1311   This allows specifications that start with decl_prefix, and this also
 1312   decorates the `friend wrap_init() method in the generated Glib::Error class
 1313 
 1314 2020-03-05  Pavlo Solntsev  <p.sun.fun@gmail.com>
 1315 
 1316   CI: Initial setup for CI
 1317 
 1318 2020-03-05  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1319 
 1320   tools/m4: Allow one to decorate the generated wrap() prototype
 1321 
 1322   This allows the compiler to use the decoration macro to export those methods
 1323   from the generated items
 1324 
 1325 2020-03-05  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1326 
 1327   glib/glibmm/*.h: Mark classes and methods with GLIBMM_API
 1328 
 1329   This prepares the code to use __declspec(dllexport) to export all symbols, so
 1330   that we can eventually bid farewell to gendf.exe
 1331 
 1332 2020-03-05  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1333 
 1334   meson: Use /utf-8 for Visual Studio builds
 1335 
 1336   This way, we can avoid warning/error C4819 when building glibmm due to unicode
 1337   handling issues in the compiler, which is likely to pop up on East Asian
 1338   locales on Windows.
 1339   
 1340   We need to ignore warning C4828 when building gendef.exe though with this.
 1341 
 1342 2020-03-04  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
 1343 
 1344   Activate the glibmm_ustring_compose test
 1345 
 1346   It was (probably by mistake) disabled by commit
 1347   729b1ae95d5d05b78741eeef1d635f95b19d790b
 1348 
 1349 2020-03-03  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
 1350 
 1351   gio/giomm/meson.build: Silence a warning from Meson
 1352 
 1353   static_library() can't take a version: argument.
 1354 
 1355 2020-03-03  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1356 
 1357   MSVC NMake: Allow builds from Meson-generated tarballs
 1358 
 1359   This adds rules to the NMake Makefiles so that they can find the sources under
 1360   $(srcroot)/untracked, and thus will not need to re-generate the sources.
 1361   
 1362   However, for builds from such tarballs, it is necessary to do
 1363   'nmake /f Makefile.vc CFG=$(CFG) prep-git-build' so that the resource scripts
 1364   and config headers are generated, prior to performing the build.
 1365   
 1366   Please note that glibmm_generate_extra_defs-2.x is now built as a DLL with the
 1367   NMake Makefiles as well.
 1368 
 1369 2020-03-02  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
 1370 
 1371   meson.build: Tidy up a bit
 1372 
 1373   The definitions of glibmm_build_dep, giomm_build_dep, glibmm_requires and
 1374   giomm_requires can be simplified.
 1375 
 1376 2020-03-02  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
 1377 
 1378   Meson build: Add some dependencies when generating source files
 1379 
 1380   wrap_init.cc shall be rebuilt when generate_wrap_init.pl has been rebuilt.
 1381   Generated .h and .cc files shall be rebuilt when gmmproc has been rebuilt.
 1382 
 1383 2020-03-02  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
 1384 
 1385   Makefile.am: Distribute files necessary for building with Meson
 1386 
 1387 2020-03-02  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1388 
 1389   tools: Fix 'meson dist'
 1390 
 1391   The former method of using gendef.exe to generate the import library for
 1392   glibmm_generate_extra_defs somehow breaks 'meson dist' and builds from
 1393   release tarballs, unless one builds giomm first.
 1394   
 1395   Fix this by using the __declspec(dll[ex|im]port) directives, since
 1396   glibmm_generate_extra_defs is a simple utility library.
 1397 
 1398 2020-03-02  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1399 
 1400   meson: Build items in tools/extra_defs_gen on MSVC too
 1401 
 1402   Ensure we can generate the import lib for glibmm_generate_extra_defs on
 1403   Visual Studio builds by using the same technique we used for glibmm and
 1404   giomm, and build the two programs that is to be built along side with
 1405   it.
 1406   
 1407   Also re-order the items in meson.build a bit so that we are able to use
 1408   our gendef tool.
 1409 
 1410 2020-03-02  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1411 
 1412   examples/thread/dispatcher.cc: Make C++17 compliant
 1413 
 1414   std::mem_fun() and std::unary() have been removed from C++17, so port
 1415   away from using these.
 1416 
 1417 2020-03-02  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1418 
 1419   glibmm_interface_move test: Avoid warnings in test_IFace_get_type()
 1420 
 1421   ...for Visual Studio builds, since we don't really get unused function
 1422   warnings from the TEST_IFACE items.  Plus, we don't have glib autoptr
 1423   support in Visual Studio builds, either.
 1424 
 1425 2020-03-02  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1426 
 1427   examples: Don't build child_watch and iochannel_stream on Windows
 1428 
 1429   These use *nix items in the code, so they won't build nor run for
 1430   Windows unless they are ported.
 1431 
 1432 2020-03-02  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1433 
 1434   dbusconnection.ccg: Include giomm/unixfdlist.h on *NIX only
 1435 
 1436   In Meson builds, we don't even generate giomm/unixfdlist.h unless we are
 1437   building for *nix, and we aren't using the items there on non-*nix
 1438   builds.
 1439 
 1440 2020-03-02  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1441 
 1442   gio/giomm/meson.build: Use giomm-int rule for all builds
 1443 
 1444   Like the previous commit, let builds from release tarballs and GIT
 1445   checkouts build the giomm-int static library, and link the final
 1446   .so/.dll from the objects that form giomm-int static .lib.  By doing so
 1447   we can build giomm with the import libraries for Visual Studio builds
 1448   with gendef, as well as linking in the version resource for all Windows
 1449   builds.
 1450 
 1451 2020-03-02  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1452 
 1453   glib/glibmm/meson.build: Use glibmm-int rule for all builds
 1454 
 1455   Let builds from release tarballs and GIT checkouts build the glibmm-int
 1456   static library, and link the final .so/.dll from the objects that form
 1457   glibmm-int static .lib.  By doing so we can build glibmm with the import
 1458   libraries for Visual Studio builds with gendef, as well as linking in
 1459   the version resource for all Windows builds.
 1460 
 1461 2020-03-02  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1462 
 1463   meson.build: Disable warning C4589 on Visual Studio
 1464 
 1465   This warning can be ignored as well.
 1466 
 1467 2020-03-02  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1468 
 1469   tools: Use POSIX-style path for m4 in gmmproc
 1470 
 1471   Otherwise the script gets confused as the slashes were not escaped
 1472 
 1473 2020-03-02  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1474 
 1475   meson.build: Allow Visual Studio builds in GIT checkouts
 1476 
 1477   It is now possible to build glibmm directly from GIT checkouts as long
 1478   as there is a working m4 executable (such as fomr Cygwin or MSYS64), so
 1479   we can allow builds directly from GIT checkouts.
 1480 
 1481 2020-03-02  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1482 
 1483   meson.build: Always look for libsigc++ via pkg-config
 1484 
 1485   We have Meson build support for libsigc++ before we got into this drive
 1486   for Meson support for building glibmm, so let's just always look for
 1487   libsigc++ with pkg-config.
 1488 
 1489 2020-03-01  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
 1490 
 1491   Add support for building glibmm with Meson
 1492 
 1493   glibmm can be built with either Autotools or Meson.
 1494   
 1495   See MR !27
 1496 
 1497 2020-03-01  Kjell Ahlstedt  <kjellahlstedt@gmail.com>
 1498 
 1499   Prepare existing files for building with Meson
 1500 
 1501   * examples/network/resolver.cc: Don't include config.h. It's not used.
 1502   * glib/glibmm/ustring.cc: Check if GLIBMM_SIZEOF_WCHAR_T is defined.
 1503   * tools/generate_wrap_init.pl.in:
 1504   * tools/gmmproc.in: Change '\@' to '\ @'. Meson's configure_file()
 1505   removes a backslash immediately before an at-sign.
 1506 
 1507 2020-02-27  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1508 
 1509   NMake Makefiles: Fix headers installation
 1510 
 1511   Fix Copy-n-paste error...
 1512 
 1513 2020-02-27  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1514 
 1515   generate-msvc.mak: Correct path to find gmmproc PERL modules
 1516 
 1517   The GLIBMM_MODULE_NAME should be glibmm-2.x, not giomm-2.x
 1518 
 1519 2020-02-26  Chun-wei Fan  <fanchunwei@src.gnome.org>
 1520 
 1521   NMake Makefiles: Add targets to ease build from GIT checkouts
 1522 
 1523   This will enable one to generate the following files:
 1524   
 1525   MSVC_NMake/glibmm/glibmmconfig.h
 1526   MSVC_NMake/glibmm/glibmm.rc
 1527   MSVC_NMake/giomm/giommconfig.h
 1528   MSVC_NMake/giomm/giomm.rc
 1529   
 1530   when building from a GIT checkout.
 1531   
 1532   This will also enable one to generate the following files:
 1533   tools/gmmproc
 1534   tools/generate_wrap_init.pl
 1535   
 1536   from a GIT checkout or from a source tree unpacked from a release tarball so
 1537   that one can use these to build directly from a GIT checkout using NMake,
 1538   or to have gmmproc and generate_wrap_init.pl ready to use to build other
 1539   -mm libraries.
 1540