Version 1.44.0
--------------

- Add Lang.Interface and GObject.Interface [Philip Chimento, Roberto Goizueta,
  #751343, #752984]
- Support callbacks with (transfer full) return types [Debarshi Ray, #750286]
- Add binding for setlocale() [Philip Chimento, #753072]
- Improve support to generate code coverage reports [Sam Spilsbury, #743009,
  #743007, #742362, #742535, #742797, #742466, #751732]
- Report errors from JS property getters/setters [Matt Watson, #730101]
- Fix crash when garbage collection triggers while inside an init function
  [Sam Spilsbury, #742517]
- Port to CallReceiver/CallArgs [Tim Lunn, #742249]
- Misc bug fixes [Ting-Wei Lan, #736979, #753072] [Iain Lane, #750688]
  [Jasper St. Pierre] [Philip Chimento] [Colin Walters]

Version 1.43.3
--------------

- GTypeClass and GTypeInterface methods, such as
  g_object_class_list_properties(), are now available [#700347]
- Added full automatic support for GTK widget templates [#700347,
  #737661] [Jonas Danielsson, #739739]
- Added control of JS Date caches to system module [#739790]
- Misc bug fixes and memory leak fixes [Owen Taylor, #738122]
  [Philip Chimento, #740696, #737701]

Version 1.42.0
--------------

- Fix a regression caused by PPC fixes in 1.41.91

Version 1.41.91
---------------

- Added the ability to disable JS language warnings [Lionel Landwerlin,
  #734569]
- Fixed crashes in PPC (and probably other arches) due to invalid
  callback signatures [Michel Danzer, #729554]
- Fixed regressions with dbus 1.8.6 [Tim Lunn, #735358]
- Readded file system paths to the default module search, to allow
  custom GI overrides for third party libraries [Jasper St. Pierre]

Version 1.41.4
--------------

- Fixed memory management of GObject methods that unref their instance
  [#729545]
- Added a package module implementing the
  https://wiki.gnome.org/Projects/Gjs/Package application conventions
  [#690136]
- Misc bug fixes

Version 1.41.3
--------------

- Fixed GObject and Gtk overrides [Mattias Bengtsson, #727781] [#727394]
- Fixed crashes caused by reentrancy during finalization [#725024]
- Added a wrapper type for cairo regions [Jasper St. Pierre, #682303]
- Several cleanups to GC [#725024]
- Thread-safe structures are now finalized in the background, for greater
  responsiveness [#725024] [#730030]
- A full GC is now scheduled if after executing a piece of JS we see
  that the RSS has grown by over 150% [Cosimo Cecchi, #725099] [#728048]
- ParamSpecs now support methods and static methods implemented by glib
  and exposed by gobject-introspection, in addition to the manually
  bound fields [#725282]
- Protototypes no longer include static properties or constructors [#725282]
- Misc cleanups and bugfixes [Mattias Bengtsson, #727786] [#725282]
  [Lionel Landwerlin, #728004] [Lionel Landwerlin, #727824]

Version 1.40.0
--------------

- No changes

Version 1.39.90
---------------

- Implemented fundamental object support [Lionel Landwerlin, #621716, #725061]
- Fixed GIRepositoryGType prototype [#724925]
- Moved GObject.prototype.disconnect() to a JS implementation [#698283]
- Added support for enumeration methods [#725143]
- Added pseudo-classes for fundamental types [#722554]
- Build fixes [Ting-Wei Lan, #724853]

Version 0.3 (03-Jul-2009)
-------------------------

Changes:
    - DBus support
      At a high level there are three pieces. First, the "gjs-dbus" library is
      a C support library for DBus.  Second, the modules/dbus*.[ch] implement
      parts of the JavaScript API in C.  Third, the modules/dbus.js file fills
      out the rest of the JavaScript API and implementation.
    - 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
      - GHashTable return values/out parameters
      - Support GHashTable 'in' parameters
      - Convert JSON-style object to a 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

Contributors:
    Colin Walters, C. Scott Ananian, Dan Winship, David Zeuthen,
    Havoc Pennington, Johan Bilien, Johan Dahlin, Lucas Rocha,
    Marco Pesenti Gritti, Marina Zhurakhinskaya, Owen Taylor,
    Tommi Komulainen

Bugs fixed:
    Bug 560506 - linking problem
    Bug 560670 - Turn on compilation warnings
    Bug 560808 - Simple field supported for boxed types
    Bug 561514 - memory leak when skipping deprecated methods
    Bug 561516 - skipping deprecated methods shouldn't signal error case
    Bug 561849 - Alternate way of connecting signals.
    Bug 562892 - valgrind errors on get_obj_key
    Bug 564424 - Add an interactive console
    Bug 564664 - Expose JS_SetDebugErrorHook
    Bug 566185 - Allow code in directory modules
    Bug 567675 - Handle non-gobject-registered flags
    Bug 569178 - Add readline support to the console module
    Bug 570775 - array of parameters leaked on each new GObject
    Bug 570964 - Race when shutting down a context, r=hp
    Bug 580948 - Add DBus support
    Bug 584560 - Add support for UNIX shebang
    Bug 584850 - Clean up some __BIG definitions.
    Bug 584858 - Fix errors (and leftover debugging) from dbus merge.
    Bug 584858 - Move gjsdbus to gjs-dbus to match installed location.
    Bug 585386 - Add a flush() method to DBus bus object.
    Bug 585460 - Fix segfault when a non-existing node is introspected.
    Bug 586665 - Fix seg fault when attempting to free callback type.
    Bug 586760 - Support converting JavaScript doubles to DBus int64/uint64.
    Bug 561203 - Fix priv_from_js_with_typecheck() for dynamic types
    Bug 561573 - Add non-default constructors and upcoming static methods to "class"
    Bug 561585 - allow using self-built spidermonkey
    Bug 561664 - Closure support is broken
    Bug 561686 - Don't free prov->gboxed for "has_parent" Boxed
    Bug 561812 - Support time_t
    Bug 562575 - Set correct GC parameters and max memory usage
    Bug 565029 - Style guide - change recommendation for inheritance
    Bug 567078 - Don't keep an extra reference to closures
    Bug 569374 - Logging exceptions from tweener callbacks could be better
    Bug 572113 - add profiler
    Bug 572121 - Invalid read of size 1
    Bug 572130 - memory leaks
    Bug 572258 - profiler hooks should be installed only when needed
    Bug 580865 - Call JS_SetLocaleCallbacks()
    Bug 580947 - Validate UTF-8 strings in gjs_string_to_utf8()
    Bug 580957 - Change the way we trigger a warning in testDebugger
    Bug 581277 - Call JS_SetScriptStackQuota on our contexts
    Bug 581384 - Propagate exceptions from load context
    Bug 581385 - Return false when gjs_g_arg_release_internal fails
    Bug 581389 - Fix arg.c to use 'interface' instead of 'symbol'
    Bug 582686 - Don't g_error() when failing to release an argument
    Bug 582704 - Don't depend on hash table order in test cases
    Bug 582707 - Fix problems with memory management for in parameters
    Bug 584849 - Kill warnings (uninitialized variables, strict aliasing)
    Bug 560808 - Structure support


Version 0.2 (12-Nov-2008)
-------------------------

Changes:
    - Compatible with gobject-introspection 0.6.0
    - New modules: mainloop, signals, tweener
    - Support passing string arrays to gobject-introspection methods
    - Added jsUnit based unit testing framework
    - Improved error handling and error reporting

Contributors:
    Colin Walters, Havoc Pennington, Johan Bilien, Johan Dahlin, Lucas Rocha,
    Owen Taylor, Tommi Komulainen

Bugs fixed:
    Bug 557398 – Allow requiring namespace version
    Bug 557448 – Enum and Flags members should be uppercase
    Bug 557451 – Add search paths from environment variables
    Bug 557451 – Add search paths from environment variables
    Bug 557466 – Module name mangling considered harmful
    Bug 557579 – Remove use of GJS_USE_UNINSTALLED_FILES in favor of GI_TYPELIB_PATH
    Bug 557772 - gjs_invoke_c_function should work with union and boxed as well
    Bug 558114 – assertRaises should print return value
    Bug 558115 – Add test for basic types
    Bug 558148 – 'const char*' in arguments are leaked
    Bug 558227 – Memory leak if invoked function returns an error
    Bug 558741 – Mutual imports cause great confusion
    Bug 558882 – Bad error if you omit 'new'
    Bug 559075 – enumerating importer should skip hidden files
    Bug 559079 – generate code coverage report
    Bug 559194 - Fix wrong length buffer in get_obj_key()
    Bug 559612 - Ignore deprecated methods definitions.
    Bug 560244 - support for strv parameters


Version 0.1 
-----------

Initial version! Ha!
