Opened 3 years ago

Closed 3 years ago

Last modified 3 years ago

#14798 closed enhancement (fixed)

GNOME-40 External Libraries - glib vala pygobject3 gobject-introspection gtk-4.0 gtksourceview4 libdazzle sysprof at-spi2-core glib-networking gdk-pixbuf tepl gtk+3

Reported by: Douglas R. Reno Owned by: Douglas R. Reno
Priority: elevated Milestone: 11.0
Component: BOOK Version: SVN
Severity: normal Keywords:
Cc:

Description


Change History (32)

comment:1 by Douglas R. Reno, 3 years ago

Owner: changed from blfs-book to Douglas R. Reno
Status: newassigned

Taking GNOME-40 and pipewire.

comment:2 by Xi Ruoyao, 3 years ago

Summary: GNOME-40 External Libraries - glib vala webkitgtk pygobject gobject-introspectionGNOME-40 External Libraries - glib vala webkitgtk pygobject gobject-introspection gtk-4

Some components of gnome-shell-40 will use gtk-4. And I don't think there is some way to disable those components.

comment:3 by Xi Ruoyao, 3 years ago

Summary: GNOME-40 External Libraries - glib vala webkitgtk pygobject gobject-introspection gtk-4GNOME-40 External Libraries - glib vala webkitgtk pygobject gobject-introspection gtk-4.0

A message (bad, IMO): gtk-4.2 will be ABI incompatible with gtk-4.0. Hopefully gtk-4.6 will be ABI-stablized. Until that we should refer gtk-4.x with major.minor.

And gtk-4.1.y are pre-releases of 4.2. We should use 4.0.y (now 4.0.3).

comment:4 by Xi Ruoyao, 3 years ago

Summary: GNOME-40 External Libraries - glib vala webkitgtk pygobject gobject-introspection gtk-4.0GNOME-40 External Libraries - glib vala webkitgtk (wait for 2.32) pygobject gobject-introspection gtk-4.0

