- Update to version 3.32.0:
+ Stable release version bump.
- Update to version 1.55.92:
+ Possible memory allocation/deallocation bug (possibly in
js_free() in GJS).
+ cairo-context: Special-case 0-sized vector.
+ Add some more eslint rules.
+ NMake/libgjs-private: Export all the public symbols there.
- Update to version 1.55.91:
+ The problem of freezing while running the tests using GCC's
sanitizers was determined to be a bug in GCC, which was fixed
in GCC 9.0.1.
+ Closed bugs and merge requests:
- gnome-sound-recorder crashes deep inside libgjs.
- Various maintenance.
- wrapperutils: Define $gtype property as non-enumerable.
- Update to version 1.55.90:
+ New JS API: It's now possible to call and implement DBus
methods whose parameters or return types include file
descriptor lists (type signature 'h'). This involves passing or
receiving a Gio.UnixFDList instance along with the parameters
or return values.
+ To call a method with a file descriptor list, pass the
Gio.UnixFDList along with the rest of the parameters, in any
order, the same way you would pass a Gio.Cancellable or async
callback.
+ For return values, things are a little more complicated, in
order to avoid breaking existing code. Previously,
synchronously called DBus proxy methods would return an
unpacked GVariant. Now, but only if called with a
Gio.UnixFDList, they will return [unpacked GVariant,
Gio.UnixFDList]. This does not break existing code because it
was not possible to call a method with a Gio.UnixFDList before,
and the return value is unchanged if not calling with a
Gio.UnixFDList. This does mean, unfortunately, that if you have
a method with an 'h' in its return signature but not in its
argument signatures, you will have to call it with an empty
FDList in order to receive an FDList with the return value,
when calling synchronously.
+ On the DBus service side, when receiving a method call, we now
pass the Gio.UnixFDList received from DBus to the called
method. Previously, sync methods were passed the parameters,
and async methods were passed the parameters plus the
Gio.DBusInvocation object. Appending the Gio.UnixFDList to
those parameters also should not break existing code.
+ See the new tests in installed-tests/js/testGDBus.js for
examples of calling methods with FD lists.
+ We have observed on the CI server that GJS 1.55.90 will hang
forever while running the test suite compiled with GCC 9.0.0
and configured with the --enable-asan and --enable-ubsan
arguments. This should be addressed in one of the following
1.55.x releases.
+ Closed bugs and merge requests:
- GDBus proxy overrides should support
Gio.DBusProxy.call_with_unix_fd_list().
- Add regression tests for GObject vfuncs.
- GjsPrivate: Sources should be C files.
- build: Vendor last-good version of AX_CODE_COVERAGE.
- Update to version 1.55.4:
+ Various maintenance.
+ Boxed copy constructor should not be called, split Boxed into
prototype and instance structs.
- Update to version 1.55.3:
+ Manually constructed ByteArray toString segfaults.
+ signals: Add _signalHandlerIsConnected method.
+ Various maintenance.
- Changes from version 1.55.2:
+ Gnome-shell crashes on destroying cached param specs.
+ Various maintenance.
+ Auto pointers builder.
+ configure.ac: Update bug link.
+ SIGSEGV when exiting gnome-shell.
+ Fix build with --enable-dtrace and create CI job to ensure it
doesn't break in the future.
+ Delay JSString-to-UTF8 conversion.
+ Annotate return values.
+ Fix a regression with GError toString().
+ GType memleak fixes.
+ Atoms refactor.
+ Write a "Code Hospitable" README file.
+ object: Method lookup repeatedly traverses introspection.
+ Handler of GtkEditable::insert-text signal is not run.
- Changes from version 1.55.1:
+ object: Implement newEnumerate hook for GObject.
+ Various maintenance.
+ ByteArray.toString should stop at null bytes.
+ Byte arrays that represent encoded strings should be
0-terminated.
+ context: Defer and therefore batch forced GC runs.
+ context: use timeout with seconds to schedule a gc trigger.
+ arg: Add special-case for byte arrays going to C.
OBS-URL: https://build.opensuse.org/request/show/689942
OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/gjs?expand=0&rev=162
Add patches lined up in the next unstable release aswell.
- Update to version 1.52.3:
+ Include calc.js example from Seed (glgo#gnome/gjs#130).
+ CI: Un-pin the Fedora Docker image (glgo#gnome/gjs#141,
(glgo#gnome/gjs#131).
+ Reduce overhead of wrapped objects (glgo#gnome/gjs#142,
(glgo#gnome/gjs#121).
+ Various CI changes (glgo#gnome/gjs#134, (glgo#gnome/gjs#136).
- Add gjs-Add-API-to-force-GC-schedule.patch: context: Add API to
force GC schedule. There are situations where we cannot run the
GC right away, but we also cannot ignore the need of running it.
For those cases, add a new private function that forces GC to
happen on idle (glgo"GNOME/gjs#140).
- Add gjs-Queue-forced-GC.patch: object: Queue a forced GC when
toggling down. Since we cannot know how many more wrapped
GObjects are going be marked for garbage collection after the
owner is destroyed, always queue a garbage collection when a
toggle reference goes down (glgo"GNOME/gjs#140). (forwarded request 604654 from iznogood)
OBS-URL: https://build.opensuse.org/request/show/605077
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/gjs?expand=0&rev=74
Add patches lined up in the next unstable release aswell.
- Update to version 1.52.3:
+ Include calc.js example from Seed (glgo#gnome/gjs#130).
+ CI: Un-pin the Fedora Docker image (glgo#gnome/gjs#141,
(glgo#gnome/gjs#131).
+ Reduce overhead of wrapped objects (glgo#gnome/gjs#142,
(glgo#gnome/gjs#121).
+ Various CI changes (glgo#gnome/gjs#134, (glgo#gnome/gjs#136).
- Add gjs-Add-API-to-force-GC-schedule.patch: context: Add API to
force GC schedule. There are situations where we cannot run the
GC right away, but we also cannot ignore the need of running it.
For those cases, add a new private function that forces GC to
happen on idle (glgo"GNOME/gjs#140).
- Add gjs-Queue-forced-GC.patch: object: Queue a forced GC when
toggling down. Since we cannot know how many more wrapped
GObjects are going be marked for garbage collection after the
owner is destroyed, always queue a garbage collection when a
toggle reference goes down (glgo"GNOME/gjs#140).
OBS-URL: https://build.opensuse.org/request/show/604654
OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/gjs?expand=0&rev=151