1 == Seed 2.31.1, "The Black Album" (2010.03.29) ==
3 * Support for returning arrays of GTypes
5 * Support for GError types in various places
7 * Rework out arguments - old style still works, also returns
8 dictionary with keys named after parameters
10 * Support initialization using an existing JSGlobalContext
12 == Seed 2.30.0, "Piano Man" (2010.03.29) ==
14 * Second stable release!
16 == Seed 2.29.91, "Greatest Hits" (2010.02.23) ==
18 * Support void * arguments
20 * Support connecting to notify:: signals everywhere
22 == Seed 2.29.90, "Fort Nightly" (2010.02.08) ==
24 * To avoid potential filename collisions, the imports system now supports:
25 imports['somedir/somefile.js'] (Alan Knowles)
27 * Fix crash involving gtk_tree_model_get_value (Alan Knowles)
29 * Fix subtle crash in DBus bindings (Rob Taylor)
31 == Seed 2.29.5.3, "Twist and Shout" (2010.01.11) ==
33 * Pass null structs through as "null" instead of empty seed_structs
35 * Revert one of the 64-bit type safety commits from 2.29.5.2 until someone
36 can take a closer look at it; it broke enum typing on Linux
38 * Fix potential segfault in various modules (missing null sentinels)
40 == Seed 2.29.5.2, "Third Stage" (2010.01.07) ==
42 * Move tests to automake-style 'make check', away from the previous,
43 Python-based 'make test' tool; all tests are now assertion-based, instead of
44 the previous output-based style
46 * Fix various segfaults on Mac OS X (and possibly *BSD) related to 64-bit type
49 * Fix functionality of out arguments
51 * Interpreter now returns non-zero status code if it exits with an exception
53 == Seed 2.29.5.1, "Achtung Baby" (2010.01.01) ==
55 * Fix "duplicate symbol" errors on non-Linux platforms
57 == Seed 2.29.5, "Icky Thump" (2009.01.01) ==
59 * Fix build on non-GNU platforms (primarily Mac OS X)
61 * Distribute the REPL snippet with Seed again; the built-in REPL will work now
63 * Fix segfault when accidentally protecting already-garbage-collected values
65 * Fix segfault when accidentally unreffing nonexistant GIBaseInfos
67 == Seed 2.29.4, "( )" (2009.12.17) ==
69 * Improve type conversion portability; add seed_value_(to|from)_(s)size
72 * Small random cleanup of unused arguments.
74 == Seed 2.29.3 (2009.11.30) ==
78 == Seed 2.29.2, "Never Mind the Bollocks" (2009.11.16) ==
80 * Change semantics of seed_value_from_string and _from_filename; they
81 now return JavaScript null if passed a null input value.
83 * Seed interpreter adds --version argument
85 * libseed adds --seed-version argument
87 * Clutter extension wrapper for animate_with_alpha
89 == Seed 2.28.0, "The Rise and Fall of Ziggy Stardust and the Spiders
90 from Mars" (2009.09.21) ==
92 * First official stable release!
94 == Seed 2.27.92, "Metal Machine Music" (2009.09.07) ==
96 * Fix a bug in module building; modules are now versionless
98 * The instanceof operator now works for GTypes
100 * Add global support for G_TYPE_STRV
102 == Seed 2.27.91, "Yellow Submarine" (2009.08.21) ==
104 * Added seed_context_collect, to provide an interface for forcing
105 garbage collection manually
107 == Seed 2.27.90, "London Calling" (2009.08.10) ==
109 * Expanded and updated documentation; also available at:
110 http://library.gnome.org/devel/seed/unstable/
112 * All JavaScript contexts now have a __script_path__ property, which
113 exposes the absolute, canonical path to the evaluated script
115 * Add __init__.js functionality; if an imported folder contains __init__.js,
116 it will be evaluated with the imported context as the 'this' object
118 * Fix bug which caused inheritance from a GType created in Seed to fail
120 * Add "pretty" property installation, see:
121 tests/javascript/gtypes/gtype-property-nice.js
123 * New FFI module, provides an interface for calling non-introspected
124 native C functions from JavaScript
126 == Seed 0.8.5, "Self Portrait" (2009.07.10) ==
128 * Significant reorganization and expansion of the reference documentation
130 * New native modules:
132 * MPFR (partially complete)
134 * Same Seed has moved to the gsoc-seed-games branch of Gnome Games
135 (and will eventually move to master)
137 * Add seed-module.h, which includes a handful of macros to make writing modules
138 slightly more attractive. Look at gettext or the reference docs for examples.
140 * Prefix native modules with seed_ (libseed_readline.so, etc.); this fixes the
141 need to incessantly 'make clean' seed and cuts down on ambiguity in naming.
143 * Add 'seed_value_is_string', 'seed_value_is_number', and
144 'seed_value_is_object_of_class' to libseed
146 * Update examples to latest (now frozen) Clutter API changes.
148 * Fixes a bug with the importer search path which resulted in the search path
149 being overwritten each time something was imported
151 * The importer now also searches the directory in which the script being
152 executed is located by default.
154 == Seed 0.8, "Bringing It All Back Home" (2009.05.27) ==
156 * Importer now supports constructing directory objects, to avoid manipulation
157 of search path. Importer directory objects now support property enumeration.
159 * Fix small leak in GObject wrapper initialization. (and also simplify
162 * GtkBuilder module to handle GtkBuilder automatic signal connection.
164 * *_init methods now take normal arrays (by value) in addition to the special
167 * GObject constructors (init methods) now take "self" as a parameter.
169 * Passing non gobject-properties to a GObject constructor will set the
170 properties on the GObject wrapper.
172 * Module documentation rewritten in docbook, and builds one nice manual.
174 * New Cairo module, supports most of the cairo API, with automatic memory
175 management and everything you would expect.
177 * Fix a reference count leak introduced in the last few releases.
178 in some cases with non INITIALLY_UNOWNED objects.
180 * Some work on ClutterPad examples, and writing examples which live inside of it
181 (lots of fun to play with!, cairo example...fun spring example...ClutterBox2D)
183 * Working around a WebKit bug (which is actually fixed in SVN now), should
184 prevent a crash that happened sometimes with C modules.
186 * Clutter animatev wrapper looks up property type wrapper now, so as to avoid
187 having to pass [GObject.TYPE_FOO, bar]
189 * Implement some varargs functions which can be implemented on top of non-vararg
190 variants in JavaScript extensions.
192 * JSON stuff (stringify,parse) is now in gnome-js-common.
194 * Add seed_value_to_format to API, for converting an Array of SeedValue based
197 * Install seed-debug.h so modules can make use of it.
199 * Search path now works in nonstandard prefix, default search path includes
200 gnome-js-common moduledir (from pkgconfig).
202 * Support to/from Date objects to time_t.
204 == Seed 0.7, "Another Side of Bob Dylan" (2009.05.13) ==
206 * Support for library init methods.
208 * The REPL now supports multi-line entry.
210 * Signal disconnection.
212 * Significant Gtk-Doc reorganization.
215 * sandbox - provides sandboxed JavaScriptCore contexts.
216 * DBus - Client side DBus bindings.
217 * libxml - XML parsing, XPath, etc.
220 * New: ClutterPad (initially by Johan Euphrosine).
221 * New: dbus-banshee, dbus-consolekit, dbus-networkmanager
222 * New: xml-dom.js xml-tree.js, xml-xpath.js.
223 * Pango examples have returned.
224 * Same Seed performance is increased significantly.
225 * Many examples now use "recent" style; some were completely rewritten
227 * Improvements to test system, and quite a few more tests.
229 * Improvements to error checking/handling in signal code.
231 * Reorganization of API related to GClosure handling, much cleaner and easier.
233 * Several new API methods.
235 * GC related crash fixes.
237 * Improvements to seed_value_to_string (mostly formatting improvements).
239 * Void methods now properly return undefined instead of null.
241 * seed_make_exception takes format strings now.
243 == Seed 0.6, "Beatles for Sale" (2009.04.29) ==
245 * Significant build fixes and cleanups. Should build on more distros
246 with weird libffis now.
248 * Depend on GObject-introspection from GIT.
250 * Some API additions.
252 * Reimplement Seed.import_namespace in terms of the new imports system,
253 will be entirely deprecated for 0.6.
255 * Improve memory management in signals and closures.
257 * Rewrite the GType subclassing to avoid using FFI,
258 saves memory and improves performance.
260 * GType "init" now means "constructor" and not "instance init".
262 * Signal installation, is now handled by an array on the type definition
263 rather than in class_init (which was clunky and C-like).
265 * Lots of new documentation, including a documentation index, a description
266 of the mapping from C to JavaScript, an example index, and updates to
267 the rest of the documentation.
269 * Significant cleanup of all of the examples, a lot of them had bit
270 rotted a bit, being written months ago.
272 == Seed 0.5, "Transformer" (2009.04.16) ==
274 * Many, many crash fixes.
276 * Significantly better base memory usage (on the order of MB) for some apps.
278 * Enums use Gtk.WindowType.NORMAL instead of Gtk.WindowType.Normal.
279 This may break existing code in subtle ways (as Gtk.WindowType.Normal
280 will now be JavaScript null).
282 * instance_init is now just init when creating new GTypes. This will require
283 changes in any code using subclassing.
285 * Enum types are validated when passed in to functions now.
287 * Complete rewrite of import system, spanning GObject Introspection namespaces,
288 native modules, and JavaScript files, which is compatible with Gjs.
290 * Along with above, deprecate Seed.import_namespace.
292 * New 'os' module, similar to that of Python. Provides access to a significant
293 quantity of low-level system features unavailable from GLib.
295 * Significant updates to Canvas module - most features are compatible with the
296 Mozilla/WebKit implementations at this point.
298 * Clutter 0.9 animation API wrappers.
300 * Add seed_repl_expose; gives the ability to drop to a JavaScript REPL from
301 within C, and magically expose JSValueRefs to JS in a simple way.
303 * Seed.readline history persists between sessions (stored in ~/.seed_history)
305 * Support for several more array types.
307 * Added Seed.breakpoint(), which inserts a breakpoint instruction.
309 * API additions: Lots of API additions. Including a significant amount
310 of API documentation.
313 * opengl-glib examples (teapot, gears, triangle)
314 * Gtk Twitter client (from the Ars Technica article)
315 * Same Seed (Clutter 0.9 rewrite of Same Gnome)
316 * Clutter-COGL example
317 * Reddit client (Gio and JSON)
318 * Library of Clutter "slide transitions"
319 * Rewrote clutter example for 0.9
321 * The Lights Off example now lives in Gnome Games.
323 == Seed 0.3, "Wednesday Morning 3AM" (2008.12.31) ==
325 * Lots of memory changes. Memory usage isn't bad anymore,
326 reference counting actually works (no big leaks or anything anymore
327 ...there are still a few very small ones you can trigger).
328 Memory usage of most of the examples after they've loaded,
329 has about halved (or more in cases like the browser) since 0.1,
330 and now compares very favorably to other
331 dynamic languages. Lots of g_slice_alloc, which comes off
332 quite nicely when creating bunches of small structs like ClutterColor.
334 * Innumerable bug fixes.
336 * Structs work now! Things like GdkRectangle: you can allocate them,
337 get at their members, etc.
338 * Including struct "literals, i.e." stage.set_color({red: 255, alpha: 220}).
340 * GObject subclassing, which was rushed in to a 0.1 point release,
341 is reliable now! signal installation too.
343 * Multiple context support, rather than the silly global context.
345 * Support for string array argument conversion.
347 * C extension Modules
349 * Multiprocessing -- Simple IPC pipes. Just an example, really.
351 * canvas -- A little, toy, mostly functional but incomplete HTML Canvas
352 implementation. May be useful until we have cairo bindings.
353 Supports SVG/PDF output.
355 * Signals use userdata now. The 'this' argument was removed,
356 as it really just lead to organizational issues.
358 * object.signal.connect is defined for connecting by strings
359 (allows for connecting to detailed signals, like property notifications)
361 * 'out' arguments of methods work, granted in a rather poor fashion,
362 not sure of the best way to do this yet.
364 * Enums use Gtk.WindowType.Normal instead of Gtk.WindowType.normal,
365 may break existing code in subtle ways (as Gtk.WindowType.normal
366 will now be JavaScript null).
368 * Licensing update - libseed is LGPL. The trivial examples are BSD,
369 the more complete ones are GPL.
371 * Lots of leaks fixed, and also some reference bugs that lead to crashing.
373 * External API is pretty usable now.
375 * External API example (Turtle Graphics)
377 * Threading sort of works now. It's rather unpredictable,
378 but async callbacks and stuff are fine.
380 * Many more Seed examples. Ranging from Gnio Server, to threading. The
381 browser example is pretty neat now, and has sqlite bookmarks, WebInspector,
382 and a few other tidbits. lightsoff and browser are the two highlight examples
385 * Skeleton GTK-Doc for API
387 * New builtins: Seed.spawn, Seed.repl/glib_repl/thread_repl.
388 Kind of useful for debugging.
390 * Removed builtins: Seed.prototype: Now use Gtk.Window.prototype
391 Seed.closure, Automatically handled now.
392 Seed.closure_native, automagic.
393 Seed.readline, moved in to module.