commit gjs for openSUSE:Factory
Hello community, here is the log from the commit of package gjs for openSUSE:Factory checked in at Sun Oct 2 10:03:48 CEST 2011. -------- --- openSUSE:Factory/gjs/gjs.changes 2011-09-23 01:59:58.000000000 +0200 +++ /mounts/work_src_done/STABLE/gjs/gjs.changes 2011-09-27 21:26:13.000000000 +0200 @@ -1,0 +2,14 @@ +Tue Sep 27 19:25:01 UTC 2011 - vuntz@opensuse.org + +- Update to version 1.30.0: + + No change, just a version bump. + +------------------------------------------------------------------- +Wed Sep 21 14:02:21 UTC 2011 - vuntz@opensuse.org + +- 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 + +------------------------------------------------------------------- calling whatdependson for head-i586 Old: ---- gjs-1.29.17.tar.bz2 New: ---- gjs-1.30.0.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ gjs.spec ++++++ --- /var/tmp/diff_new_pack.GzUaZu/_old 2011-10-02 10:03:45.000000000 +0200 +++ /var/tmp/diff_new_pack.GzUaZu/_new 2011-10-02 10:03:45.000000000 +0200 @@ -22,14 +22,14 @@ %define xulrunner_ver 20 Name: gjs -Version: 1.29.17 +Version: 1.30.0 Release: 1 # FIXME: find out if tapsets should really be in devel package or in main package License: MIT License (or similar) Summary: JavaScript bindings based on gobject-introspection and Mozilla Group: Development/Libraries/GNOME Url: http://live.gnome.org/Gjs -Source: http://download.gnome.org/sources/gjs/1.29/%{name}-%{version}.tar.bz2 +Source: http://download.gnome.org/sources/gjs/1.30/%{name}-%{version}.tar.bz2 BuildRequires: gcc-c++ %if %{build_with_xulrunner} BuildRequires: mozilla-xulrunner%{xulrunner_ver}-devel ++++++ gjs-1.29.17.tar.bz2 -> gjs-1.30.0.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gjs-1.29.17/configure new/gjs-1.30.0/configure --- old/gjs-1.29.17/configure 2011-08-30 04:34:29.000000000 +0200 +++ new/gjs-1.30.0/configure 2011-09-27 16:43:45.000000000 +0200 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.68 for gjs 1.29.17. +# Generated by GNU Autoconf 2.68 for gjs 1.30.0. # # Report bugs to <http://bugzilla.gnome.org/enter_bug.cgi?product=gjs>. # @@ -571,8 +571,8 @@ # Identity of this package. PACKAGE_NAME='gjs' PACKAGE_TARNAME='gjs' -PACKAGE_VERSION='1.29.17' -PACKAGE_STRING='gjs 1.29.17' +PACKAGE_VERSION='1.30.0' +PACKAGE_STRING='gjs 1.30.0' PACKAGE_BUGREPORT='http://bugzilla.gnome.org/enter_bug.cgi?product=gjs' PACKAGE_URL='' @@ -1375,7 +1375,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures gjs 1.29.17 to adapt to many kinds of systems. +\`configure' configures gjs 1.30.0 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1445,7 +1445,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of gjs 1.29.17:";; + short | recursive ) echo "Configuration of gjs 1.30.0:";; esac cat <<\_ACEOF @@ -1453,7 +1453,7 @@ --disable-option-checking ignore unrecognized --enable/--with options --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) --enable-FEATURE[=ARG] include FEATURE [ARG=yes] - --enable-maintainer-mode enable make rules and dependencies not useful + --disable-maintainer-mode disable make rules and dependencies not useful (and sometimes confusing) to the casual installer --enable-silent-rules less verbose build output (undo: `make V=1') --disable-silent-rules verbose build output (undo: `make V=0') @@ -1589,7 +1589,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -gjs configure 1.29.17 +gjs configure 1.30.0 generated by GNU Autoconf 2.68 Copyright (C) 2010 Free Software Foundation, Inc. @@ -2079,7 +2079,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by gjs $as_me 1.29.17, which was +It was created by gjs $as_me 1.30.0, which was generated by GNU Autoconf 2.68. Invocation command line was $ $0 $@ @@ -2894,7 +2894,7 @@ # Define the identity of the package. PACKAGE='gjs' - VERSION='1.29.17' + VERSION='1.30.0' cat >>confdefs.h <<_ACEOF @@ -2947,13 +2947,13 @@ -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5 -$as_echo_n "checking whether to enable maintainer-specific portions of Makefiles... " >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to disable maintainer-specific portions of Makefiles" >&5 +$as_echo_n "checking whether to disable maintainer-specific portions of Makefiles... " >&6; } # Check whether --enable-maintainer-mode was given. if test "${enable_maintainer_mode+set}" = set; then : enableval=$enable_maintainer_mode; USE_MAINTAINER_MODE=$enableval else - USE_MAINTAINER_MODE=no + USE_MAINTAINER_MODE=yes fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_MAINTAINER_MODE" >&5 @@ -17790,7 +17790,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by gjs $as_me 1.29.17, which was +This file was extended by gjs $as_me 1.30.0, which was generated by GNU Autoconf 2.68. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -17856,7 +17856,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -gjs config.status 1.29.17 +gjs config.status 1.30.0 configured by $0, generated by GNU Autoconf 2.68, with options \\"\$ac_cs_config\\" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gjs-1.29.17/configure.ac new/gjs-1.30.0/configure.ac --- old/gjs-1.29.17/configure.ac 2011-08-12 09:50:46.000000000 +0200 +++ new/gjs-1.30.0/configure.ac 2011-09-27 16:24:52.000000000 +0200 @@ -2,8 +2,8 @@ # Process this file with autoconf to produce a configure script. m4_define(pkg_major_version, 1) -m4_define(pkg_minor_version, 29) -m4_define(pkg_micro_version, 17) +m4_define(pkg_minor_version, 30) +m4_define(pkg_micro_version, 0) m4_define(pkg_version, pkg_major_version.pkg_minor_version.pkg_micro_version) AC_PREREQ(2.61) @@ -16,7 +16,7 @@ AC_SUBST([GETTEXT_PACKAGE]) AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE], ["$GETTEXT_PACKAGE"], [The name of the gettext domain]) -AM_MAINTAINER_MODE +AM_MAINTAINER_MODE([enable]) m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])]) # our first pkg-config invocation is conditional, ensure macros still work diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gjs-1.29.17/gi/object.c new/gjs-1.30.0/gi/object.c --- old/gjs-1.29.17/gi/object.c 2011-07-20 19:47:20.000000000 +0200 +++ new/gjs-1.30.0/gi/object.c 2011-09-17 16:03:19.000000000 +0200 @@ -674,6 +674,7 @@ if (unthreadsafe_template_for_constructor.gobj == NULL) { GParameter *params; int n_params; + GTypeQuery query; gtype = g_registered_type_info_get_g_type( (GIRegisteredTypeInfo*) priv->info); if (gtype == G_TYPE_NONE) { @@ -692,6 +693,9 @@ priv->gobj = g_object_newv(gtype, n_params, params); free_g_params(params, n_params); + g_type_query(gtype, &query); + JS_updateMallocCounter(context, query.instance_size); + if (G_IS_INITIALLY_UNOWNED(priv->gobj) && !g_object_is_floating(priv->gobj)) { /* GtkWindow does not return a ref to caller of g_object_new. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gjs-1.29.17/gjs/context.c new/gjs-1.30.0/gjs/context.c --- old/gjs-1.29.17/gjs/context.c 2011-08-12 09:33:26.000000000 +0200 +++ new/gjs-1.30.0/gjs/context.c 2011-09-17 16:03:19.000000000 +0200 @@ -56,6 +56,8 @@ guint prop_id, const GValue *value, GParamSpec *pspec); +static JSBool gjs_on_context_gc (JSContext *cx, + JSGCStatus status); struct _GjsContext { GObject parent; @@ -70,7 +72,10 @@ char **search_path; - unsigned int we_own_runtime : 1; + guint idle_emit_gc_id; + + guint we_own_runtime : 1; + guint gc_notifications_enabled : 1; }; struct _GjsContextClass { @@ -79,19 +84,19 @@ G_DEFINE_TYPE(GjsContext, gjs_context, G_TYPE_OBJECT); -#if 0 enum { + SIGNAL_GC, LAST_SIGNAL }; static int signals[LAST_SIGNAL]; -#endif enum { PROP_0, PROP_JS_VERSION, PROP_SEARCH_PATH, - PROP_RUNTIME + PROP_RUNTIME, + PROP_GC_NOTIFICATIONS }; @@ -335,6 +340,22 @@ PROP_JS_VERSION, pspec); + pspec = g_param_spec_boolean("gc-notifications", + "", + "Whether or not to emit the \"gc\" signal", + FALSE, + G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY); + + g_object_class_install_property(object_class, + PROP_GC_NOTIFICATIONS, + pspec); + + signals[SIGNAL_GC] = g_signal_new("gc", G_TYPE_FROM_CLASS(klass), + G_SIGNAL_RUN_LAST, 0, + NULL, NULL, + NULL, + G_TYPE_NONE, 0); + gjs_register_native_module("byteArray", gjs_define_byte_array_stuff, 0); } @@ -386,6 +407,11 @@ js_context = GJS_CONTEXT(object); + if (js_context->idle_emit_gc_id > 0) { + g_source_remove (js_context->idle_emit_gc_id); + js_context->idle_emit_gc_id = 0; + } + if (js_context->search_path != NULL) { g_strfreev(js_context->search_path); js_context->search_path = NULL; @@ -674,6 +700,9 @@ /* For GjsDBus */ g_irepository_prepend_search_path(PKGLIBDIR); + if (js_context->gc_notifications_enabled) + JS_SetGCCallback(js_context->context, gjs_on_context_gc); + JS_EndRequest(js_context->context); g_static_mutex_lock (&contexts_lock); @@ -697,6 +726,9 @@ case PROP_JS_VERSION: g_value_set_string(value, js_context->jsversion_string); break; + case PROP_GC_NOTIFICATIONS: + g_value_set_boolean(value, js_context->gc_notifications_enabled); + break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); break; @@ -727,7 +759,9 @@ else js_context->jsversion_string = g_value_dup_string(value); break; - + case PROP_GC_NOTIFICATIONS: + js_context->gc_notifications_enabled = g_value_get_boolean(value); + break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); break; @@ -866,6 +900,45 @@ } /** + * gjs_context_gc: + * @context: a #GjsContext + * + * Initiate a full GC; may or may not block until complete. This + * function just calls Spidermonkey JS_GC(). + */ +void +gjs_context_gc (GjsContext *context) +{ + JS_GC(context->context); +} + +static gboolean +gjs_context_idle_emit_gc (gpointer data) +{ + GjsContext *gjs_context = data; + + gjs_context->idle_emit_gc_id = 0; + + g_signal_emit (gjs_context, signals[SIGNAL_GC], 0); + + return FALSE; +} + +static JSBool +gjs_on_context_gc (JSContext *cx, + JSGCStatus status) +{ + GjsContext *gjs_context = JS_GetContextPrivate(cx); + + if (status == JSGC_END) { + if (gjs_context->idle_emit_gc_id == 0) + gjs_context->idle_emit_gc_id = g_idle_add (gjs_context_idle_emit_gc, gjs_context); + } + + return TRUE; +} + +/** * gjs_context_get_all: * * Returns a newly-allocated list containing all known instances of #GjsContext. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gjs-1.29.17/gjs/context.h new/gjs-1.30.0/gjs/context.h --- old/gjs-1.29.17/gjs/context.h 2011-06-10 00:31:56.000000000 +0200 +++ new/gjs-1.30.0/gjs/context.h 2011-09-17 16:03:19.000000000 +0200 @@ -75,6 +75,8 @@ void gjs_context_maybe_gc (GjsContext *context); +void gjs_context_gc (GjsContext *context); + void gjs_dumpstack (void); G_END_DECLS continue with "q"... Remember to have fun... -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org
participants (1)
-
root@hilbert.suse.de