Opened 3 years ago

Closed 2 years ago

#15571 closed enhancement (fixed)

gjs-1.70.0

Reported by: Bruce Dubbs Owned by: Douglas R. Reno
Priority: normal Milestone: gnome-41
Component: BOOK Version: git
Severity: normal Keywords:
Cc:

Description

New minor version.

Change History (14)

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

Milestone: 11.1Gnome41

Move to GNOME 41.

comment:2 by Bruce Dubbs, 3 years ago

Milestone: Gnome41gnome41

Milestone renamed

comment:3 by Bruce Dubbs, 3 years ago

Milestone: gnome4141gnome

Milestone renamed

comment:4 by Bruce Dubbs, 3 years ago

Milestone: 41gnomegnome-41

Milestone renamed

comment:5 by pierre, 2 years ago

gjs-1.68.3 FTBFS with newer meson. There is a change upstream: https://gitlab.gnome.org/GNOME/gjs/-/commit/59bbb5e4795d2b6e41ce27ae3b18257e75b71a19

I think 1.70 is affected too since it is older than that change.

For us, we can use:

grep -rl install_dir_gir | xargs sed -i "s/install_dir_gir: false/install_dir_gir: [false]/"

Tested

comment:6 by Bruce Dubbs, 2 years ago

The sed can be shortened to:

grep -rl gir: | xargs sed -i "s/gir: false/gir: [false]/"

I'm not sure if the 'grep' returns too many packages:

installed-tests/js/libgjstesttools/meson.build
installed-tests/js/meson.build
meson.build

The change may only be needed in the first two files. Perhaps

sed -i "s/gir: false/gir: [false]/" \
  installed-tests/js/libgjstesttools/meson.build \
  installed-tests/js/meson.build

or a bit more cryptically:

sed -i "s/gir: false/gir: [false]/" installed-tests/js/{,*}/meson.build

comment:7 by pierre, 2 years ago

According to the commit linked to above, the three files need to be changed. And I guess the topdir meson.build is the more likely to be used if not all are.

comment:8 by Bruce Dubbs, 2 years ago

The topdir meson.build only matches:

### Build GjsPrivate introspection library #####################################

gjs_private_gir = gnome.generate_gir(libgjs,
    includes: ['GObject-2.0', 'Gio-2.0'], sources: libgjs_private_sources,
    namespace: 'GjsPrivate', nsversion: '1.0', identifier_prefix: 'Gjs',
    symbol_prefix: 'gjs_', extra_args: '--warn-error', install: true,
    install_dir_gir: false, install_dir_typelib: pkglibdir / 'girepository-1.0')
gjs_private_typelib = gjs_private_gir[1]

It seems unlikely to me that only install_dir_gir needs to be changed.

in reply to:  8 comment:9 by pierre, 2 years ago

Replying to Bruce Dubbs:

The topdir meson.build only matches:

### Build GjsPrivate introspection library #####################################

gjs_private_gir = gnome.generate_gir(libgjs,
    includes: ['GObject-2.0', 'Gio-2.0'], sources: libgjs_private_sources,
    namespace: 'GjsPrivate', nsversion: '1.0', identifier_prefix: 'Gjs',
    symbol_prefix: 'gjs_', extra_args: '--warn-error', install: true,
    install_dir_gir: false, install_dir_typelib: pkglibdir / 'girepository-1.0')
gjs_private_typelib = gjs_private_gir[1]

It seems unlikely to me that only install_dir_gir needs to be changed.

That's what upstream do in their patch. And I think the main problem is that [false] needs to be used instead of false without square brackets. Why it is not the same for install: true must be a very clever choice of upstream meson...

comment:10 by pierre, 2 years ago

meson 0.60.3 fixes gjs build, so that the sed is not needed with that version. (tested with gjs-1.70.0)

comment:11 by Xi Ruoyao, 2 years ago

Confirm that meson-0.60.3 has fixed the building issue.

