1guile-gnome-platform NEWS --- history of user-visible changes.
2
3
4Copyright (C) 2004-2008, 2011-2012, 2014-2017
5Free Software Foundation, Inc.
6See the end for copying conditions of this file.
7
8
9Guile-Gnome is a Guile wrapper collection for most of the GNOME core
10libraries.
11
12See the README, for more information.
13
14
15Guile-Gnome-Platform 2.16.5 - David Pirotte, 2017-06-02
16=======================================================
17
18* Changes since 2.16.4
19
20  Guile-Gnome is now compatible with Guile-2.2
21
22  But don't hail, this is a maintainance release, which actually
23  merely comment the build of the Corba and Gnome-VFS modules, due to
24  incompatible changes in Guile-2.2 (see their corresponding entry in
25  configure.ac for a better explanation):
26
27  This is reversible though, if you think you have the skill and some
28  free time to fix these two, please do! And get in touch with us of
29  course...
30
31  Dependencies
32  ------------
33
34  Guile-Gnome now allows Guile-2.2, and requires Guile >= 2.0.14
35
36
37Guile-Gnome-Platform 2.16.4 - David Pirotte, 2015-12-08
38=======================================================
39
40This release fixes a serious bug, leading to a runtime error for
41Guile-Gnome built against Gcc >= 5.0.
42
43Glib
44----
45
46* glib/gnome/gobject/gclosure.c: gcc_please_look_the_other_way must be
47  declared volatile.
48
49
50guile-gnome-platform 2.16.3 - David Pirotte, 2015-07-30
51=======================================================
52
53The primary objectives, working towards this release, were (1) to
54remove all code specific to the support of guile versions prior to
55guile 2, (2) getting rid of all guile related deprecated messages
56[that second part of the mission almost completed, there is still one
57corba related deprecated warning message, help to resolve that last
58one is welcome!], and (3) wrap gdk_pixbuf_get_pixels required by
59guile-clutter 1.12.
60
61All modules
62-----------
63
64* Guile-Gnome now requires Guile 2.0, allows Guile 2.2
65* Requires G-Wrap >= 1.9.15
66* Requires Guile-Cairo >= 1.10
67
68    Note that at the time we write, Guile-Cairo 1.10 has not been
69    released yey, it will hopefully soon be the case.  In the mean
70    time, the required bleeding edge Guile-Cairo stable version must
71    be obtained from the source, see:
72
73       http://www.nongnu.org/guile-cairo/dev/
74
75* toplevel calls moved into an eval-when conditions exp...
76* scm-error incorrect arg list, various calls, all fixed.
77* all [but 1 Corba related] Guile deprecated calls removed
78* remove use of some undocumented GOOPS internals
79* adapt to GOOPS changes in Guile 2.2
80* make check and make distcheck both have been fixed to work with
81  recent automake versions [thanks to Ludovic Courtés for his help wrt
82  to make check]
83
84Corba
85-----
86
87* fixing allocate-instance for <CORBA:Object>
88* gnome-corba-error, gruntime-error, don't call save-stack
89  [deprecated]
90
91Glib
92----
93
94* g_get_current_time now [temporarily] ignored, it was not properly
95  wrapped anyway.
96* <glib-wrapset> missing some basic pointer types: guint8*, guchar*,
97  gunichar*, gunichar2* added and wrapped as opaque pointers.
98* scm_c_gparam_construct 4th argument type definition fixed
99* use &gw-bad-typespec, not &gw:bad-typespec, fixed.
100
101Gdk-Pixbuf
102----------
103
104* gdk_pixbuf_get_pixels removed from the ignore list, it returns a
105  guchar*, just added, no specific wrapper needed.
106
107Gtk
108---
109
110* gtk_recent_info_get_application_info should [temporarily] be
111  ignored, it needs a special wrapper, to be done still.
112
113
114guile-gnome-platform 2.16.2 -- 2012-09-05
115=========================================
116
117packaging changes
118-----------------
119* Instead of the terribly complicated revision control configuration
120  that we had before, now all code is in git, and in just one branch.
121  The build files like Makefile.am and configure.ac are no longer
122  generated from other files.
123
124* Update to support Guile 2.0 in addition to 1.8.  (We don't currently
125  install compiled .go files yet.)
126
127* Require G-Wrap 1.9.14.
128
129* If Guile is new enough, tab completion at the REPL will cause all
130  "latent" bindings to become present.  This makes it easier to explore
131  the API.
132
133glib
134----
135* Fix generation of code that produces errors when compiled when
136  wrapping GList* types.
137
138gtk
139---
140* Fix some instances of allocating boxed types with g_new0 instead of
141  the boxed type's own copy function.  Thanks to Greg Benison and
142  Patrick Bernaud.
143
144* Fix linking error regarding libgw-guile-gnome-gtk and libguile-cairo.
145  Thanks to Andreas Rottmann.
146
147* Add overrides with parameter annotations for methods of
148  GtkPrintOperation (bug #603211).  Thanks to Patrick Bernaud.
149
150* Add wrapper for gtk_tree_view_get_path_at_pos().  Thanks to Patrick
151  Bernaud.
152
153* Fix up some of the example files for 2.16.0 API.  Thanks to Patrick
154  Bernaud.
155
156* The GtkTextBuffer API now uses UTF-8 for Guile 2.0.  Thanks to Mark
157  Weaver.  There is more work to do regarding UTF-8 and Guile 2.0,
158  though.
159
160libglade
161--------
162* Fix automatic connection of signals to handlers (bug #605248).  Thanks
163  to Patrick Bernaud.
164
165
166guile-gnome-platform 2.16.1 - Andy Wingo, 2008-07-03
167====================================================
168
169packaging changes
170-----------------
171* Removed the "docs" module; its content, the tutorial, is now folded
172  into the documentation for all of the relevant modules (e.g. GLib,
173  GTK+, CORBA, etc.)
174
175* Changelogs have all been archived to ChangeLog.pre-2.16, because now
176  we will just use revision control logs.
177
178* Suppress some automake warnings.
179
180* Add guile-clutter to the set of configurable packages.
181
182atk
183---
184* Improved documentation.
185
186corba
187-----
188* Improved documentation, folding the tutorial text in to the (gnome
189  corba) module commentary.
190
191* Removed a printf.
192
193defs
194----
195* New platform release, no change.
196
197gconf
198-----
199* Imroved documentation, with example.
200
201* Fixed a bug regarding GConfClient notification.
202
203glib
204----
205* Improved documentation.
206
207* Build process is slightly less noisy.
208
209* Recognize GInitiallyUnowned as a sinkable object.
210
211This doesn't affect e.g. GTK+, for which we already recognize GtkObject
212as sinkable, but it does affect e.g. Clutter.
213
214* Don't error when constructing parameter types of which we are unaware.
215
216Affects e.g. ClutterUnit parameters; the precise nature of this fix will
217change in the future.
218
219* Accept integers as init values for <gchar> or <guchar> values.
220
221* Bugfix for custom-wrapped boxed values, like GdkRectangle.
222
223* Fix regressions on x86-64.
224
225gnome-vfs
226---------
227* Improved documentation, with some example code.
228
229gtk
230---
231* Improved documentation, merging in content from the tutorial into the
232  main GTK+ docs.
233
234libglade
235--------
236* Improved documentation, with an example.
237
238libgnome
239--------
240* Improved documentation.
241
242libgnomecanvas
243--------------
244* Improved documentation.
245
246libgnomeui
247----------
248* Improved documentation.
249
250pango
251-----
252* Added (gnome pangocairo) module, along with documentation.
253
254
255guile-gnome-platform 2.15.98 - Andy Wingo, 2008-04-25
256=====================================================
257
258packaging changes
259-----------------
260* Formally require Guile 1.8, as has been the case for a while now.
261
262* Bump the API_VERSION to 2, as a test before going stable.
263
264This will change all library names, pkg-config names, installed header
265names, etc. (use-modules (gnome-0)) in user code should be changed to
266(use-modules (gnome-2)). guile-gnome-0 is now guile-gnome-2.
267
268The purpose of this change is to shake out any bugs in the API_VERSION
269mechanism. The intention is for the next release to be 2.16.0, with
270API_VERSION=2.
271
272atk
273---
274* Documentation updated.
275
276gconf
277-----
278* Documentation updated.
279
280* Don't use API deprecated in Guile 1.8.
281
282glib
283----
284* API changes: Made gtype-interface-destroy! public. Removed the
285  terrible %especify-metaclass! as it is not used.
286
287* Documentation updated.
288
289* Don't use API deprecated in Guile 1.8.
290
291* A few bugfixes after the large changes in 2.15.97.
292
293gnome-vfs
294---------
295* Documentation updated.
296
297* Don't use API deprecated in Guile 1.8.
298
299gtk
300---
301* Documentation updated.
302
303* Don't use API deprecated in Guile 1.8.
304
305* Remove special wrapper for <gtk-message-dialog>, as GTK+ 2.10 has
306  enough of a gobject property interface.
307
308libglade
309--------
310* Documentation updated.
311
312libgnome
313--------
314* Documentation updated.
315
316* Don't use API deprecated in Guile 1.8.
317
318libgnomecanvas
319--------------
320* Documentation updated.
321
322* Don't use API deprecated in Guile 1.8.
323
324libgnomeui
325----------
326* Documentation updated.
327
328pango
329-----
330* Documentation updated.
331
332* Don't use API deprecated in Guile 1.8.
333
334
335guile-gnome-platform 2.15.97 - Andy Wingo, 2008-04-10
336=====================================================
337
338corba
339-----
340* Adapt to changes in (gnome gobject). corba-typecode->gtype-class is
341  the new name for corba-typecode->gtype.
342
343* Compilation fix if BONOBO_EX is already defined.
344
345gconf
346-----
347* Adapt to changes in (gnome gobject).
348
349glib
350----
351* Major rewrite of low-level (gnome gobject) code.
352
353GTypes are no longer exposed to Scheme. Instead, types are represented
354directly as <gtype-class> instances.
355
356Internally, <gtype-class> instances know their GType, because is stored
357in a <read-only-slot>, which stores a raw (untagged) word -- the perfect
358size for a GType.
359
360Similarly, I also removed the need for <%gtype-instance> smobs as well,
361through interesting trickery: the GOOPS objects directly store the
362GTypeInstance* pointer in a <read-only-slot>. The trickery is that we
363can be notified when the struct is collected, via monkeypatching the
364<gtype-class> objects to free via a custom function,
365scm_gtype_instance_struct_free. This allows us to unref the object.
366
367The same strategy was applied to GValue wrappers. With this change,
368Guile-GNOME no longer holds C data in SMOBs.
369
370Removing the <gtype>, <%gtype-class>, <%gtype-instance>, and primitive
371<gvalue> types has allowed for the removal of much useless,
372non-orthogonal glue API.
373
374Signals and parameters are also represented natively with GOOPS objects,
375not structures. There is no overhead for this, as GOOPS objects are in
376fact structures, whose VTable is their class.
377
378This is an incompatible change, but one which allows me to commit to a
379stable API/ABI, perhaps in the next release.
380
381Please test your programs against this version, so that I can help you
382port, and so that we can make sure that the API is fine.
383
384gnome-vfs
385---------
386* Adapt to changes in (gnome gobject).
387
388gtk
389---
390* New function wrapper: gtk-widget-get-state.
391
392* Reintroduce gtk-menu-popup wrapper, this time supporting the menu
393  positioning function.
394
395* Adapt to changes in (gnome gobject).
396
397* Interface changes: Tree models now deal in <gtype-class> instances,
398  now that there are no more GType objects. This applies to the list
399  store, tree store, and the generic tree model.
400
401* Make the texinfo viewer understand more kinds of @def commands.
402
403libglade
404--------
405* Adapt to changes in (gnome gobject).
406
407libgnomecanvas
408--------------
409* Compilation fixes with picky compilers.
410
411
412guile-gnome-platform 2.15.96 - Andy Wingo, 2007-12-10
413=====================================================
414
415packaging changes
416-----------------
417* Support a variant of check-coverage that generates a texinfo file with
418  the missing functions.
419
420* Various buildfixes for building out-of-tree modules such as
421  guile-gnome-gstreamer.
422
423atk
424---
425* API review. Lots of interface types actually declared.
426
427* Documentation changes: add type index, section for undocumented
428  exports, regenerated for changes resulting from API review.
429
430cairo
431-----
432* Remove (gnome cairo), as we have no actual public API.
433
434corba
435-----
436* Add automatically generated documentation and API regression tests.
437  The docs need some work, however.
438
439docs
440----
441* Minor updates.
442
443gconf
444-----
445* API review.
446
447* Documentation changes: add type index, section for undocumented
448  exports, regenerated for changes resulting from API review.
449
450glib
451----
452* API review.
453
454* Documentation changes: add type index, section for undocumented
455  exports, regenerated for changes resulting from API review.
456
457* Bugfix: avoid SCM_STRING_CHARS in core (gnome gobject) code, which
458  will raise an exception when called on shared substrings.
459
460* Fixes to the fifo.scm example, which uses GIOChannel.
461
462* Leave guile mode at the right time in g-main-loop-run, fixing some
463  hangs.
464
465* Change to the wrapset generator to no longer silently wrap opaque
466  types; instead, functions that reference unknown types are ignored,
467  and a warning is printed out. Requires more discipline when making
468  wrapsets, but reduces random crap being wrapped.
469
470* Add support for appending a list of undocumented functions to the
471  generated documentation.
472
473* Add support for wrapping more kinds of C structures: freeable
474  pointers, generic refcounted pointers, and destructurable values. See
475  the changes to (gnome gw support gobject) for more information.
476
477gnome-vfs
478---------
479* API review.
480
481* Documentation changes: add type index, section for undocumented
482  exports, regenerated for changes resulting from API review.
483
484gtk
485---
486* API review.
487
488* Documentation changes: add type index, section for undocumented
489  exports, regenerated for changes resulting from API review.
490
491* Fixes to make sure that all examples work.
492
493* Fix crasher in gtk-tree-model-iter-next.
494
495libglade
496--------
497* API review.
498
499* Documentation changes: add type index, section for undocumented
500  exports, regenerated for changes resulting from API review.
501
502libgnome
503--------
504* API review.
505
506* Documentation changes: add type index, section for undocumented
507  exports, regenerated for changes resulting from API review.
508
509libgnomecanvas
510--------------
511* API review.
512
513* Documentation changes: add type index, section for undocumented
514  exports, regenerated for changes resulting from API review.
515
516* Fix wrapper for GnomeCanvasPoints.
517
518libgnomeui
519----------
520* Documentation changes: add type index, section for undocumented
521 exports, regenerated for changes resulting from API review.
522
523* API review, resulting in a number of functions being ignored.
524
525pango
526-----
527* Documentation changes: add type index, section for undocumented
528 exports, regenerated for changes resulting from API review.
529
530* API review, resulting in a number of functions being ignored.
531
532
533guile-gnome-platform 2.15.95 - Andy Wingo, 2007-11-10
534=====================================================
535
536packaging changes
537-----------------
538* Build system work: add common makefile include for unit tests and a
539  new check-coverage target to documentation builds.
540
541atk
542---
543* Added API regression test suite.
544
545gconf
546-----
547* Add API regression test suite.
548
549* Add documentation, generated from upstream gtk-doc.
550
551glib
552----
553* Added API regression unit tests for (gnome gw glib); previously only
554  (gnome gobject) was tested.
555
556* Add new code to check documentation coverage, integrated with the
557  build system via the generate-docs.mk file in the `pkg' module.
558
559* Fix documentation of class properties.
560
561gnome-vfs
562---------
563* Add API regression test suite.
564
565* Add documentation, generated from upstream gtk-doc.
566
567The docs are suboptimal, as they do not talk at all the mapping between
568gnome-vfs handles and scheme ports.
569
570gtk
571---
572* Incompatible change: (gnome gtk) only exports GDK and GTK functions
573
574(gnome gtk) used to re-export (oop goops), (gnome gobject), and a number
575of other modules. This was changed so that we could guarantee a stable
576interface for (gnome gtk); if you want other modules, you should
577explicitly require them.
578
579* Added API regression test suite.
580
581libglade
582--------
583* Added documentation, generated from upstream gtk-doc.
584
585* Added API regression test suite.
586
587libgnome
588--------
589* Add documentation, generated from upstream gtk-doc.
590
591* Add API regression test suite.
592
593libgnomecanvas
594--------------
595* Add API regression test suite.
596
597* Add documentation, generated from upstream gtk-doc.
598
599libgnomeui
600----------
601* Add documentation, generated from upstream gtk-doc.
602
603* Add API regression test suite.
604
605pango
606-----
607* Fix linking errors that made pangocairo unusable.
608
609* Add API regression test suite.
610
611
612guile-gnome-platform 2.15.94 - Andy Wingo, 2007-09-25
613=====================================================
614
615packaging changes
616-----------------
617* Added infrastructure to make documentation.
618
619atk
620---
621* Add documentation.
622
623corba
624-----
625* Fix a compiler warning.
626
627defs
628----
629* Remove .defs for libwnck, as they are not part of the platform.
630
631glib
632----
633* Added documentation for the gobject and glib wrappers.
634
635* Added unit tests which check that the (gnome gobject) and (gnome gw
636  glib) APIs do not unintentionally change incompatibly.
637
638* Added infrastructure for automatically producing documentation based
639  on upstream GTK-Doc documentation.
640
641* Fixed a number of API bugs; see the ChangeLog from 2006-09-01 and
642  before for more details. Should not affect user's applications.
643
644gtk
645---
646* Added documentation for the gtk and gdk wrappers.
647
648pango
649-----
650* Added documentation for the pango and pangocairo wrappers.
651
652
653guile-gnome-platform 2.15.93 - Andy Wingo, 2007-06-15
654=====================================================
655
656The most notable features of the release are that (1) it works, unlike
6572.15.92; and (2) load time is much faster with the latest Guile 1.8 CVS.
658
659cairo
660-----
661* Guile-Gnome-Cairo 2.15.92 was unusable; fixed. Unfortunately this
662  means that we have to make another small shared library.
663
664defs
665----
666* Fix pango defs to include pango-tabs.h.
667
668glib
669----
670* Fix parsing of some options on arguments, such as (callee-owned),
671  broken since 2007-05-05.
672
673* Fix wrapper name of g-string-get-str.
674
675* Fix some default values lost when glib.defs was autogenerated.
676
677* Large speedup in load time of wrapped modules if we detect that
678  Guile's module-make-local-var! is "lightweight", as is the case in the
679  latest Guile 1.8 and HEAD CVS.
680
681gtk
682---
683* Fix wrapping of GdkEvent, which had broken mysteriously.
684
685
686guile-gnome-platform 2.15.92 - Andy Wingo, 2007-05-24
687=====================================================
688
689packaging changes
690-----------------
691* Updates to h2defs.py to automatically handle more cases.
692
693* Add cairo to guile-gnome-platform.
694
695atk
696---
697* Update to wrap ATK 1.12, corresponding to GNOME 2.16.
698
699cairo
700-----
701* G-wrap integration for external guile-cairo module.
702
703corba
704-----
705* Fix bug caused by change in guile-gnome-glib a while back that
706  prevented CORBA from loading (#416570).
707
708defs
709----
710* Update all defs files to the library versions corresponding to the
711  GNOME 2.16 development platform. Defs files are now entirely
712  autogenerated.
713
714docs
715----
716* New platform release, no change.
717
718gconf
719-----
720* Update to wrap GConf 2.18, corresponding to GNOME 2.16.
721
722glib
723----
724* Update to GLib 2.10. Notably, this wraps the GBookmarkFile API, and
725  the g_unicode and g_utf8 functions.
726
727* Fix POSIX signal handling when running the main loop with Guile 1.8.
728
729gnome-vfs
730---------
731* Update to wrap GNOME-VFS 2.16.
732
733gtk
734---
735* Update to wrap GTK+ 2.10, part of GNOME 2.16.
736
737* Require guile-cairo.
738
739* Bugfixes.
740
741libglade
742--------
743* Update to wrap libglade 2.6.0, corresponding to GNOME 2.16.
744
745libgnome
746--------
747* Update to wrap libgnome 2.16.
748
749libgnomecanvas
750--------------
751* Update to wrap libgnomecanvas 2.14, corresponding to GNOME 2.16.
752
753libgnomeui
754----------
755* Update to wrap libgnomeui 2.16.
756
757pango
758-----
759* Wrap pangocairo if cairo is available.
760
761* Update pango wrappers to version 1.14.
762
763
764guile-gnome-platform 2.15.91 - Andy Wingo, 2007-05-10
765=====================================================
766
767packaging changes
768-----------------
769* Require G-Wrap 1.9.8.
770
771atk
772---
773* Update for defs parser changes.
774
775docs
776----
777* Add "Getting started" chapter to tutorial.
778
779gconf
780-----
781* Updates for defs parser changes.
782
783glib
784----
785* Leave guile mode when calling into C, and enter when calling back into
786  Guile, as in GClosures. Guile-gnome now supports multithreaded
787  operation on Guile 1.8.
788
789* The custom handler for g_warning() and friends was removed;
790  guile-gnome will no longer scm_error when GLib logs.
791
792* The defs parser automatically recognizes more output arguments, for
793  example guint64*.
794
795* Many bugfixes.
796
797gnome-vfs
798---------
799* Updates for defs parser changes.
800
801gtk
802---
803* Additions:
804  - gtk-menu-popup accepts #f for parent widget arguments.
805  - gdk-event-button: accessors now work on 2button and 3button events.
806  - New GDK event accessor: gdk-event-button:time
807
808* Bugfixes:
809  - Fix gtk-icon-size-lookup and gtk-icon-size-get-name wrappers.
810
811* Updates for defs parser changes.
812
813libglade
814--------
815* Update for changes to defs parser.
816
817libgnomecanvas
818--------------
819* Update for changes in the defs parser.
820
821
822
823guile-gnome-platform 2.15.90 - Andy Wingo, 2006-12-15
824=====================================================
825
826packaging changes
827-----------------
828* Require G-Wrap 1.9.7.
829
830* Update to use bzr as the version control system, instead of tla.
831
832atk
833---
834* Build fix for g-wrap.
835
836corba
837-----
838* Build fix for g-wrap.
839
840gconf
841-----
842* Build fixes for g-wrap.
843
844glib
845----
846* Operate on GTypeInstances via a generic registry of fundamental type
847  operations. guile-gnome-glib comes with operations on GObject and
848  GParamSpec; wrappers can define other operations for other fundamental
849  types (such as GstMiniObject in GStreamer).
850
851* Require G-Wrap 1.9.7, so that we can place all of our generics in the
852  (gnome gw generics) module instead of in the root module.
853
854* Avoid calling scm_ functions while in GC sweep, fixes crashes on Guile
855  1.8.
856
857* Add support macro for wrapping custom unclassed GTypes, such as
858  GStreamer's fractions.
859
860* Don't ignore 'null-ok (or other options) in cases like this:
861  '("GMainContext*" "context" (null-ok) (default "NULL")).
862
863* Remove SLIB dependency by folding in the needed functionality.
864
865* Add support for gsize and gssize, both as input and output parameters.
866
867* Add accessors for fields of GError.
868
869* Other compile, memleak, and bug fixes.
870
871gnome-vfs
872---------
873* Build updates for g-wrap.
874
875* Don't attempt to wrap bonobo functions, they are not present in newer
876  gnome-vfs.
877
878* Fix locking, the --disable-deprecated mechanism, and some GCC 4
879  warnings.
880
881gtk
882---
883* Build updates for g-wrap, compile fixes for GCC 4.
884
885* Wrap GtkListStore (previously skipped by mistake).
886
887* Wrap gint* and guint* output args, and annotate some parameters as
888  null-ok.
889
890libglade
891--------
892* Build updates for g-wrap.
893
894libgnome
895--------
896* Build updates for g-wrap.
897
898libgnomecanvas
899--------------
900* Build updates for g-wrap and other compile fixes.
901
902libgnomeui
903----------
904* Build updates for g-wrap.
905
906pango
907-----
908* Build updates for g-wrap.
909
910
911guile-gnome-platform 2.7.99 - Andy Wingo, 2005-03-06
912====================================================
913
914* Require g-wrap >= 1.9.4.
915
916* Add a general option to disable wrapping deprecated functions.
917
918
919guile-gnome-platforn 2.7.98 - Andy Wingo, 2005-01-11
920====================================================
921
922* Initial release with NEWS.
923
924
925Copyright (C) 2004,2005,2006,2007,2008,2011 Free Software Foundation, Inc.
926
927Copying and distribution of this file, with or without modification, are
928permitted in any medium without royalty provided the copyright notice
929and this notice are preserved.
930