epiphany-40 needs webkitgtk-2.32 (or 2.31, but it's pre-release).

comment:5 by Douglas R. Reno, 3 years ago

Summary: GNOME-40 External Libraries - glib vala webkitgtk (wait for 2.32) pygobject gobject-introspection gtk-4.0GNOME-40 External Libraries - glib vala webkitgtk (wait for 2.32) pygobject gobject-introspection gtk-4.0 gtksourceview-5 libdazzle sysprof at-spi2-core glib-networking gdk-pixbuf

Add the following packages:

  • gtksourceview
  • libdazzle
  • sysprof
  • at-spi2-core
  • glib-networking
  • gdk-pixbuf

comment:6 by Douglas R. Reno, 3 years ago

Summary: GNOME-40 External Libraries - glib vala webkitgtk (wait for 2.32) pygobject gobject-introspection gtk-4.0 gtksourceview-5 libdazzle sysprof at-spi2-core glib-networking gdk-pixbufGNOME-40 External Libraries - glib vala webkitgtk (wait for 2.32) pygobject3 gobject-introspection gtk-4.0 gtksourceview-5 libdazzle sysprof at-spi2-core glib-networking gdk-pixbuf

Change pygobject to pygobject3 to make the currency script happy

comment:7 by Douglas R. Reno, 3 years ago

I will begin on these on Wednesday, assuming the amount of new updates has calmed down by that point.

comment:8 by Douglas R. Reno, 3 years ago

Summary: GNOME-40 External Libraries - glib vala webkitgtk (wait for 2.32) pygobject3 gobject-introspection gtk-4.0 gtksourceview-5 libdazzle sysprof at-spi2-core glib-networking gdk-pixbufGNOME-40 External Libraries - glib vala webkitgtk (wait for 2.32) pygobject3 gobject-introspection gtk-4.0 gtksourceview4 libdazzle sysprof at-spi2-core glib-networking gdk-pixbuf

Change gtksourceview-5 to gtksourceview4

comment:9 by Douglas R. Reno, 3 years ago

Summary: GNOME-40 External Libraries - glib vala webkitgtk (wait for 2.32) pygobject3 gobject-introspection gtk-4.0 gtksourceview4 libdazzle sysprof at-spi2-core glib-networking gdk-pixbufGNOME-40 External Libraries - glib vala webkitgtk (wait for 2.32) pygobject3 gobject-introspection gtk-4.0 gtksourceview4 libdazzle sysprof at-spi2-core glib-networking gdk-pixbuf tepl

Add tepl to the mix

comment:10 by Douglas R. Reno, 3 years ago

Summary: GNOME-40 External Libraries - glib vala webkitgtk (wait for 2.32) pygobject3 gobject-introspection gtk-4.0 gtksourceview4 libdazzle sysprof at-spi2-core glib-networking gdk-pixbuf teplGNOME-40 External Libraries - glib vala webkitgtk (wait for 2.32) pygobject3 gobject-introspection gtk-4.0 gtksourceview4 libdazzle sysprof at-spi2-core glib-networking gdk-pixbuf tepl gtk+3

Add gtk+3 into the fray

comment:11 by Douglas R. Reno, 3 years ago

Summary: GNOME-40 External Libraries - glib vala webkitgtk (wait for 2.32) pygobject3 gobject-introspection gtk-4.0 gtksourceview4 libdazzle sysprof at-spi2-core glib-networking gdk-pixbuf tepl gtk+3GNOME-40 External Libraries - glib vala pygobject3 gobject-introspection gtk-4.0 gtksourceview4 libdazzle sysprof at-spi2-core glib-networking gdk-pixbuf tepl gtk+3

comment:12 by Douglas R. Reno, 3 years ago

Priority: normalelevated

glib

2.67.1

Overview of changes in GLib 2.67.1
==================================

* Deprecate `g_time_zone_new()` in favour of `g_time_zone_new_identifier()`,
  which makes error checking easier (#553)

* Remove `volatile` from various public APIs, including `G_DEFINE_*`. You should
  adjust your code to not use `volatile` for atomic variables, `GOnce`
  variables, or mostly anything else (see
  http://isvolatileusefulwiththreads.in/c/). (#600)

* Support passing file handles to `gdbus` command line tool (work by
  Norbert Pocs and Tim Waugh) (#961)

* Add `g_assert_cmpstrv()` test convenience function (work by Niels De Graef) (#2015)

* Changes to the behaviour of the `G_URI_FLAGS_SCHEME_NORMALIZE` scheme
  normalization flag in `GUri` (work by Carlos Garcia Campos) (#2257, !1716)

* Add new `--run-prefix` and `--skip-prefix` options to GTest, to allow running
  or skipping test suites by prefix (work by Frederic Martinsons) (!1738)

* Fix thread-safety of `GBinding`; see the updated documentation for
  `g_object_bind_property()` for full details — if your code uses `GBinding`
  across threads, you should re-check it against the latest documentation, use
  `g_binding_unbind()` rather than implicitly dropping the binding with your
  last `g_object_unref()` call, and use `g_binding_dup_source()`/`g_binding_dup_target()`
  instead of `g_binding_get_source()`/`g_binding_get_target()`
  (work by Sebastian Dröge) (!1745)

* Bugs fixed:
 - #553 Improved error-handling when timezone lookup fails
 - #600 Remove "volatile" from G_DEFINE_*
 - #961 gdbus tool: file handle passing doesn't work
 - #994 mark g_assert_* as "noreturn" also on MSVC
 - #1560 Can't get data for empty compressed resources
 - #1592 Main loop ignores GPollFD sources when there is at least one source ready with priority higher than default one
 - #1833 meson: reconsider G_DISABLE_CAST_CHECKS handling
 - #1849 Documentation of g_set_object(): can object_ptr be null?
 - #1963 Follow-up from "gdbusmessage: Limit recursion of variants in D-Bus messages"
 - #2015 Add g_assert_cmpstrv() test utility
 - #2046 Add pylint and shellcheck CI checks
 - #2074 Big dbus writes with a FD list fail
 - #2076 g_type_register_fundamental() and g_type_add_interface_static() should not trigger valgrind leak warnings
 - #2150 Add URI parsing tests from GstURI to GUri
 - #2221 GLib-GIO:ERROR:../gio/tests/gsocketclient-slow.c:99:on_event: 'connection' should be NULL
 - #2223 Documentation of g_strrstr_len is misleading; suggested fix
 - #2233 GSocketClient crashes on connection failure
 - #2236 Docs: gdbus-codegen example links broken
 - #2253 In gspawn.c, use sysconf() system call on Mac OS, instead of default maxfiles limit of 4096
 - #2257 GUri: apply scheme normalization flag consistently
 - !1251 Improve support for interface types
 - !1385 gobject: allocate parameter list for g_object_new_valist() entirely on stack
 - !1629 Add some tracing to GTask
 - !1699 Fix signedness warnings
 - !1701 gio: Fix some remaining DocBook syntax in a documentation comment
 - !1708 gio: Add missing nullable annotations
 - !1716 guri: Normalize uri segments if they are encoded and add a flag to do scheme-based normalization
 - !1722 gio: Fix various typos of the name ‘D-Bus’
 - !1724 glib/tests/fileutils: Fix expectations when running as root
 - !1726 gdbus: Document the intended semantics of handles and fdsTim Waugh
 - !1731 Make more use of g_assert_no_errno()
 - !1733 gdbusauthmechanismsha1: Don’t create keyring dir when running as setuid
 - !1734 glocalfileinfo: Use a single timeout source at a time for hidden file cache
 - !1735 gobject: Standardise on the term ‘instantiatable’
 - !1737 gscanner: Avoid undefined behaviour copying between union members
 - !1738 Extend the usage of -p option for glib test framework
 - !1740 Fix more warnings
 - !1745 Make GBinding thread-safe (alternative approach)
 - !1746 gkeyfilesettingsbackend: improve error-checking
 - !1747 Fix broken link syntax in g_vasprintf docs
 - !1748 Fix minor Coverity return value warnings
 - !1750 Fix warnings
 - !1754 GWin32AppInfo: Use a thread pool for async appinfo tree rebuilds
 - !1755 Minor Coverity fixes
 - !1756 shellcheck fixes
 - !1757 Python formatting improvements
 - !1758 Fix warnings
 - !1765 Fix more warnings
 - !1766 Fix some gdatetime annotations
 - !1767 tests: Fix GDateTime tests on FreeBSD
 - !1769 gfileicon: Fix unused-but-set variable with G_DISABLE_ASSERT
 - !1770 Minor scan-build fixes
 - !1771 macos: fix frexpl checks in cross-compilation
 - !1776 gio: ‘security_context_t’ is deprecated
 - !1780 Minor Coverity fixes
 - !1781 gspawn: Handle ENOSYS from close_range()
 - !1782 ghostutils: Abandon hostname conversion early if it’s too long

* Translation updates:

2.67.2

Overview of changes in GLib 2.67.2
==================================

* Add `gio launch` command to execute programs (work by Frederic Martinsons) (#54)

* Fix unused parameter warnings in code generated by `gdbus-codegen` (work by Frederic Martinsons) (#1105)

* Officially deprecate `to-pixdata` option for `glib-compile-resources`, in favour
  of simply embedding more modern image formats in linked-in `GResource` files (#1281)

* Support querying and running UWP applications on Windows (work by LRN) (#1991)

* Support `gio trash --restore` and `gio trash --list` commands (work by Frederic Martinsons) (#2098)

* No longer read environment variables for GIO module locations when running as setuid (#2168)

* More progress on fixing compiler warnings (work by Emmanuel Fleury) (!1773 and others)

* `GKeyFile` performance improvements (work by Timm Bäder) (!1829, !1832)

* Improve UDP socket behaviour on Windows (work by Marco Mastropaolo and Ole André Vadla Ravnås) (!1827, !1844)

* Add `-Dtests` meson configure option for disabling tests entirely (work by Ole André Vadla Ravnås) (!1850)

* Bugs fixed:
 - #54 Add `gio launch` command to execute .desktop files
 - #513 GSignal: Impossible to have return values in signals which are G_SIGNAL_RUN_FIRST only
 - #514 GSignal: Only limited usage of accumulator function possible
 - #1105 gdbus-codegen: fix some unused parameter warnings
 - #1188 Crash in gapplication.c:1014 when reading error message if dbus_register returns false without setting error
 - #1281 Update glib-compile-resources and GResource docs to deprecate/remove to-pixdata in stable/master resp.
 - #1283 gvfs-trash error message when unable to create trash directory is unhelpful
 - #1568 GObject tutorial does not mention floating references
 - #1991 W32: Glib cannot run UWP applications
 - #2098 gio trash: restore trashed files to their original location
 - #2168 giomodule: Loads GIO modules even if setuid, etc.
 - #2264 GPtrArray might call qsort() with NULL data
 - #2265 2.67.1 regression: assertion failure starting gnome-terminal
 - #2275 gio/completion/gio: Some variables are not localized
 - #2279 g_source_is_destroyed example uses deprecated GDK API
 - !1304 Extended error
 - !1773 Fix more warnings
 - !1783 gtlsdatabase: remove duplicate precondition check
 - !1784 fuzzing: Add more fuzzing tests for various string parsing functions
 - !1785 glocalfile: Add an assertion to help static analysis
 - !1787 Debuggability improvements in gosxappinfo.m
 - !1788 gdate: Validate input as UTF-8 before parsing
 - !1791 gdatetime: Disallow NAN as a number of seconds in a GDateTime
 - !1794 gio-tool-info: Prevent criticals if mount options are not available
 - !1796 gfileutils: Fix typo in docs
 - !1797 gdatetime: Improve ISO 8601 parsing to avoid floating point checks
 - !1801 glib: Add more missing return value annotations
 - !1802 gobject: More missing return value annotations
 - !1806 tests: Add some rounding tolerance in timeout test
 - !1807 python: Reformat some files to keep style-check-diff happy
 - !1808 tests: Be more lenient with timing checks on asyncqueue pops
 - !1810 gfileinfo: Add missing preconditions to g_file_info_get_attribute_data()
 - !1811 Add more missing nullable annotations
 - !1813 gdbus-codegen: Ignore some flake8 warnings
 - !1815 Fix more warnings
 - !1816 fuzzing: Add more GUriFlags to the URI parsing test
 - !1817 fuzzing: Add more parsing flags to the GKeyFile test
 - !1818 Fix more warnings
 - !1819 Fix more warnings
 - !1821 gdate: Limit length of dates which can be parsed as valid
 - !1822 Fix more warnings
 - !1827 Windows: fix FD_READ condition flag still set on recoverable UDP socket errors.
 - !1829 keyfile: Delay calling g_get_language_names() until it's needed
 - !1830 gsocket: Fix credentials error-handling on Apple OSes
 - !1832 More small GKeyFile performance improvements
 - !1834 Update gvdb
 - !1837 gdatetime.c: Fix MSVC builds for lack of NAN items
 - !1838 Minor improvements to GError documentation
 - !1840 Add nullable annotation for g_file_get_uri_scheme
 - !1841 gthread: Fix incorrect cast
 - !1842 gthread: Port native mutex to Clang
 - !1844 gsocket: Improve default UDP behavior on Windows
 - !1845 gsocket: Fix use-after-close
 - !1848 gwin32: Always use unicode APIs
 - !1850 build: Add option for disabling tests
 - !1855 build: Fix ssize_t detection on older versions of glibc
 - !1856 build: Fix Android system checks
 - !1857 gtestutils: Fix g_assert_not_reached() on MSVC
 - !1861 More GError tests
 - !1863 tests: Ignore -Wformat-nonliteral warning in new GError tests

* Translation updates:

2.67.3

Overview of changes in GLib 2.67.3
==================================

* Add new `g_memdup2()` API to replace `g_memdup()`, which is vulnerable to a
  silent integer truncation and heap overflow problem if not used carefully
  (discovered by Kevin Backhouse, work by Philip Withnall) (#2319)

* Add new `g_dbus_object_path_escape()` and `g_dbus_object_path_unescape()` APIs
  to provide one way of escaping arbitrary bytestrings for use in D-Bus object
  paths (work by Lars Karlitski and Frederic Martinsons) (#968)

* Use `bash-completion.pc` (if available) to provide the path to install
  completion files into (work by Frederic Martinsons) (#1054)

* Fix support for public/private trigraphs in `glib-mkenums` (work by Matthias Klumpp) (!1870)

* Add `glib_debug` configure option to allow disabling debug infrastructure in
  builds with debug symbols enabled (work by Ole André Vadla Ravnås) (!1889)

* Fix a regression where `PATH` would always be searched when using `g_spawn()`,
  even when it wasn’t supposed to (work by Simon McVittie and Thomas Haller) (!1902)

* Override `gio-querymodules` in Meson when used as a submodule (work by Xavier Claessens) (!1909)

* Bugs fixed:
 - #344 gdbus(1) command-line completion issues
 - #968 gdbus: add g_dbus_object_path_{un,}escape
 - #1054 Use pkg-config to get path for bash-completion file installation
 - #1180 GUnixInputStream and GUnixOutputStream don't consider TTYs pollable
 - #2011 Add additional unit tests for D-Bus name watching
 - #2226 clang++ compilation fails on clusterfuzz
 - #2292 Cannot find a common ancestor when running CI style check jobs
 - #2299 GObject introspection annotation of g_closure_new_object() is wrong
 - #2305 GIO security hardening causing gnome-keyring to regress when session bus is provided by dbus-launch (dbus-x11)
 - #2314 gdatetime: math library link issue
 - #2319 GHSL-2021-045: integer overflow in g_bytes_new/g_memdup
 - !610 Various memory leak cleanups to GSettings tests
 - !1804 Add more GIR annotations to gparam.c and gsignal.c
 - !1823 Fix more warnings
 - !1843 gfile: Add Linux kernel headers compatibility kludge
 - !1847 Port to QNX
 - !1853 ginetaddress: Handle systems without IPv6 support
 - !1859 docs: update g_action_group_activate_action() remote activation semantics
 - !1860 glocalfile: Fix an uninitialized variable
 - !1865 tests: Add more debug information to gdbus-connection-slow
 - !1868 gdesktopappinfo: Fix validation of XDG_CURRENT_DESKTOP
 - !1870 mkenums: Support public/private trigraph again
 - !1873 Fix possible integer overflow of g_socket_send_message()
 - !1876 Fixing g_socket_send_message() documentation to make it clearer
 - !1877 Fix more warnings
 - !1878 Another fix on g_socket_send_message()
 - !1879 Fix more warnings
 - !1880 GError documentation tweaks
 - !1881 docs: Move ‘Notes’ section from README to NEWS
 - !1883 gutils: Document caching of XDG directory variables
 - !1884 gthread-win32: Use SetThreadDescription Win32 API for setting thread name
 - !1887 ci: Fix msys-mingw32 CI builds due to package rename
 - !1888 docs: Add documentation for GLIB_VERSION_CUR_STABLE and PREV_STABLE
 - !1889 build: Add glib_debug option
 - !1890 gtype: Improve formatting of GType documentation
 - !1891 Fix more warnings
 - !1893 gwin32appinfo: Fix printf length sub-specifier
 - !1894 gsocket: Fix SO_NOSIGPIPE regression on Darwin
 - !1898 gtestutils: Add g_test_get_path() API
 - !1899 m4macros: replace obsolete macros AC_TRY_RUN and AC_TRY_LINK in glib-2.0.m4
 - !1900 [th/gsignal-cleanup] minor changes to GSignal related code
 - !1901 Check if the remote already exists before adding it.
 - !1902 spawn: Don't set a search path if we don't want to search PATH
 - !1903 m4macros: Increment serial number of glib-2.0.m4
 - !1905 Start to ignore known leaks under AddressSanitizer
 - !1906 gdbus-serialization: Don't leak string containing first serialization
 - !1908 Fix straightforward memory leaks in tests
 - !1909 Meson: override gio-querymodules program
 - !1910 gio: Add explicit virtual g-i annotations for undiscovered invoker relationship
 - !1911 Fix more warnings
 - !1915 Mark g_key_file_get_comment() key parameter as nullable
 - !1919 atomic: Fix type check of g_atomic_pointer_compare_and_exchange()
 - !1921 guri: Mark g_uri_get_host as nullable
 - !1925 gapplication: Fix a memory leak

* Translation updates:

2.67.4

Overview of changes in GLib 2.67.4
==================================

* Add a `g_string_replace()` function (work by Joshua Lee) (#225)

* Add `G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER` flag to simplify
  the common case for writing a D-Bus authentication observer, allowing most
  uses of `GDBusAuthObserver` to be dropped (#1804)

* Add a new `g_spawn_with_pipes_and_fds()` variant which supports renumbering
  FDs (#2097)

* Add new g_memdup2() API to replace g_memdup(), which is vulnerable to a
  silent integer truncation and heap overflow problem if not used carefully
  (discovered by Kevin Backhouse, work by Philip Withnall) (#2319)

* Fix various regressions caused by rushed security fixes in 2.66.6 (work by
  Simon McVittie and Jan Alexander Steffens) (!1932, !1941, #2323)

* Fix a silent integer truncation when calling g_byte_array_new_take() for
  byte arrays bigger than G_MAXUINT (work by Krzesimir Nowak) (!1942)

* Fix `g_utf8_strdown()` to fix some issues in Turkish
  (work by Kjell Ahlstedt) (!1930)

* Bugs fixed:
 - #225 GString doesn't have a g_string_replace() function
 - #587 g_input_stream_skip() out-of-bounds behavior is inconsistent between implementations
 - #1804 Add G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER flag
 - #2097 GSubprocessLauncher with FD assignment can clash with g_spawn_async internal pipe
 - #2315 httpproxy: Need overflow protection when reading response during connection establishment
 - #2319 CVE-2021-27219 (GHSL-2021-045): integer overflow in g_bytes_new/g_memdup
 - #2322 g_test_dbus: double output when piping
 - #2323 [GLIB 2.66.6] g_io_channel_set_line_term() stopped working with null terminated strings and length -1
 - !1917 Adding a missing test on integer overflow within g_http_proxy_connect()
 - !1918 Fix more warnings
 - !1923 Add support for Tilix and Konsole
 - !1930 guniprop: Fix g_utf8_strdown() for Turkish locale
 - !1932 gtlspassword: Fix inverted assertion
 - !1934 gdbus: Reject attempts to set future connection or server flags
 - !1938 Fix more warnings
 - !1939 ci: Temporarily disable macOS CI job as runner is offline
 - !1940 Fix more warnings
 - !1941 gkeyfilesettingsbackend: Fix basename handling when group is unset
 - !1942 CVE-2021-27218: gbytearray: Do not accept too large byte arrays
 - !1947 Revert "Merge branch 'wip/pwithnall/macos-ci-disable' into 'master'"
 - !1948 tests: Use a more realistic language code than sv_SV
 - !1949 gatomic: Make fallback g_atomic_pointer_get type-safe
 - !1951 Add a test for parsing 0 as double
 - !1955 tests: Add missing NULL terminator to spawn-singlethread test

* Translation updates:

2.67.5

Overview of changes in GLib 2.67.5
==================================

* Fix more issues with `glib_typeof` macro from 2.67.3–2.67.4 (work by
  Iain Lane, Simon McVittie) (#2331, !1975)

* Fix regression with some FD mappings passed to `g_subprocess_launcher_spawnv()`
  caused by changes for #2097 in GLib 2.67.4 (work by Olivier Fourdan,
  Philip Withnall) (#2332)

* Fix detection of `str[n]casecmp()` when building with `clang-cl` (work by
  Aleksandr Mezin) (#2337)

* Use zlib from subproject if configured with `wrap_mode=forcefallback` (work by
  Seungha Yang) (!1959)

* Bump Visual Studio compilation requirement to VS 2012, and Windows 8 SDK for
  GLib 2.67.x onwards (work by Chun-wei Fan) (!1970)

* Bugs fixed:
 - #832 Some tweaks re: GRWLock
 - #2331 glib 2.67.3: <glib.h> can no longer be included in extern "C" blocks
 - #2332 Glib 2.67.4 causes gnome-shell to exit when spawning Xwayland on demand
 - #2333 Missing relation between g_file_info_get_size() and G_FILE_ATTRIBUTE_STANDARD_SIZE attribute in documentation
 - #2337 Linking fails when building with clang-cl because of str[n]casecmp
 - !1936 tests: Fix leak of dlopened module in pollable test
 - !1954 Change SkipAsyncData fields to be gsize (and not gssize)
 - !1956 The ETag returned by various GFile functions is nullable
 - !1959 meson: Use subproject zlib if "wrap_mode=forcefallback" was specified
 - !1961 gkeyfilesettingsbackend: check for errors when creating file monitors
 - !1970 README.win32.md: Mention about Window 8+ SDK requirement
 - !1971 gio/tests/pollable.c: Fix build on non-Linux UNIX
 - !1975 gatomic.h: Make `glib_typeof` API break opt in.

* Translation updates:

2.67.6

Overview of changes in GLib 2.67.6
==================================

* Fix a security issue when using `g_file_replace()` with
  `G_FILE_CREATE_REPLACE_DESTINATION` (#2325)

* Disallow operations on the empty path with `g_file_new_from_path()` (#2328)

* Various fixes for GLib when building with clang-cl on Windows (work by
  Aleksandr Mezin) (#2341, #2344)

* Bugs fixed:
 - #2325 file-roller symlink attack
 - #2327 Teach glib-mkenums about GLIB_AVAILABLE_ENUMERATOR_IN_2_68, and start using it
 - #2328 g_file_new_for_path("") yields CWD, which seems wrong
 - #2341 glib-genmarshal output is sometimes empty because output file is not closed
 - #2344 c_std=c11: gbitlock.c: ‘asm’ undeclared
 - !1962 Validate D-Bus machine ID after loading
 - !1976 Use the right permissions for directory watching on Win32
 - !1977 gio/tests/{meson.build,pollable.c}: Determine libutil SONAME at build time
 - !1980 glib.supp: Add another system thread suppression

* Translation updates:

2.68.0

Overview of changes in GLib 2.68.0
==================================

* Bugs fixed:
 - !1987 build: Drop gconstructor_as_data_h usage from glib-compile-schemas
 - !1989 glib.supp: Generalize some suppressions
 - !1992 gbytesicon: Fix error in g_bytes_icon_new() documentation
 - !1994 glocalfileoutputstream: Tidy up error handling
 - !1995 tests: Fix copy/paste error in queue test

* Translation updates:

CVE-2021-27218 has been marked as High by NVD and has not been fixed in any other glib release - probably because this was during the end of their freeze cycle.

The vulnerability only affects 64-bit platforms. The description from NVD is:

An issue was discovered in GNOME GLib before 2.66.7 and 2.67.x before 2.67.4. If g_byte_array_new_take() was called with a buffer of 4GB or more on a 64-bit platform, the length would be truncated modulo 2**32, causing unintended length truncation.

Additional information can be found at https://nvd.nist.gov/vuln/detail/CVE-2021-27218

Unfortunately, this means that I must mark this ticket as at least elevated.

comment:13 by Douglas R. Reno, 3 years ago

I'm going to rediff the glib messages patch to reduce the amount of fuzz warnings.

comment:14 by Douglas R. Reno, 3 years ago

The rediffed glib patch went in at r4283 in the patches repo

comment:15 by Douglas R. Reno, 3 years ago

Vala

NOTE: This package now uses g_memdup2() as well instead of the vulnerable g_memdup().

0.51.1

Vala 0.51.1
===========
 * Highlights:
  - Support "binding" to bind GtkCallback to class of given property [#1093]
  - Add support for type narrowing [#894]
  - Support chain up to simple generics constructor [#342]
  - Perform runtime version check of libvala [#88]
  - girparser: Handle anonymous delegate not backed by virtual-method or signal
  - Add support for 'opaque' compact classes [#1129]
  - Add further support for params arrays in constructors [#128]
  - Improve handling of "NoWrapper" attribute
  - Improve support of SimpleType struct constructors
  - Use __attribute__ instead of G_GNUC_* in POSIX profile
  - Add SDL 2.x bindings [#1032] amd drop SDL 1.x

 * Various improvements and bug fixes:
  - codegen:
    + Improve GValueModule.visit_cast_expression()
    + Drop obsolete dedicated handling of property value-parameter
    + Apply CCodeModifiers.PRINTF to "string_printf" (POSIX)
    + Allow CCode.type_cname for classes and use get_ccode_type_name()
    + Always use G_TYPE_INSTANCE_GET_CLASS/INTERFACE for external symbols
    + Also check array type of variable argument for ref parameters
    + Don't leak array memory after it was implicitly copied
    + Use g_boxed_free in free-wrapper for heap-allocated GLib.Value
    + Don't leak GLib.Value when implicitly unboxing it
    + Don't leak memory moving heap-allocated struct to stack
    + Chain up to base struct destroy function
    + Use g_memdup2 if target glib >= 2.68 is set
    + Replace "g_memdup" with "_vala_memdup2" for target glib < 2.68
    + Correctly retrieve symbol_reference of nested cast expressions [#1134]
    + Strip all nested occurances of CCodeCastExpression [#1134]
  - vala:
    + Improve detection of duplicate package source files
    + GtkChild fields/properties must be declared as unowned [#1121]
    + Don't allow assigning GtkChild fields/properties [#1121]
    + Apply stricter condition for lambda to delegate assignment
    + Don't allow disposable SimpleType structs
    + Rename Loop to LoopStatement and introduce a common base class
    + GLib.Value unboxing returns unowned value
    + Don't allow GLib.Value casting to nullable struct/simple types
    + Add Block.unreachable_exit and have it set by FlowAnalyzer [#838]
    + Convert Report.*() to real printf-like functions
    + Avoid taking extra reference of foreach collection for index iteration
    + Make sure parent_symbol for special async parameters is available
    + Require a valid DataType instance for every TargetValue
  - girparser:
    + Minor improvement to field getter detection
    + Apply "delegate_target" metadata for methods and parameters
    + Apply "destroy_notify_cname" metadata for fields
    + Apply "type_get_function" metadata for classes and inferfaces
    + Set CCode.type_cname for classes if it doesn't match our default
  - girwriter: Infer gir_namespace/version from target GIR filename [#606]
  - girwriter: Write instance-parameter elements [#1128]
  - libvaladoc/html: Don't sort struct fields to keep their original order
  - libvaladoc: Correctly retrieve value for Api.Class.is_compact
  - libvaladoc: Add wrapper for "agedge" of graphviz
  - valadoc: Correctly set verbose flag on CodeContext
  - valadoc: Replace png icons with elementary's svg version

 * Bindings:
  - Add enchant-2 bindings for Enchant 2.x
  - Add gnu.vapi with binding for getopt_long() and some other GNU APIs
  - Add libunwind-generic binding
  - Fix several bindings which lead to invalid code by using them in:
    cairo, gobject-2.0, pango, goocanvas-2.0, curses, alsa, bzlib, sqlite3,
    libgvc, posix, gstreamer-1.0, gdk-3.0, gdk-x11-3.0, gtk+-3.0, gtk4,
    fuse, libxml-2.0
  - curses: Remove initial “w” from some Window method names for consistency
  - gdk-pixbuf-2.0: Fix Pixbuf.save_to_streamv_async()
  - gdk-pixbuf-2.0: Update to 2.42.3~
  - gio-2.0: Fix binding of PollableOutputStream.write*_nonblocking()
  - gio-2.0,gtk+-3.0,gtk4: Drop explicit c-type attributes of va_list parameters
  - gio-2.0: Pick up missing invoker for some AppInfo/File.*() methods
  - gio-2.0: Update to 2.67.3
  - glib-2.0: Add GLib.[S]List.is_empty() convenience methods for non-null
  - glib-2.0: Add new symbols from 2.68
  - glib-2.0: Bind assert_cmp* functions [#395]
  - glib-2.0: Improve type of OptionEntry.flags field
  - glib-2.0: Make PtrArray a subclass of GenericArray
  - gobject-2.0: Add new symbols from 2.68
  - gstreamer-1.0: Set CCode.type_id of MiniObject to G_TYPE_BOXED [#1133]
  - gstreamer: Update from 1.19.0+ git master
  - gtk+-2.0,javascriptcoregtk-4.0: Wrong usage of CCode.type_cname attribute
  - gtk+-3.0,gtk4: Fix some delegate return values and parameters
  - gtk4: Update to 4.1.0+2712f536
  - posix: Add POSIX, GNU and BSD Regex APIs
  - webkit2gtk-4.0: Update to 2.31.1

0.51.2

Vala 0.51.2
===========
 * Various improvements and bug fixes:
  - vala:
    + Check type-arguments in base-types/prerequisites of class/interface [#404]
    + Include type-checks in preconditions of methods for type narrowing [#894]
    + Capturing va_list parameters/variables is not allowed [#1136]
    + Properly parse and handle chained initialization of members [#1137]
  - codewriter: Output valid vala syntax for LoopStatement and don't write
    trailing ";" after body of WithStatement

 * Bindings:
    + gstreamer: Update from 1.19.0+ git master
    + vapi: Update GIR-based bindings

0.51.3

Vala 0.51.3
===========
 * Various improvements and bug fixes:
  - codegen:
    + Don't use volatile modifier in glib API when targetting >= 2.68 [glib!1719]
    + CCodeBaseModule.get_type_id_expression () won't return null
    + Don't wrongly emit declaration for default-handler of signals
    + Include "string.h" for strcmp() (POSIX)
  - vala:
    + Generics value holding struct pointer requires casting on access [#347]
    + Infer needle type for "in" expression on enum [#1138]
    + Don't allow "in" operation with different enum types [#1139]
    + Improve context check whether property is writeable on assignments
    + Include "stdlib.h" for Enum.to_string() (POSIX) [#1143]
    + Set proper source_reference for implicit "this" and "result" variables
    + Report error for invalid inner operand of unary expressions
  - girwriter: Output default handler of signals

 * Bindings:
  - glib-2.0: Add new symbols from 2.68
  - webkit2gtk-4.0: Update to 2.31.90
  - vapi: Update GIR-based bindings

0.51.90

Vala 0.51.90
============
 * Various improvements and bug fixes:
  - codegen:
    + More use of get_ccode_type_name()
    + "_first_array" parameter for params-array is variadic too
    + Inherit GType from base struct of SimpleType structs
  - vala:
    + Report warning if --target-glib=auto was not evaluated successfully
    + Fix ownership inheritance of "unowned var" in foreach statement
    + Use pre-resolved symbol/type of SemanticAnalyzer if possible
  - gdbus: Don't leak memory of deserialized arguments on error in wrapper method
  - girparser: Reuse populated Node.gtype_struct_for instead of resolving again
  - girparser: Evaluate "glib:type-struct" twice to pick up reparented structs
  - testrunner: Include Gio-2.0/gio-2.0 for GIR tests too

 * Bindings:
  - gtk4: Update to 4.1.1+f8f90d85

0.51.91

Vala 0.51.91
============
 * Various improvements and bug fixes:
  - codegen:
    + Error for missing type-arguments of HashTable (de)serialization [#1147]
    + Free intermediate temp-variables of postcondition expression [#80]
    + Use the one available source_reference for internal error [#436]
    + Fix access to captured generics in async method of interfaces [#537]
    + Don't ever create null-aware free macro for GenericType
    + Don't add generics arguments/parameters to async finish method
    + Drop inner casts before converting between generics and integers
  - vala:
    + Add missing null-check in DataType.get_type_signature()
    + Check array type of declarations for errornous type-arguments
    + Check (optional) type-arguments of array creation expression
    + Replace all type parameter occurances in parameters for signal delegate

 * Bindings:
  - glib-2.0,gio-2.0: Add some missing type-arguments
  - vapi: Update GIR-based bindings

0.52.0

Vala 0.52.0
===========
 * Various improvements and bug fixes:
  - codegen: Include "glib.h" for deprecated symbols (GOBJECT) [#1155]
  - vala: Improve error for incompatible expressions in conditional expression
  - vala: Check for unused attributes unconditionally
  - girparser: Allow overriding of "Compact" attribute for classes
  - girparser: Handle empty "<type/>" element and report an error
  - girparser: Add support for NoWrapper metadata for methods
  - build: Add --enable-test-asan configure option

 * Bindings:
  - gio-2.0: Add some missing NoWrapper and CCode.has_typedef attributes
  - gnutls: Fix some binding errors
  - gsl: Fix some binding errors
  - gstreamer: Update from 1.19.0+ git master
  - gtk4: Add Gtk.INVALID_LIST_POSITION [#1151]
  - gtk4-unix-print: Switch to gir
  - gtk4: Update to 4.1.2
  - linux: Provide Input.Event.input_event_sec/input_event_usec fields [#1152]
  - vapi: Fix a couple of attribute typos
  - webkit2gtk-4.0: Update to 2.31.91

comment:16 by Douglas R. Reno, 3 years ago

gobject-introspection

1.67.1

1.67.1 - 2021-03-12
-------------------

* Requires Python 3.6+
* Update GLib annotations
* Fix compatibility with Python 3.10 :issue:`358`
* Fix build with GIR data disabled :mr:`248`
* Add test object for signal marshallers :mr:`259`

1.68.0

1.68.0 - 2021-03-19
-------------------

* Update GLib annotations :mr:`262`
* docs: cleanup :mr:`261`
* Fix syntax errors in gir-1.2.rnc :mr:`256`

comment:17 by Douglas R. Reno, 3 years ago

pygobject3

3.40.0

3.40.0 - 2021-03-19
-------------------

* GTK 4 compatibility fixes :mr:`148` :mr:`159` :mr:`144` :mr:`145`
* Python 3.9 and 3.10 compatibility fixes :mr:`152` :mr:`156`
* New minimal dependency requirements due to dropping support for Ubuntu 16.04 :mr:`151`
  * Python 3.6+
  * glib 2.56+
  * gobject-introspection 1.56+
  * pycairo 1.16+

3.40.1

3.40.1 - 2021-03-30
-------------------

* Fix tests with glib 2.68 :mr:`166`
* Fix a regression with marshalling partial() objects :mr:`165` :issue:`464`

Unfortunately test_gdbus.py still has problems. It appears to be timing out when contacting the notifications daemon. This might work in GNOME, but I don't have the environment up because updating certain packages is liable to cause it to crash. I'm currently in XFCE (and I'll probably move to Plasma before starting GTK3).

In the meantime, "mv -v tests/test_gdbus.py{,.nouse}" works to disable the failing test, so that's what I'll put in.

comment:18 by Douglas R. Reno, 3 years ago

glib-networking

2.68.alpha

2.68.alpha - January 7, 2021
============================

 - Download and validate missing intermediate certificates (requires GnuTLS 3.7) (#96)
 - OpenSSL backend now uses system crypto policy (#106)
 - Remove use of g_assert in testsuite (#137)
 - Restore support for old versions of OpenSSL (#156)
 - Implement TLS channel bindings API (!139, Ruslan Marchenko)
 - Implement PKCS#11 API (!140, Patrick Griffis)
 - Update testsuite for Fedora 33 crypto policy (!141)
 - Fix NULL dereference in g_tls_connection_base_read_message (!144, Vladimir D. Seleznev)
 - Fix a couple code issues found by Coverity

2.68.rc

2.68.rc - March 12, 2021
========================

 - Improve heuristic for returning G_TLS_ERROR_CERTIFICATE_REQUIRED
 - Fix check for certain handshake failure conditions

2.68.0

2.68.0 - March 19, 2021
=======================

 - Fix double free in GnuTLS client certificate request code (!147)

comment:19 by Douglas R. Reno, 3 years ago

at-spi2-core

2.39.1

What's new in at-spi2-core 2.39.1:

* Don't use gdbus-broker if not running under systemd (#25).

* Unref bus at the end of cleanup.

* Fix XML interfaces (#26).

* Use unix sockets instead of abstract sockets (#28).

* Added a device API to replace the old API for capturing key
  grabs. This is needed for toolkits that do not report keystrokes
  to atk, such as gtk 4.

2.39.90

What's new in at-spi2-core 2.39.90:

* Fix build with X11 disabled.

* Various fixes for the new device API used for key monitoring and grabbing.

* Fixed several memory leaks.

2.39.90.1

What's new in at-spi2-core 2.39.90.1:

* Fix a crash introduced in 2.39.90, along with a few warnings (#30).

2.39.91

What's new in at-spi2-core 2.39.91:

* Fix a couple of memory leaks.

* Remove const from AtspiDeviceListenerCB prototype (#31).

2.40.0 contains no changes from 2.39.91

comment:20 by Douglas R. Reno, 3 years ago

gdk-pixbuf

2.42.4

2.42.4 (stable)
===

 - Make enum type registration thread safe
 - Do not install skipped test files [Jan Tojnar]
 - Fix GIF initialization [Simon McVittie]
 - Always run GIF loader tests [Simon McVittie]
 - Fix leaks discovered via ASan [Simon McVittie]
 - Expose GdkPixbufLoader API via introspection [Paolo Borelli]
 - Fix revert-to-previous first frame behaviour for GIF files [Robert Ancell, #166]
 - Link to libintl if needed [Fabrice Fontaine]
 - Improve support for using gdk-pixbuf as a subproject [Xavier Claessens]
 - Fix build with GModule disabled [Fabrice Fontaine]
 - Use gi-docgen to generate the API reference from introspection data

I'll note that it's going to try using gi-docgen now for it's API documentation, but it does include it in the tarball so --wrap-mode=nodownload should not be required.

comment:21 by Douglas R. Reno, 3 years ago

gtk+3

3.24.28

Overview of Changes in GTK+ 3.24.28
===================================

* Input:
 - Improve dead key handling

* CSS:
 - Fix rendering of scaled text shadows

* Wayland:
 - Fix matching of accelerators with multiple layouts

* X11:
 - Trap errors from the COW

* Build:
 - Make gtk3-update-icon-cache output reproducible

* Translation updates:
 Serbian

comment:22 by Douglas R. Reno, 3 years ago

libdazzle

3.40.0

==============
Version 3.40.0
==============

Changes in this release:

 • Build system fixes for mingw
 • PangoFontDescription to CSS conversion improvements

comment:23 by Douglas R. Reno, 3 years ago

Sysprof

3.39.90

Overview of changes in Sysprof 3.39.90
======================================

 * Build fixes for macOS
 * polkit is optional (again) for sysprof-cli
 * Various fixes in kernel symbol resolving
 * Fix build when stack-protector is not used
 * Support elfparser on some interesting platforms
 * Translation updates

3.39.92

Overview of changes in Sysprof 3.39.92
======================================

 * Use pic when compiling static libsysprof-capture
 * Some changes to podman symbol decoding
 * Handle NULL readers gracefully from capture cursors
 * Use g_memdup2()
 * UI tweaks
 * Translation updates

3.39.94

Overview of changes in Sysprof 3.39.94
======================================

 * Fix some licenses in headers.
 * Add API to sysprofd/libsysprof to tweak.
   /proc/sys/kernel/perf_event_paranoid to improve capture quality.
   Tooling will now always try to change this value while profiling
   the system and ignore upon failure.
 * ftruncate() before overwriting proc files.
 * GTK aid has been removed as it is always enabled through the
   use of control-fd now.
 * Add a new Overlay capture frame type for mapping overlays between
   the host and the process filesystem namespace.
 * Use overlays to map podman containers to overlay directories
 * Use overlays to map flatpak containers to overlay directories for
   both /app and /usr.

3.40.0

Overview of changes in Sysprof 3.40.0
=====================================

 * Improve symbol resolving on OSTree-based systems
 * Translation updates

3.40.1

Overview of changes in Sysprof 3.40.1
=====================================

 * Fix build system issue which caused symbols from libsysprof-capture.a to leak
   into the ABI of libraries consuming it. This was due to inheritance of GNU
   default symbol visibility. A recompilation of those libraries is necessary.

comment:24 by Douglas R. Reno, 3 years ago

tepl

6.00.0

News in 6.00.0, 2021-03-24 (not yet released)
--------------------------
* API changes:
 - The TeplInfoBar class has been reworked.

* New API:
 - tepl_pango_font_description_to_css()
 - TeplLanguageChooser
 - TeplLanguageChooserWidget
 - TeplLanguageChooserDialog
 - TeplProgressInfoBar
 - Utility functions: add a few functions.

* Misc:
 - Translation updates.

comment:25 by Douglas R. Reno, 3 years ago

Note: gedit will probably fail to build if tepl-5 is uninstalled before I update the book to gedit-40. That should happen this weekend, so the breakage shouldn't be around for long.

comment:26 by Douglas R. Reno, 3 years ago

Time for GTK+-4. I've uploaded the release notes to my webspace on higgs because they're 2,174 lines long! This almost reminds me of Qt, and there are a lot of new dependencies. It remains to be seen if it'll reduce the amount of packages in the book in the future.

In the meantime, I might have to add libcloudproviders, at least if Arch is anything to go by right now.

This will be a challenging addition. gtksourceview-5.0.0 will need to be added as well (listed as gtksourceview4 in this ticket to make the currency script happy), but my first priotity is getting it working.

Release notes: http://www.linuxfromscratch.org/~renodr/GTK4_Changes.txt

GTK4 can be downloaded here: https://ftp.acc.umu.se/pub/gnome/sources/gtk/4.2/gtk-4.2.0.tar.xz

comment:27 by Douglas R. Reno, 3 years ago

It looks like we can get away without libcloudproviders!

However, the tests are quite finnicky. I'm unable to get them to run properly in anything other than a Wayland session (and even then, 681 pass/30 fail). In an X session, 683 will fail, and 29 will pass.

I'll make a note that running the tests in a Wayland-based session are recommended.

On that note, gtk4-demo-application works great in XFCE, so it seems that it's only related to the tests.

comment:28 by Douglas R. Reno, 3 years ago

Here are my current notes for gtk4. I normally take these kind of notes for package additions. I did notice a few inaccuracies in the gtk3 page that I'll fix too. My next commit will have all of the things from this ticket in it.

One thing that is interesting to me is that there is now a multimedia subsystem in GTK4, similar to QtMultimedia, that lets application developers add audio/video/picture support into their programs easier. You need gst-plugins-bad and ffmpeg for that.

After this next build of gtk4 (I need -Dcolord=enabled for my printer), I'm going to swap into XFCE and check on the demo applications again, rebuild vte/gjs/webkitgtk to make sure no new errors occur, and then continue onto gtksourceview5.

gtk-4.2.0 ADDITION
Ticket #14798
--------------------------

Download URL:
   HTTP: 	https://download.gnome.org/software/gtk/4.2/gtk-4.2.0.tar.xz
   FTP: 	ftp://ftp.acc.umu.se/pub/gnome/sources/gtk/4.2/gtk-4.2.0.tar.xz
Download Size: 25 MB
MD5SUM: 656c54a43b252ef1955d0787bab1a7aa

Elasped Time: 127.6
Installed Files Size: 1034.675 MB (1.0GB), 138MB installed
SBU Value: 1.2 SBU

Elapsed Time (with tests): 156.3
Installed Files Size (with tests): 1092.386 MB
SBU Value (with tests): 1.5 SBU

Difference in Elasped Time: 28.7
Difference in Installed Files Size:  58 MB
Difference in SBU Value: 0.3 SBU

DEPENDENCIES: 
	- Required dependency: gdk-pixbuf
	- Required dependency: pango
	- Required dependency: graphene
	- Required dependency: libxkbcommon
	- Required dependency: iso-codes
	- Required dependency: libepoxy
	- Required dependency: fribidi
	- Required dependency: wayland-protocols
	- Recommended dependency: adwaita-icon-theme (default for some gtk4 settings keys)
	- Recommended dependency: hicolor-icon-theme (needed for tests)
	- Recommended dependency (Required if building GNOME): gobject-introspection
	- Recommended dependency: ffmpeg
	- Recommended dependency: gst-plugins-bad
	- Recommended dependency: librsvg
	- Optional dependency: sassc
	- Optional dependency: tracker3
	- Optional dependency: colord
	- Optional dependency: cups
	- Optional dependency: rest
	- Optional dependency: json-glib
	- Optional external dependency: gi-docgen (https://gitlab.gnome.org/ebassi/gi-docgen)
	- Optional external dependency: libcloudproviders (https://gitlab.gnome.org/World/libcloudproviders)
	- Optional external dependency: vulkan (https://vulkan.lunarg.com/sdk/home)
	
INSTALLED FILES:
	- Installed program: gtk4-broadwayd
	- Installed program: gtk4-builder-tool
	- Installed program: gtk4-demo
	- Installed program: gtk4-demo-application
	- Installed program: gtk4-encode-symbolic-svg
	- Installed program: gtk4-icon-browser
	- Installed program: gtk4-launch
	- Installed program: gtk4-print-editor
	- Installed program: gtk4-query-settings
	- Installed program: gtk4-update-icon-cache
	- Installed program: gtk4-widget-factory
	- Installed directory: /usr/include/gtk-4.0
	- Installed directory: /usr/lib/gtk-4.0
	- Installed library: libgtk-4.so
	- Installed directory: /usr/share/gtk-4.0

DESCRIPTION: The GTK 4 package contains libraries used for creating graphical user interfaces for applications.

INSTALLATION COMMANDS:

mkdir build &&
cd       build &&
meson --prefix=/usr -Dbroadway_backend=true ..
ninja
ninja test
ninja install

TEST SUITE:
	- Make a note about the tests needing to be run in a Wayland session, otherwise significant failures will occur.
	Ok:                 690 
	Expected Fail:      1   
	Fail:               21  
	Unexpected Pass:    0   
	Skipped:            1   
	Timeout:            0 
	Most of the tests that fail are related to gtk:reftest and gtk:gsk, similar to gtk3.

COMMAND EXPLANATIONS:
	-Dbroadway_backend=true: This switch enables the HTML5 GDK backend.
	-Dcloudproviders=enabled: Use this switch if you have [INSERT LINK TO LIBCLOUDPROVIDERS HERE] installed and wish to enable support for cloud providers in the File window.
	-Dsysprof=enabled: Use this switch if you have [insert xref to sysprof here] installed and wish to enable tracing support for GTK4 applications.
	-Dtracker=enabled: Use this switch if you have [insert xref to tracker3 here] installed and wish to use search functionality when running a file chooser.
	-Dcolord=enabled: Use this switch if you have [insert xref to colord here] installed and wish to use colord with the CUPS printing backend.
	-Dsassc=enabled: Use this switch if you have [insert xref to sassc here] installed and wish to rebuild the themes.
	-Dgtk_doc=true: Use this switch if you have [insert xref to gtk_doc here] installed and wish to generate the API reference documentation.

SHORT DESCRIPTIONS: 
	gtk4-broadwayd:  provides support for displaying GTK 4 applications in a web browser, using HTML5 and web sockets 
	gtk4-builder-tool: performs various operations on GtkBuilder .ui files
	gtk4-demo: is a simple program that demonstrates some of the tasks that can be done with GTK 4
	gtk4-demo-application: is a simple GTK 4 application which is useful for testing
	gtk4-encode-symbolic-svg: converts symbolic SVG icons into special PNG files. GTK4 can load and recolor these PNGs, just like original SVGs, but loading them is much faster
	gtk4-icon-browser: is a utility to explore the icons in the current icon theme. It shows icons in various sizes, their symbolic variants when avaialble, as well as a description of the icon and its context
	gtk4-launch: launches an application using the given name. The name should match the application desktop file name, as residing in /usr/share/applications, with or without the '.desktop' suffix
	gtk4-print-editor: is a simple program to demonstrate printing using GTK4 applications
	gtk4-query-settings: provides a complete listing of all settings related to GTK4
	gtk4-update-icon-cache: is an icon theme caching utility that creates mmap()able cache files for icon themes
	gtk4-widget-factory: is a program to view GTK4 themes and widgets
	libgtk-4.so: contains functions that provide an API to implement graphical user interfaces

LOCATION: X Libraries

XREF ID MARKER: gtk4

NOTES:

- Copy the Configuration Information from gtk+3, but adapt it to gtk4. 
- Leave the gtk.css stuff out. 
- Change the URL for the settings to  https://developer.gnome.org/gtk4/stable/GtkSettings.html. 
- Change /etc/gtk-3[...] to /usr/share/gtk-4.0/settings.ini

[Settings]
gtk-theme-name = Adwaita
gtk-icon-theme-name = oxygen
gtk-font-name = DejaVu Sans 12
gtk-cursor-theme-size = 18
*** REMOVE *** gtk-toolbar-style = GTK_TOOLBAR_BOTH_HORIZ
gtk-xft-antialias = 1
gtk-xft-hinting = 1
gtk-xft-hintstyle = hintslight
gtk-xft-rgba = rgb
gtk-cursor-theme-name = Adwaita

Change external deps to internal on: vte, gjs, webkitgtk

comment:29 by Douglas R. Reno, 3 years ago

GJS picked up on GTK4 during compilation and seems to work well with it.

WebKitGTK+'s GTK4 implementation does not work as it needs a development version of libsoup (libsoup-2.99.x), which is API and ABI incompatible with libsoup2. The dependency definitely does exist though, so I will make sure that it gets changed to internal. The option to use GTK4 is -DUSE_GTK4=ON. I'm not sure it's worth adding a command explanation for this yet, but I will put a comment in the page.

VTE's dependency definitely does exist, but it's looking for gtk+-4.0, not gtk-4.0. I will change the dependency in the page though and I'll note that -Dgtk4=true is needed to build the GTK-4 widget in a comment. I'm sure that'll come in handy in the future, probably when gnome-terminal is ported over. I suspect the next version of VTE will fix that

On to gtksourceview5...

comment:30 by Douglas R. Reno, 3 years ago

gtksourceview5

4.99.0

News in 4.99.0, 2021-02-12
--------------------------

GtkSourceView 4.99.0 is a beta release targeting GTK 4 and will eventually
become GtkSourceView 5.0.

It is the largest release of GtkSourceView in many releases and contains new
subsystems and performance improvements. More than 300 commits are part of this
release touching everything from syntax highlighting to a new snippet engine.

As GtkSourceView 4.99 moves to using PCRE2, it is possible that some language
definitions will need tweaking for differences between PCRE and PCRE2. So far,
very few changes were necessary within the GtkSourceView codebase but external
language specifications may require some tweaks. In particular, improper
escaping is the only incompatability seen thus far.

* Improvements when converting Pango styling to CSS
* Build system improvements
* GObject modernization
* A new completion engine has been added that reduces overhead and fits with
  GTK 4 lazy lists more closely. It is largely based on the code and design
  from GNOME Builder.
* GtkSourceGutterRenderers are now a GtkWidget allowing more interesting
  features to be implemented by applications.
* Undo management was moved into GTK 4 directly and is no longer part of
  GtkSourceView.
* Syntax highlighting has moved to PCRE2 and utilizes a JIT when available.
* GtkSourceBuffer has a new "cursor-moved" signal.
* A new font "Builder Blocks" from GNOME Builder has been bundled for use
  in the GtkSourceMap.
* To speed up gutter operations, a new GtkSourceLines abstraction has been
  added which allows fewer passes across the source buffer to extract features
  for display.
* A new snippet engine based originally upon GNOME Builder's but with a
  new snippet language based on XML similar to language-specs and
  style-schemes.
* A new "Assistant" abstraction which can be used for tooltips and eventually
  hover providers.
* Updates to go.lang, cmake.lang, meson.lang, csharp.lang.
* Translation updates

5.0.0

News in 5.0.0, 2021-03-19
-------------------------

GtkSourceView 5.0 is the first stable release of GtkSourceView targeting the
GTK 4 toolkit. It is the culmination of about a year of development.

Numerous new features were added that are not available in the 4.8 series of
GtkSourceView.

Notably:

 * A new GListModel-based completion engine with a refresh on autocompletion
   interface styling which was upstreamed from GNOME Builder.
 * Syntax languages are now implemented using PCRE2 instead of GRegex which
   also allowed for enabling the PCRE2 JIT for faster syntax highlighting.
 * GtkSourceView can now integrate with Sysprof to generate performance
   information. This may be helpful to application developers to help optimize
   application rendering on GTK 4.
 * Many internal components have become native GtkWidgets.
 * A new code-snippet engine with an XML-based language have been added which
   were upstreamed from GNOME Builder.
 * Support for interactive tooltips using GtkSourceHover which was upstreamed
   from GNOME Builder.
 * You can now write custom indenters using GtkSourceIndenter which was
   upstreamed from GNOME Builder.
 * The overview map now bundles a custom "BuilderBlocks" font which was
   upstreamed from GNOME Builder.
 * Undo management is now part of GTK 4.
 * Translation updates.

comment:31 by Douglas R. Reno, 3 years ago

Resolution: fixed
Status: assignedclosed

Updated to glib-2.68.0

Updated to vala-0.52.0

Updated to gobject-introspection-1.68.0

Updated to pygobject-3.40.1

Updated to glib-networking-2.68.0

Updated to at-spi2-core-2.40.0

Updated to gdk-pixbuf-2.42.4

Updated to gtk+-3.24.28

Updated to libdazzle-3.40.0

Updated to sysprof-3.40.1

Updated to tepl-6.00.0

Added GTK+-4.2.0

Added gtksourceview-5.0.0

Fixed at r24430

comment:32 by Bruce Dubbs, 3 years ago

Milestone: 10.211.0

Milestone renamed

Note: See TracTickets for help on using tickets.