Version 1.70.0
--------------

- No changes from release candidate 1.69.90.

Version 1.68.4
--------------

- Build fix backported from the development branch. [#436, !667, Evan Welsh]

Version 1.69.90
---------------

- Closed bugs and merge requests:

  * Update ESLint to v8 [!657, Evan Welsh]
  * gi: Enable pending tests which are now correctly handled [!658, Evan Welsh]
  * gi: Return null if return argument is a pointer type [!659, Evan Welsh]
  * gi: Assume native enums are signed, avoid asserting. [!660, Evan Welsh]
  * Fix cppcheck failure [!661, Philip Chimento]
  * Strange behavior for strings with NUL character [#285, !662, Evan Welsh]
  * 64-bit int GObject properties have some problems with values > G_MAXINT32
    [#92, !663, Evan Welsh]
  * Crash on dynamic import in interactive interpreter [#429, !666, Evan Welsh]
  * 1.69.1: gjs test suite is failing when gjs is build with -DG_DISABLE_ASSERT
    [#436, !667, Evan Welsh]
  * function: Warn about unhandled promise rejections in System.exit() [!669,
    Philip Chimento]
  * attempting to wrap a new GObject mid-construction blows up [#50, !675, Evan
    Welsh]
  * Fix IWYU CI job [!676, Evan Welsh]

- Build fixes [Evan Welsh, Philip Chimento]

Version 1.69.2
--------------

- The TextEncoder and TextDecoder global objects are now available. In most
  cases, these will be able to replace usage of the imports.byteArray module. We
  recommend that new code use TextEncoder and TextDecoder to convert strings to
  UTF-8 encoded Uint8Arrays and vice versa.
  MDN is a good source of information on how to use these APIs:
  https://developer.mozilla.org/en-US/docs/Web/API/TextEncoder
  https://developer.mozilla.org/en-US/docs/Web/API/TextDecoder

- The 'console' global object is now available. This is for compatibility with
  Node.js and browser environments, and for familiarity for developers
  accustomed to them. The previously existing print(), printerr(), log(),
  logError() functions continue to exist, and are not deprecated. The console
  methods use GLib structured logging as their backend.

- Cairo.Surface has gained getDeviceScale(), setDeviceScale(),
  getDeviceOffset(), and setDeviceOffset() methods. These wrap the corresponding
  C functions.

- GLib.log_set_writer_func() and GObject.Object.bind_property_full() now work.
  Previously, they had introspection problems.

- There is also a 'console' built-in module which exports functions
  setConsoleLogDomain() and getConsoleLogDomain(), for controlling the GLib
  log domain that the console methods use.

- The debugger has gained a 'set ignoreCaughtExceptions (true/false)' option.
  Previously, when an exception was thrown, the debugger would stop, even if the
  exception was thrown intentionally in order to be caught. With this option,
  which is now the default, the debugger will keep going on exceptions that are
  thrown while inside the scope of a try-catch block.

- Closed bugs and merge requests:

  * Implement WHATWG Encoding specification. [!534, Evan Welsh]
  * cairo-surface: Add setDevice{Offset,Scale} functions [!605, Daniel van Vugt,
    Philip Chimento]
  * WHATWG Console Implementation [!634, Evan Welsh]
  * Add support for GLib.log_set_writer_func [!637, Evan Welsh]
  * Various maintenance [!649, Philip Chimento]
  * examples: improve the gettext example [!651, Sonny Piers]
  * Unable to use bind_property_full [#241, !653, Florian Müllner]
  * Allow continuing for handled exceptions [#431, !655, Florian Müllner]
  * text-encoding.cpp: Fix builds on 64-bit Windows [!656, Chun-wei Fan]

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

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

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

Can confirm it's good with meson-0.70, have the update queued up here locally

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

Resolution: fixed
Status: assignedclosed
Note: See TracTickets for help on using tickets.