- Update to version 1.70.1:
+ Build and crash fixes backported from the development branch.
+ Closed bugs and merge requests:
- Handle optional out parameters in callbacks
- Link fails on Debian armel|mipsel|powerpc: needs more
-latomic
- gjs/jsapi-util.cpp: fix build on gcc-12
- Drop patches fixed upstream:
+ b9e122044a7ccc1e2a3374c680b6ea82066bfa59.patch
+ 62025d4a2738a36ea5f1a7cebef08b22b5eef613.patch
OBS-URL: https://build.opensuse.org/request/show/952635
OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/gjs?expand=0&rev=204
- 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).
OBS-URL: https://build.opensuse.org/request/show/604654
OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/gjs?expand=0&rev=151
- Update to version 1.50.4:
+ Gnome Shell crash with places-status extension when you plug an
USB device (glgo#gjs#33 and glgo#gjs#38).
- Changes from version 1.50.3:
+ GJS will now log a warning when a GObject is accessed in
Javascript code after the underlying object has been freed in
C. (This used to work most of the time, but crash
unpredictably.) We now prevent this situation which, is usually
by caused a memory management bug in the underlying C library.
+ Closed bugs and merge requests:
- Add checks for GObjects that have been finalized
(glgo#gjs#21, glgo#gjs#23, glgo#gjs#25, glgo#gjs#28,
glgo#gjs#33).
- Test "Cairo context has methods when created from a C
function" fails (glgo#gjs#27, glgo#gjs#35).
- Various fixes from the master branch for rare crashes.
- Update to version 1.50.2:
+ Closed bugs and merge requests:
- tweener: Fix a couple of warnings.
- legacy: Allow ES6 classes to inherit from abstract Lang.Class
class.
+ Minor bugfixes.
- Update Url to https://wiki.gnome.org/Projects/Gjs: current Gjs'
project web page.
- Alignment BuildRequires with configure:
+ Add pkgconfig(*): cairo-gobject, gio-2.0, gobject-2.0 and
gthread-2.0.
+ Drop pkgconfig(libmozjs-52) and libxml2-tools.
- Update to version 1.50.1:
+ As a debugging aid, gjs_dumpstack() now works even during
garbage collection.
+ Code coverage tools did not work so well in the last few 1.49
releases. The worst problems are now fixed, although even more
improvements will be released in the next unstable version.
Fixes include:
- Specifing prefixes for code coverage files now works again.
- Code coverage now works on lines inside ES6 class
definitions.
- The detection of which lines are executable has been improved
a bit.
- Rectify summaries.
- Update to version 1.50.0:
+ Relicense coverage.cpp and coverage.h to the same license as
the rest of GJS (bgo#787263).
- Change license back to MIT.
- Update to version 1.49.92:
+ It's now possible to build GJS with sanitizers (ASan and
UBSan) enabled; add "--enable-asan" and "--enable-ubsan" to
your configure flags.
+ There's also a "make check-valgrind" target which will run
GJS's test suite under Valgrind to catch memory leaks and
threading races.
+ Many of the crashes in GNOME 3.24 were caused by GJS's closure
invalidation code which had to change from the known-working
state in 1.46 because of changes to SpiderMonkey's garbage
collector. This code has been refactored to be less
complicated, which will hopefully improve stability and
debuggability.
+ Docs tweaks.
+ Bugs fixed: bgo#783220, bgo#786668, bgo#786995, bgo#787113.
- Temporariliy change license to GPL-2.0+: there are a couple files
in the source tree, that link into libgjs and bring the code to
GPL-2.0+ level; upstream is working on relicensing them
(bgo#787263).
- Update to version 1.49.91:
+ Deprecation: The private "__name__" property on Lang.Class
instances is now discouraged. Code should not have been using
this anyway, but if it did then it should use the "name"
property on the class (this.__name__ should become
this.constructor.name), which is compatible with ES6 classes.
+ Closed bugs:
- Use ES6 classes (bgo#785652).
- A few fixes for stack traces and error reporting
(bgo#786183).
- /proc/self/stat is read for every frame if GC was not needed
(bgo#786017).
+ Build fix.
- Update to version 1.49.90:
+ New API: GObject.registerClass(), intended for use with ES6
classes.
+ Misc 1.49 and mozjs52 enhancements (bgo#785040).
+ Switch to native promises (bgo#784713).
+ Can't call exports using top-level variable toString
(bgo#781623).
+ Properties no longer recognized when shadowed by a method
(bgo#785091).
+ Backport of changes required for use with mozjs-55.
- Changes from version 1.49.6:
+ GJS crash in needsPostBarrier, possible access from wrong
thread (bgo#783935).
- Changes from version 1.49.4:
+ This version of GJS is based on SpiderMonkey 52.
+ New language features
- ES6 classes.
- Async functions and await operator.
- Reflect - built-in object with methods for interceptable
operations.
+ Backwards-incompatible changes
- Non-standard "let expressions" and "let blocks" (e.g.,
`let (x = 5) { use(x) }`) are not supported any longer
- Non-standard flags argument to String.match(),
String.replace(), and String.search() (e.g.
`str.replace('foo', 'bar', 'g')`) is now ignored.
- Non-standard WeakSet.clear() method has been removed.
- Variables declared with let and const are now 'global lexical
bindings', as per the ES6 standard, meaning that they will
not be exported in modules.
+ Closed bugs:
- Prepare for SpiderMonkey 45 and 52 (bgo#781429).
- Add a static analysis tool as a make target (bgo#783214).
- Fix the build with debug logs enabled (bgo#784469).
- Switch to SpiderMonkey 52 (bgo#784196).
- Test suite fails when run with JIT enabled (bgo#616193).
- Replace pkgconfig(mozjs-38) BuildRequires for
pkgconfig(mozjs-52), following upstreams port.
- Add libxml2-tools BuildRequires: new dependency.
- Update to version 1.49.3:
+ Fixes in preparation for SpiderMonkey 52.
+ Use the Centricular fork of libffi to build on Windows.
+ Use a C++ auto pointer instead of g_autofree (bgo#777597).
+ Build failure in GNOME Continuous (bgo#783031).
- Update to version 1.49.2:
+ New feature: When building an app with the Package module,
using the Meson build system, you can now run the app with
"ninja run" and all the paths will be set up correctly.
+ New feature: Gio.ListStore is now iterable.
+ New API: Package.requireSymbol(), a companion for the already
existing Package.require(), that not only checks for a GIR
library but also for a symbol defined in that library.
+ New API: Package.checkSymbol(), similar to
Package.requireSymbol() but does not exit if the symbol was not
found. Use this to support older versions of a GIR library with
fallback functionality.
+ New API: System.dumpHeap(), for debugging only. Prints the
state of the JS engine's heap to standard output. Takes an
optional filename parameter which will dump to a file instead
if given.
+ Fixes in preparation for SpiderMonkey 52.
+ Misc fixes.
+ Bugs fixed: bgo#775868, bgo#781882, bgo#781882, bgo#782065,
bgo#782069, bgo#779593, bgo#782310, bgo#781219, bgo#780106.
- Update to version 1.49.1:
+ test GObject Class failure (bgo#693676).
+ Enable incremental GCs (bgo#724797).
+ Don't silently accept extra arguments to C functions
(bgo#680215).
+ Special case GValues in signals and properties (bgo#688128).
+ [cairo]: Instantiate wrappers properly (bgo#614413).
+ Warn if we're importing an unversioned namespace (bgo#689654).
+ Fixes in preparation for SpiderMonkey 45.
- Update to version 1.48.6:
+ GJS crash in needsPostBarrier, possible access from wrong
thread - more fixes for bgo#783935.
- Update to version 1.48.5:
+ GJS crash in needsPostBarrier, possible access from wrong
thread (bgo#783935).
+ Fix format string, caught by static analysis.
+ Fixes for regression in 1.48.4.
- Update to version 1.48.4:
+ gnome-shell 3.24.1 crash on wayland (bgo#781799).
- Update to version 1.48.3:
+ arg: don't crash when asked to convert a null strv to an array
(bgo#775679).
+ gjs 1.48.0: does not compile on macOS with clang (bgo#780350).
+ Modernize shell scripts (bgo#781806).
- Changes from version 1.48.2:
+ Intermittent crash in gnome-shell, probably in weak pointer
updating code (bgo#781194).
+ Add contributor's guide (bgo#781297).
+ Misc fixes.
- Update to version 1.48.1:
+ gjs crashed with SIGSEGV in gjs_object_from_g_object
(bgo#779918).
+ Misc bug fixes.
- Drop redundant %clean section.
- Update to version 1.48.0:
+ Memory leak in object_instance_resolve() (bgo#780171).
- Drop gjs-object-Fix-memory-leak-in-resolve.patch: fixed upstream.
- Add patch gjs-object-Fix-memory-leak-in-resolve.patch: The "name"
string, allocated in gjs_get_string_id(), wasn't getting freed at
every exit point of the function (bgo#780171).
- Update to version 1.47.92:
+ gjs 1.47.91 configure fails with Fedora's mozjs38 (bgo#779412).
+ tests: Don't fail when Gtk+-4.0 is available (bgo#779594).
+ gjs 1.47.91 test failures on non-amd64 (bgo#779399).
+ gjs_eval_thread should always be set (bgo#779693).
+ System.exit() should exit even across main loop iterations
(bgo#779692).
+ Fix a typo in testCommandLine.sh (bgo#779772).
+ arg: Fix accidental fallthrough (bgo#779838).
+ jsUnit: Explicitly check if tempTop.parent is defined
(bgo#779871).
+ Misc bug fixes.
- Drop mozjs38 BuildRequires and stop passing JS_INTERP=/usr/bin/js
to configure: No longer needed after upstream fixes.
- Update to version 1.47.91:
+ overrides/Gio: Provide an empty array on error, rather than
null (bgo#677513).
+ WithSignals parameter for Lang.Class (bgo#664897).
+ Add API to better support asynchronous code (bgo#608450).
+ Fix 1.47.90 tests are failing (bgo#778780).
+ boxed: Plug a memory leak (bgo#779036).
+ Don't crash when marshalling an unsafe integer from
introspection (bgo#778705).
+ Lang.Class should include symbol properties (bgo#778718).
+ Console output of arrays should be UTF-8 aware (bgo#778729).
+ Various fixes for 1.47.91 (bgo#779293).
+ Progress towards a Visual Studio build of GJS on Windows.
+ Misc bug fixes.
- Pass JS_INTERP=/usr/bin/js to configure in order to help it find
the default, unversioned js binary.
- Add moyjs38 BuildRequires: the mozjs interpreter is not installed
per default together with mozjs-devel.
- Update to version 1.47.90:
+ This version of GJS is based on SpiderMonkey 38.
+ Syntax enhancements.
+ Various API additions.
+ Backwards-incompatible changes:
- It is now a syntax error to declare the same variable twice
with "let" or "const" in the same scope. Existing code may
need to be fixed, but the fix is trivial.
+ SpiderMonkey is now extra vocal about warning when you access
an undefined property, and this causes some false positives.
You can turn this warning off by setting
GJS_DISABLE_EXTRA_WARNINGS=1.
+ When enumerating the importer object (i.e.,
"for (let i in imports) {...}") you will now get the names of
any built-in modules that have previously been imported.
+ Bugs fixed: bgo#776966, bgo#777205, bgo#642506, bgo#776549,
bgo#777962.
- Replace pkgconfig(mozjs-31) BuildRequires with
pkgconfig(mozjs-38), following upstreams port.
- Update to version 1.47.4:
+ News for GJS embedders such as gnome-shell:
- New API: The GjsCoverage type and its methods are now
exposed. Use this if you are embedding GJS and need to output
code coverage statistics.
+ Bugs fixed: bgo#563391, bgo#619710, bgo#636283, bgo#697020,
bgo#730101, bgo#737607, bgo#742852, bgo#751146, bgo#760057,
bgo#775444, bgo#775776, bgo#776193, bgo#776938.
- Update to version 1.47.3:
+ New JavaScript features! This version of GJS is based on
SpiderMonkey 31, an upgrade from the previous ESR (Extended
Support Release) of SpiderMonkey 24.
+ New syntax:
- Spread operator in function calls: someFunction(arg1, arg2,
...iterableObj).
- Generator functions: yield, function*, yield*.
- Binary and octal numeric literals: 0b10011100, 0o377.
- Function arguments without defaults can now come after those
with defaults: function f(x=1, y) {}.
+ New standard library module: Intl - Locale-sensitive formatting
and string comparison.
+ New behaviour:
- -0 and +0 are now considered equal as Map keys and Set
values.
- On typed arrays, numerical indexed properties ignore the
prototype object:
Int8Array.prototype[20] = 'foo';(new Int8Array(32))[20] == 0.
+ New non-standard Mozilla extensions:
- Array comprehensions.
- Generator comprehensions; both were originally proposed for
ES6 but removed.
+ Bugs fixed: bgo#573335, bgo#595439, bgo#605972, bgo#742249,
bgo#751252, bgo#770244, bgo#771598, bgo#771745, bgo#772027,
bgo#772033, bgo#772386, bgo#772790, bgo#773297, bgo#773335,
bgo#775205.
- Replace pkgconfig(mozjs-24) BuildRequires with
pkgconfig(mozjs-31), following upstreams port.
- Update to version 1.47.0:
+ Backwards-incompatible change: we have changed the way certain
JavaScript values are marshalled into GObject introspection 32
or 64-bit signed integer values, to match the ECMA standard.
+ Backwards-incompatible change: we have changed the way
gjs-console interprets command-line arguments.
- Add pkgconfig(gtk+-3.0) BuildRequires: enable GTK+ support.
- Update to version 1.46.0:
+ Be future proof against Format fixes in SpiderMonkey
(bgo#770111).
- Update to version 1.45.4:
+ Release out args before freeing caller-allocated structs
(bgo#768413).
+ Marshal variable array-typed signal arguments (bgo#761659).
+ Marshal all structs in out arrays correctly (bgo#761658).
+ Call setlocale() before processing arguments (bgo#760424).
+ Build fixes and improvements: bgo#737702, bgo#761072,
bgo#761366, bgo#765905, bgo#767368.
- Update to GNOME 3.20 Fate#318572
Fri Dec 18 23:51:08 UTC 2015 - damjanovic.ivo@gmail.com
- Update to version 1.45.3:
+ Support external construction of gjs-defined GObjects
(bgo#681254).
+ Add new format.printf() API (bgo#689664).
+ Add new API to get the name of a repository (bgo#685413).
+ Add C to JS support for arrays of flat structures (bgo#704842).
+ Add API to specify CSS node name (bgo#758349).
+ Return value of default signal handler for "on_signal_name"
(bgo#729288).
+ Fix multiple emissions of onOverwrite in Tweener (bgo#597927).
+ Misc bug fixes: bgo#727370, bgo#623330, bgo#667908,
bgo#757763.
- Update to version 1.44.0:
+ Add Lang.Interface and GObject.Interface (bgo#751343,
bgo#752984).
+ Support callbacks with (transfer full) return types
(bgo#750286).
+ Add binding for setlocale() (bgo#753072).
+ Improve support to generate code coverage reports (bgo#743009,
bgo#743007, bgo#742362, bgo#742535, bgo#742797, bgo#742466,
bgo#751732).
+ Report errors from JS property getters/setters (bgo#730101).
+ Fix crash when garbage collection triggers while inside an init
function (bgo#742517).
+ Port to CallReceiver/CallArgs (bgo#742249).
+ Misc bug fixes (bgo#736979, bgo#753072, bgo#750688).
- Require gjs by the devel package: a user installing the -devel
package expects the interpreter to also be present.
- Update to version 1.43.3:
+ GTypeClass and GTypeInterface methods, such as
g_object_class_list_properties(), are now available
(bgo#700347).
+ Added full automatic support for GTK widget templates
(bgo#700347, bgo#737661, bgo##739739).
+ Added control of JS Date caches to system module (bgo#739790).
+ Misc bug fixes and memory leak fixes (bgo#738122, bgo#740696,
bgo#737701).
- Update to version 1.42.0:
+ Fix a regression caused by PPC fixes in 1.41.91.
- Update to version 1.41.91:
+ Added the ability to disable JS language warnings (bgo#734569).
+ Fixed crashes in PPC (and probably other arches) due to invalid
callback signatures (bgo#729554).
+ Fixed regressions with dbus 1.8.6 (bgo#735358).
+ Readded file system paths to the default module search, to
allow custom GI overrides for third party libraries.
- Update to version 1.41.4:
+ Fixed memory management of GObject methods that unref their
instance (bgo#729545).
+ Added a package module implementing the
https://wiki.gnome.org/Projects/Gjs/Package application
conventions (bgo#690136).
+ Updated translations.
- Update to version 1.41.3:
+ Fixed GObject and Gtk overrides (bgo#727781, bgo#727394).
+ Fixed crashes caused by reentrancy during finalization
(bgo#725024).
+ Added a wrapper type for cairo regions (bgo#682303).
+ Several cleanups to GC (bgo#725024).
+ Thread-safe structures are now finalized in the background, for
greater responsiveness (bgo#725024, bgo#730030).
+ A full GC is now scheduled if after executing a piece of JS we
see that the RSS has grown by over 150% (bgo#725099,
bgo#728048).
+ ParamSpecs now support methods and static methods implemented
by glib and exposed by gobject-introspection, in addition to
the manually bound fields (bgo#725282).
+ Protototypes no longer include static properties or
constructors (bgo#725282).
+ Misc cleanups and bugfixes: bgo#727786, bgo#725282, bgo#728004,
bgo#727824.
- Add pkgconfig(cairo-xlib) BuildRequires: new dependency.
- Update to version 1.40.1:
+ Fixed build-time detection of GTK enablement (bgo#727394).
+ Fixed a crash caused by reentrancy in GObject finalizers
(bgo#725024).
+ Fixed the GIMarshallingTests suite (bgo#728004).
+ Fixed marshalling of GObjects when known by an interface type
from C to JS (bgo#727824).
+ Some typos and JS style cleanups (bgo#727781, bgo#727786).
- Update to version 1.40.0:
+ No changes from version 1.39.91.
- Update to version 1.39.91:
+ Implemented fundamental object support (bgo#621716,
bgo#725061).
+ Fixed GIRepositoryGType prototype (bgo#724925).
+ Moved GObject.prototype.disconnect() to a JS implementation
(bgo#698283).
+ Added support for enumeration methods (bgo#725143).
+ Added pseudo-classes for fundamental types (bgo#722554).
+ Build fixes (bgo#724853).
- Update to version 1.39.90:
+ Enable coverage reports.
+ Minor bug fixes.
- Update to version 1.39.3:
+ Bugs fixed: bgo#722286, bgo#722285, bgo#705465, bgo#705465,
bgo#721246, bgo#721246, bgo#721246, bgo#721246, bgo#721246,
bgo#721246, bgo#721246, bgo#721838, bgo#721355, bgo#721352,
bgo#720157, bgo#711046, bgo#711046, bgo#711046, bgo#711046,
bgo#711046, bgo#711046, bgo#711046, bgo#711046, bgo#711046,
bgo#711046.
- Replace pkgconfig(mozjs-17.0) BuildRequires with
pkgconfig(mozjs-24), following upstream's switch to MozJS 24.
- Update to version 1.39.0:
+ Bugs fixed: bgo#691409, bgo#703440, bgo#707297, bgo#708749,
bgo#708831, bgo#708915, bgo#708920, bgo#709907, bgo#710697,
bgo#710875, bgo#710878, bgo#711046, bgo#712242.
- Update to version 1.38.1:
+ Build: Also dist another input file.
- Update to version 1.38.0:
+ Console: don't have a NULL program name.
+ Build fixes.
- Update to version 1.37.6:
+ stack: Add BeginRequest / EndRequest.
+ context: Turn on type inference.
+ configure: Remove HAVE_JS_CLASS_TRACE gunk.
+ Bugs fixed: bgo#704343, bgo#704406, bgo#704902, bgo#703826.
- Update to version 1.37.4:
+ Bugs fixed: bgo#701196, bgo#701525, bgo#703068, bgo#703564.
- Update to version 1.37.1:
+ Bugs fixed: bgo#670200, bgo#685436, bgo#690982, bgo#690984,
bgo#693294, bgo#696933, bgo#697309, bgo#697436, bgo#697592,
bgo#697816, bgo#697838, bgo#698182, bgo#698935, bgo#699783,
bgo#699784, bgo#699817, bgo#699818, bgo#699878, bgo#700335,
bgo#700336, bgo#700337, bgo#700529, bgo#700644, bgo#700668,
bgo#700862.
- Replace pkgconfig(mozjs185) BuildRequires with
pkgconfig(mozjs-17.0), following upstreams change.
- Update to version 1.36.1:
+ Bugs fixed: bgo#670200, bgo#697436.
- Update to version 1.36.0:
+ No changes since version 1.35.9.
- Update to version 1.35.9:
+ Bugs fixed: bgo#694300, bgo#694355, bgo#691447, bgo#694373,
bgo#694221, bgo#694828, bgo#694827, bgo#694873, bgo#695186.
- Update to version 1.35.8:
+ Convert many native modules to JS modules (bgo#692025).
+ Bugs fixed: bgo#691996, bgo#690982, bgo#692214, bgo#693627,
bgo#693676.
- Update to version 1.35.4:
+ system: Remove getuid/getgid/getpid
+ Bugs fixed: bgo#690688, bgo#691016, bgo#678410, bgo#678410,
bgo#691028, bgo#691029, bgo#691030, bgo#680730, bgo#690982,
bgo#691038, bgo#691039, bgo#691108, bgo#691109, bgo#691307,
bgo#690982, bgo#685513, bgo#691719.
- Update to version 1.35.3:
+ Add new GBytes API and conversions
+ Rework dynamic class system
+ boxed: introduce support for complex constructors
+ Fix memory leaks
- Changes from version 1.35.2:
+ Gio: Don't eat errors when trying to call the initial
asyncCallback
+ byteArray: Remove JSCLASS_CONSTRUCT_PROTOTYPE
+ Gjs: work around GType bug with dynamic types
+ Support Sun CC
+ Fix memory leaks.
- Obsolete typelib-1_0-GjsDBus-1_0: this helps with updating from
gnome 3.4 to gnome 3.6.
- Update to version 1.34.0:
+ stack: Fix gjs_dumpstack (bgo#683992).
- Update to version 1.33.14:
+ Bugs fixed: bgo#684064.
- Add pkgconfig(libffi) BuildRequires: since gjs uses ffi
functions, confiure now checks for libffi presence.
- Update to version 1.33.10:
+ Throw an exception when registering a GType that already exists
+ Object: don't access priv->info if it's NULL
+ Misc bug fixes.
- Drop gjs-avoid_crash.patch: fixed upstream.
- Add gjs-avoid_crash.patch: Fix crashes in gnome-shell.
- Update to version 1.33.9:
+ Several changes in the GC system.
+ Fix memory leaks.
+ Fix compiler warnings.
- Update to version 1.33.4:
+ Build: link everything to gio
+ Fix memory leaks
+ Fix various bugs and issues caught by the Clang static
analyzer.
- Update to version 1.33.3:
+ Introduce special marshalling for GErrors
+ Gio: Split GDBus implementation into helpers
+ Gio: modernize DBus bindings
+ Trace signal closures from the gobject instead of the context
keep-alive.
- Update to version 1.33.2:
+ gi: Improve error message when we get a non-function for a
callback
+ Fold libgjs-gdbus.so into libgjs.so
+ GDBus: fix NotImplementedError message
+ system: add getpid(), getuid(), getgid()
+ Handle arrays of filenames
+ Rename GjsDBus to GjsPrivate
+ Import a new "format" module
+ Add argument names to our function's toString
+ Support Function.prototype.length
+ Fix various memory leaks.
- Rename typelib-1_0-GjsDBus-1_0 subpackage to
typelib-1_0-GjsPrivate-1_0, following upstream change.
- Drop gjs-getpid_uid_gid.patch: fixed upstream.
- Add gjs-getpid_uid_gid.patch: system: add getpid(), getuid(),
getgid().
- Update to version 1.32.0:
+ No changes.
- Update to version 1.31.22:
+ Various bug fixes and code changes.
+ Build fixes.
- Remove xz BuildRequires now that it comes for free in the build
system.
- Drop gjs-fix-build.patch: fixed upstream.
- Update to version 1.31.20:
+ Represent GTypes as a new boxed wrapper type
+ Add "system" module
+ Introduce meta classes
+ object:
- Implement gobject inheritance
- Add support for glib properties
- Add support for signals
- Add support for interfaces
+ Support callbacks that accept array arguments
+ Various gjs_parse_args() improvements
+ Several other code changes.
- Add gjs-fix-build.patch: fix code that cannot build.
- Update to version 1.31.10:
+ Add native JSClass for interfaces
+ Add support for flat GValue arrays
+ Improvements related to singletons.
+ Fix ffi return value handling on 32 bit
+ Correctly convert from ffi return values to GIArgument on
big-endian
+ Build fixes.
- Split typelib file into typelib-1_0-GjsDBus-1_0 subpackage.
- Add typelib-1_0-GjsDBus-1_0 Requires to devel subpackage.
- Update to version 1.31.6:
+ Require mozjs185.
+ Add a common way to grab a GType for an object
+ Some work to improve support for ParamSpec.
+ lang:
- Add new "Class" framework adapted from MooTools
- Improve prototype property descriptors
- Introduce abstract classes
- Fix for reentrant calls
+ console: Fix ARGV when using -c to specify program
+ Several overrides improvements.
+ Various other code changes.
- Remove %build_with_xulrunner define: only building against
mozjs185 is supported now.
- Add xz BuildRequires because we can't build a package for a
xz-compressed tarball without explicitly specifying that... See
bnc#697467 for more details.
- Update to version 1.31.0:
+ Fix memory leaks
+ Don't use deprecated g_thread_init() and gvalue calls.
+ Fix compiler warnings.
- Add pkgconfig(glib-2.0) BuildRequires.
- Update to version 1.30.0:
+ No change, just a version bump.
- Update to version 1.29.18:
+ Add optional signal emitted after a GC finishes
+ Add gjs_context_gc() wrapper
+ Run JS_updateMallocCounter() when creating GObjects
- Update to version 1.29.17:
+ Add support for GPtrArrays.
+ Bind more cairo API.
+ Don't release too much when releasing arrays.
+ Misc bug fixes and improvements.
- Update to version 1.29.16:
+ Make choice of javascript package non-automagic.
+ Install gi/ headers again.
- Update to version 1.29.15:
+ Support in arrays of any type.
+ Rework array+length support, breaking API.
+ Various other array-related fixes.
+ Add GVariant support.
+ ADd GDBus port.
+ Add dbus conversion rule for 'q' to JS.
+ Remove SIGSEGV, SIGABRT handlers.
+ Merge gi.so into gjs.so.
+ Plug leaks.
+ console: Remove unwanted g_debug prints.
+ Various bug fixes.
+ Test-related changes.
- Make it possible to build against js instead of xulrunner. This
is controlled by a build_with_xulrunner define:
+ if it's set to a value other than 0, we keep the previous
behavior.
+ if it's set to 0, we ignore all the xulrunner-related
BuildRequires and Requires, and instead use a
pkgconfig(mozjs185) BuildRequires.
- Stop pretending we build against xulrunner from old openSUSE.
- Update to version 1.29.0:
+ Fix introspection annotations.
+ Add infrastructure for override modules.
+ Don't hide deprecated methods.
+ Parse input as UTF-8, not ISO-8859-1.
+ Fix gunichar args.
+ Support null terminated C arrays of any type.
+ Fix memory leak.
+ Adapt to changes in future xulrunner.
+ Support compilation with standalone mozjs185.
+ Various other fixes.
- Update to version 0.7.14:
+ bgo#646246: Do connection processing in a high priority
timeout.
- Changes from version 0.7.12:
+ bgo#643325: Make gjs_debugger_native_trap a JSFastNative
+ bgo#643817: mallinfo() is slow, look at /proc/self/statm
instead.
+ Various cleanups.
- Update to version 0.7.11:
+ Add gjs_context_maybe_gc() which is similar to JS_MaybeGC but
tries to account for native allocations made directly from libc
when determining if GC is useful. Also invoke after creating
new native objects.
+ Adapt to additional xulrunner 2.0 changes
+ Add back debugger module, with single nativeTrap() function to
trigger debugger breakpoint
+ Fix bug with looking up namespaced native modules
+ Memory leak fix
+ Build fixes
- Drop gjs-xulrunner20b11-fix.patch: fixed upstream.
- This update addresses bnc#676079.
- Add gjs-xulrunner20b11-fix.patch to adapt to API changes in
latest xulrunner.
- Update to version 0.7.10:
+ xul2: use JS_NewCompartmentAndGlobalObject to avoid crash with
latest xulrunner 2.
+ console: don't segfault on huge lines
- Update to version 0.7.9:
+ Adapt to JS_GetStringChars removal in xulrunner 2.
+ Handle wide ranging enum values better.
+ Some tests fixes.
- Add Url tag.
- Update to version 0.7.8:
+ Add a js-version property the GjsContext object and also allow
specifying a specific version via a comment of the form
'// application/javascript;version=1.8'. If no version is
specified, all SpiderMonkey extensions are allowed.
+ Integrate with cairo-gobject library for support of boxed
Cairo types
+ Add support for (out caller-allocates)
+ Add support for gunichar type
+ Support signals with G_TYPE_POINTER argument using
introspection information
+ When invoking callback for void-returning async D-Bus method
implementations, allow empty parameter list instead of []
+ Ignore empty elements in the module search path instead of
treating them as the current directory
+ Handle removal of JS_GetStringBytes() in Spidermonkey
+ Handle removal of JS_GetFunctionName() in Spidermonkey
+ Use new g_object_info_find_method_using_interfaces() to allow
future caching.
+ Improve efficiency of module search
+ Fix problems with JS_Add/RemoveRoot pairing
+ Memory management fixes
+ Improve error and debugging messages
+ Build fixes
+ Bugs fixed: bgo#624811, bgo#632551, bgo#632626, bgo#632925,
bgo#633199, bgo#633477, bgo#635359, bgo#635368, bgo#635371,
bgo#635707, bgo#636263, bgo#636619, bgo#636927, bgo#636928,
bgo#637246
- Add explicit Requires of mozilla-xulrunner%{xulrunner_ver} to
libgjs0: the Requires on libmozjs.so is not enough, as there
might be more than one provider, and it could be the wrong
version of xulrunner.
- Update to version 0.7.7:
+ bgo#632159: Adapt to removal of SlowNative functions
+ Support more recent development versions of XulRunner.
- Update to version 0.7.6:
+ bgo#610859: Add makeProxyClass() function to the dbus module
for easy creation of proxy classes.
+ Add an extra test case.
+ Build fixes.
- Use pkgconfig BuildRequires when possible:
+ old BuildRequires: cairo-devel, dbus-1-glib-devel,
gobject-introspection-devel.
+ new BuildRequires: cairo, dbus-glib-1 and
gobject-introspection-1.0.
- Rename libgjs-0 to libgjs0: this is the correct SLPP name. Add
appropriate Provides/Obsoletes.
- Do not add explicit Requires of dbus-1-devel and
gobject-introspection-devel for libgjs-devel: they will be added
automatically.
- Use %_smp_mflags, make and %make_install, following our new best
packaging practices.
- Update to version 0.7.5:
+ Replace JS_SealObject by JS_FreezeObject.
+ Port all functions to JSFUN_FAST_NATIVE.
+ JS_IsNativeFrame replaced by JS_IsScriptFrame.
+ Separate "basic" API from "embedder/module".
+ Build fixes.
- Build against mozilla-xulrunner20 in 11.4 and later, and stop
supporting the 11.1 build (that was using mozilla-xulrunner190).
- Update to version 0.7.4:
+ Require single include use of headers.
+ Support xulrunner 1.9.3.
+ Make gjs_profiler_reset public.
+ Remove "debugger" module.
+ Replace call context with a concept of "current context".
+ Replace "load context" with a "import global".
+ Various other fixes.
- Drop gjs_gi_probes.d, gjs.stp.in source files: they are now
included in tarball.
- Update to version 0.7.2:
+ Fix 64 bit issues.
+ Explicitly link gjs-console against glib.
+ Update to (and require) gobject-introspection 0.9.5.
+ Various other fixes.
- Remove gir-repository Recommends: all the interesting gir files
are now directly shipped with the libraries.
- Update to version 0.7.1:
+ Add support for GArray to gjs_value_from_g_argument
+ Add support for GArray to gjs_value_to_g_argument
+ Add support for dtrace/SystemTap
+ Add a promise module
+ Handle GValues of type G_TYPE_STRV
+ [gdb-check] Add a script for easier use
+ Throw a better warning for GValues containing container types
+ [importer] Allow native modules in gjs.so
+ [gjs] Add a byteArray module.
+ Adjust for g-i change to remove machine-independent type tags
+ Various other fixes.
- Drop gjs-bgo623775.patch: fixed upstream.
- Enable systemtap support: add systemtap-sdt-devel BuildRequires,
pass --enable-systemtap to configure. Add gjs_gi_probes.d and
gjs.stp.in source files, which are missing from the tarball
(bgo#625090).
- Add gjs-bgo623775.patch, from upstream git to fix build with
gobject-introspection 0.9.2.
- Update to version 0.7:
+ Add support for "foreign structs" - which are structures that
are referenced from gobject-introspection, but need glue
code to actually handle them.
+ Hook cairo bindings to integrate with gobject-introspected
libraries using new foreign struct support
+ Start working toward thread-safety by adding
JS_BeginRequest/JS_EndRequest calls throughout the codebase
+ add Tweener.setTimeScale and Tweener.getTimeScale
+ Wrap cairo_copy_path, cairo_copy_path_flat, and
cairo_append_path
+ Handle destroy callbacks of type other than GDestroyNotify
+ Handle flag arguments not registered with GObject
+ Log errors that occur in callbacks
+ Code cleanup
+ Build fixes
+ Bugs fixed: bgo#610357, bgo#614055, bgo#614344, bgo#615078,
bgo#615222, bgo#617343, bgo#617568, bgo#617702, bgo#617972,
bgo#618190, bgo#618195, bgo#618200, bgo#618201
- Build against mozilla-xulrunner192-devel on openSUSE > 11.2.
- Add dbus-1-devel Requires to devel package.
- Update to version 0.6:
+ Optimize function invocation using libffi directly, speeding up
function invocation benchmarks by as much as 30%.
+ Add a native Cairo module
+ Don't include user_data arguments for callbacks, in Javascript
you should use closures instead
+ Add a --command/-c argument to gjs-console
+ Add gjs_context_get_native_context() to allow access to the
native context
+ Improve internal API support for collecting function arguments
and defining types
+ Add examples using gio and libsoup
+ Add datadir/share/gjs-1.0 to searchpath in addition to
XDG_DATA_DIRS
+ Add -rpath for libmozjs when linking gjs-console
+ Improve test cases and add internal assertions
+ Bugs fixed: bgo#561524, bgo#604074, bgo#604076, bgo#606258,
bgo#609691, bgo#609830, bgo#610320, bgo#610370, bgo#610574,
bgo#611529, bgo#611585, bgo#611590, bgo#611591, bgo#611811.
bgo#613106
- BuildRequire cairo-devel.
- Update to version 0.5:
+ Add a test for DBus.getcurrentMessageContext()
+ [dbus] include service name in error messages
+ gjs_define_object_class(): generate correct object hierarchy
+ Log the gjs-console command-line on startup
+ move gjs_error_reporter into a C++ file jsapi-private.cpp
+ don't use PTRDIFF macro from private spidermonkey header
+ Require C++
+ bgo#584558 - Need print() function
+ Enable JIT if we can, by default
+ Make things build with glib 2.16
+ Allow null/undefined to be passed in to callbacks
+ Support for callback functions
- BuildRequire gcc-c++.
- Update to version 0.4:
+ Use g_boxed methods for GValue copying/freeing
+ Add symbolic link from gjs to gjs-console in $(bindir)
+ Use gssize in gjs_string_from_utf8/gjs_string_from_filename
+ Don't use undefined variable in dbus exception
+ Add gjs_parse_args
+ Add a gettext module
+ Better toString() for introspection objects
+ Port modules/mainloop to gjs_parse_args
+ scripts: don't hardcode path to python
+ switch DEBUG_DBUS_MARSHAL log messages to be compiled out by
default
+ bgo#560048 - Use JS_SetPropertyAttributes to seal imports
+ autoconf-2.64 compat: Don't use $(builddir) or
$(abs_top_builddir)
+ Fix gjs_crash_after_timeout() problems
- Build against mozilla-xulrunner191.
- Update to version 0.3:
+ DBus support
+ Support simple fields for boxed types
+ Support "copy construction" of boxed types
+ Support simple structures not registered as boxed
- Allow access to nested structures
- Allow direct assignment to nested structure fields
- Allow enum and flag structure fields
- Allow creating boxed wrapper without copy
+ Support for non-default constructor (i.e. constructors like
GdkPixbuf.Pixbuf.new_from_file(file))
+ Add a Lang.bind function which binds the meaning of 'this'
+ Add an interactive console gjs-console
+ Allow code in directory modules (i.e. the code should reside in
__init__.js files)
+ Fix handling of enum/flags return values
+ Handle non-gobject-registered flags
+ Add Tweener.registerSpecialProperty to tweener module
+ Add profiler for javascript code
+ Add gjs_context_get_all and gjs_dumpstack - useful to invoke
from a debugger such as gdb
+ Support GHashTable
+ Add support for UNIX shebang (i.e. #!/usr/bin/gjs-console)
+ Support new introspection short/ushort type tags
+ Support GI_TYPE_TAG_FILENAME
+ Improve support for machine-dependent integer types and arrays
of integers
+ Fix several memory leaks
+ Bugs fixed: bgo#560506, bgo#560670, bgo#560808, bgo#561514,
bgo#561516, bgo#561849, bgo#562892, bgo#564424, bgo#564664,
bgo#566185, bgo#567675, bgo#569178, bgo#570775, bgo#570964,
bgo#580948, bgo#584560, bgo#584850, bgo#584858, bgo#584858,
bgo#585386, bgo#585460, bgo#586665, bgo#586760, bgo#561203,
bgo#561573, bgo#561585, bgo#561664, bgo#561686, bgo#561812,
bgo#562575, bgo#565029, bgo#567078, bgo#569374, bgo#572113,
bgo#572121, bgo#572130, bgo#572258, bgo#580865, bgo#580947,
bgo#580957, bgo#581277, bgo#581384, bgo#581385, bgo#581389,
bgo#582686, bgo#582704, bgo#582707, bgo#584849, bgo#560808
- Add dbus-1-glib-devel BuildRequires.
- Initial package.
OBS-URL: https://build.opensuse.org/request/show/571234
OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/gjs?expand=0&rev=140
- Update to version 1.50.2+20180106.b3e0002:
+ object:
- Only reset keep-alive and disassociate if needed.
- Make clear in toString() proto method when the object is
finalized.
- Show error when using proto functions (connect*, emit) on
destroyed object.
- Only show critical errors on access to finalized objects.
- Remove ObjectInstance from disassociate_list if object is
finalized.
- Leave out param untouched on error.
- Reset the keep alive flag on wrapper when object is disposed.
- Add better logging when invalid access happens.
- Don't resolve or set,get properties on finalized elements.
+ installed-tests/js: add testGObjectDestructionAccess to verify
access to destryed objects.
- Switch to git-checkout via source service. Following this, add
autoconf-archive and libtool BuildRequires and pass autogen.sh to
bootstrap the tarball.
- Cleanup spec, use modern macros, autosetup and make_build.
OBS-URL: https://build.opensuse.org/request/show/563128
OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/gjs?expand=0&rev=138
- Update to version 1.49.91:
+ Deprecation: The private "__name__" property on Lang.Class
instances is now discouraged. Code should not have been using
this anyway, but if it did then it should use the "name"
property on the class (this.__name__ should become
this.constructor.name), which is compatible with ES6 classes.
+ Closed bugs:
- Use ES6 classes (bgo#785652).
- A few fixes for stack traces and error reporting
(bgo#786183).
- /proc/self/stat is read for every frame if GC was not needed
(bgo#786017).
+ Build fix.
- Update to version 1.49.90:
+ New API: GObject.registerClass(), intended for use with ES6
classes.
+ Misc 1.49 and mozjs52 enhancements (bgo#785040).
+ Switch to native promises (bgo#784713).
+ Can't call exports using top-level variable toString
(bgo#781623).
+ Properties no longer recognized when shadowed by a method
(bgo#785091).
+ Backport of changes required for use with mozjs-55.
- Changes from version 1.49.6:
+ GJS crash in needsPostBarrier, possible access from wrong
thread (bgo#783935).
- Changes from version 1.49.4:
+ This version of GJS is based on SpiderMonkey 52.
+ New language features
OBS-URL: https://build.opensuse.org/request/show/519483
OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/gjs?expand=0&rev=128