~ubuntu-branches/ubuntu/trusty/glib2.0/trusty-proposed

1.2.21 by Sebastien Bacher
Import upstream version 2.12.12
1
General Information
2
===================
3
1.10.5 by Sebastian Dröge
Import upstream version 2.23.6
4
This is GLib version 2.23.6. GLib is the low-level core
1.2.21 by Sebastien Bacher
Import upstream version 2.12.12
5
library that forms the basis for projects such as GTK+ and GNOME. It
6
provides data structure handling for C, portability wrappers, and
7
interfaces for such runtime functionality as an event loop, threads,
8
dynamic loading, and an object system.
9
10
The official ftp site is:
1.2.22 by Sebastien Bacher
Import upstream version 2.13.2
11
  ftp://ftp.gtk.org/pub/glib
1.2.21 by Sebastien Bacher
Import upstream version 2.12.12
12
13
The official web site is:
14
  http://www.gtk.org/
15
16
Information about mailing lists can be found at
17
  http://www.gtk.org/mailinglists.html
18
19
To subscribe: mail -s subscribe gtk-list-request@gnome.org < /dev/null
20
(Send mail to gtk-list-request@gnome.org with the subject "subscribe")
21
22
Installation
23
============
24
25
See the file 'INSTALL'
26
1.9.1 by Emilio Pozuelo Monfort
Import upstream version 2.23.1
27
Notes about GLib 2.24
28
=====================
29
1.10.1 by Sebastien Bacher
Import upstream version 2.23.2
30
* It is now allowed to call g_thread_init(NULL) multiple times, and
31
  to call glib functions before g_thread_init(NULL) is called
32
  (although the later is mainly a change in docs as this worked before
33
  too). See the GThread reference documentation for the details.
34
35
* GObject now links to GThread and threads are enabled automatically
36
  when g_type_init() is called.
37
1.9.1 by Emilio Pozuelo Monfort
Import upstream version 2.23.1
38
* GObject no longer allows to call g_object_set() on construct-only properties
39
  while an object is being initialized. If this behavior is needed, setting a
40
  custom constructor that just chains up will re-enable this functionality.
41
1.10.2 by Sebastien Bacher
Import upstream version 2.23.3
42
* GMappedFile on an empty file now returns NULL for the contents instead of
43
  returning an empty string. The documentation specifically states that code
44
  may not rely on nul-termination here so any breakage caused by this change
45
  is a bug in application code.
46
1.2.49 by Martin Pitt
Import upstream version 2.21.3
47
Notes about GLib 2.22
48
=====================
49
50
* Repeated calls to g_simple_async_result_set_op_res_gpointer used
51
  to leak the data. This has been fixed to always call the provided
52
  destroy notify.
53
1.3.10 by Sebastien Bacher
Import upstream version 2.19.2
54
Notes about GLib 2.20
55
=====================
56
1.2.53 by Sebastien Bacher
Import upstream version 2.22.0
57
* The functions for launching applications (e.g. g_app_info_launch() +
1.3.10 by Sebastien Bacher
Import upstream version 2.19.2
58
  friends) now passes a FUSE file:// URI if possible (requires gvfs
59
  with the FUSE daemon to be running and operational). With gvfs 2.26,
60
  FUSE file:// URIs will be mapped back to gio URIs in the GFile
61
  constructors. The intent of this change is to better integrate
62
  POSIX-only applications, see bug #528670 for the rationale.  The
63
  only user-visible change is when an application needs to examine an
64
  URI passed to it (e.g. as a positional parameter). Instead of
65
  looking at the given URI, the application will now need to look at
66
  the result of g_file_get_uri() after having constructed a GFile
67
  object with the given URI.
68
1.3.1 by Sebastian Dröge
Import upstream version 2.17.0
69
Notes about GLib 2.18
70
=====================
71
72
* The recommended way of using GLib has always been to only include the
1.2.45 by Sebastien Bacher
Import upstream version 2.20.1
73
  toplevel headers glib.h, glib-object.h and gio.h. GLib enforces this by
74
  generating an error when individual headers are directly included.
75
  To help with the transition, the enforcement is not turned on by
1.3.1 by Sebastian Dröge
Import upstream version 2.17.0
76
  default for GLib headers (it is turned on for GObject and GIO).
77
  To turn it on, define the preprocessor symbol G_DISABLE_SINGLE_INCLUDES.
1.2.45 by Sebastien Bacher
Import upstream version 2.20.1
78
1.2.32 by Sebastien Bacher
Import upstream version 2.15.1
79
Notes about GLib 2.16
80
=====================
81
82
* GLib now includes GIO, which adds optional dependencies against libattr
1.2.45 by Sebastien Bacher
Import upstream version 2.20.1
83
  and libselinux for extended attribute and SELinux support. Use
1.2.32 by Sebastien Bacher
Import upstream version 2.15.1
84
  --disable-xattr and --disable-selinux to build without these.
85
1.2.21 by Sebastien Bacher
Import upstream version 2.12.12
86
Notes about GLib 2.10
87
=====================
88
89
* The functions g_snprintf() and g_vsnprintf() have been removed from
90
  the gprintf.h header, since they are already declared in glib.h. This
91
  doesn't break documented use of gprintf.h, but people have been known
92
  to include gprintf.h without including glib.h.
93
94
* The Unicode support has been updated to Unicode 4.1. This adds several
95
  new members to the GUnicodeBreakType enumeration.
96
1.2.45 by Sebastien Bacher
Import upstream version 2.20.1
97
* The support for Solaris threads has been retired. Solaris has provided
98
  POSIX threads for long enough now to have them available on every
99
  Solaris platform.
1.2.21 by Sebastien Bacher
Import upstream version 2.12.12
100
1.2.45 by Sebastien Bacher
Import upstream version 2.20.1
101
* 'make check' has been changed to validate translations by calling
102
  msgfmt with the -c option. As a result, it may fail on systems with
103
  older gettext implementations (GNU gettext < 0.14.1, or Solaris gettext).
1.2.21 by Sebastien Bacher
Import upstream version 2.12.12
104
  'make check' will also fail on systems where the C compiler does not
105
  support ELF visibility attributes.
106
1.2.45 by Sebastien Bacher
Import upstream version 2.20.1
107
* The GMemChunk API has been deprecated in favour of a new 'slice
108
  allocator'. See the g_slice documentation for more details.
1.2.21 by Sebastien Bacher
Import upstream version 2.12.12
109
110
* A new type, GInitiallyUnowned, has been introduced, which is
111
  intended to serve as a common implementation of the 'floating reference'
112
  concept that is e.g. used by GtkObject. Note that changing the
113
  inheritance hierarchy of a type can cause problems for language
114
  bindings and other code which needs to work closely with the type
115
  system. Therefore, switching to GInitiallyUnowned should be done
116
  carefully. g_object_compat_control() has been added to GLib 2.8.5
117
  to help with the transition.
118
119
Notes about GLib 2.6.0
120
======================
121
122
* GLib 2.6 introduces the concept of 'GLib filename encoding', which is the
123
  on-disk encoding on Unix, but UTF-8 on Windows. All GLib functions
124
  returning or accepting pathnames have been changed to expect
125
  filenames in this encoding, and the common POSIX functions dealing
126
  with pathnames have been wrapped. These wrappers are declared in the
127
  header <glib/gstdio.h> which must be included explicitly; it is not
128
  included through <glib.h>.
129
130
  On current (NT-based) Windows versions, where the on-disk file names
131
  are Unicode, these wrappers use the wide-character API in the C
132
  library. Thus applications can handle file names containing any
133
  Unicode characters through GLib's own API and its POSIX wrappers,
134
  not just file names restricted to characters in the system codepage.
135
136
  To keep binary compatibility with applications compiled against
137
  older versions of GLib, the Windows DLL still provides entry points
138
  with the old semantics using the old names, and applications
139
  compiled against GLib 2.6 will actually use new names for the
140
  functions. This is transparent to the programmer.
141
142
  When compiling against GLib 2.6, applications intended to be
143
  portable to Windows must take the UTF-8 file name encoding into
144
  consideration, and use the gstdio wrappers to access files whose
145
  names have been constructed from strings returned from GLib.
146
1.2.45 by Sebastien Bacher
Import upstream version 2.20.1
147
* Likewise, g_get_user_name() and g_get_real_name() have been changed
148
  to return UTF-8 on Windows, while keeping the old semantics for
1.2.21 by Sebastien Bacher
Import upstream version 2.12.12
149
  applications compiled against older versions of GLib.
150
151
* The GLib uses an '_' prefix to indicate private symbols that
1.2.45 by Sebastien Bacher
Import upstream version 2.20.1
152
  must not be used by applications. On some platforms, symbols beginning
153
  with prefixes such as _g will be exported from the library, on others not.
154
  In no case can applications use these private symbols. In addition to that,
155
  GLib+ 2.6 makes several symbols private which were not in any installed
1.2.21 by Sebastien Bacher
Import upstream version 2.12.12
156
  header files and were never intended to be exported.
157
1.2.45 by Sebastien Bacher
Import upstream version 2.20.1
158
* To reduce code size and improve efficiency, GLib, when compiled
159
  with the GNU toolchain, has separate internal and external entry
160
  points for exported functions. The internal names, which begin with
1.2.21 by Sebastien Bacher
Import upstream version 2.12.12
161
  IA__, may be seen when debugging a GLib program.
162
163
* On Windows, GLib no longer opens a console window when printing
164
  warning messages if stdout or stderr are invalid, as they are in
165
  "Windows subsystem" (GUI) applications. Simply redirect stdout or
166
  stderr if you need to see them.
167
168
* The child watch functionality tends to reveal a bug in many
1.2.45 by Sebastien Bacher
Import upstream version 2.20.1
169
  thread implementations (in particular the older LinuxThreads
170
  implementation on Linux) where it's not possible to call waitpid()
171
  for a child created in a different thread. For this reason, for
172
  maximum portability, you should structure your code to fork all
1.2.21 by Sebastien Bacher
Import upstream version 2.12.12
173
  child processes that you want to wait for from the main thread.
174
1.2.45 by Sebastien Bacher
Import upstream version 2.20.1
175
* A problem was recently discovered with g_signal_connect_object();
176
  it doesn't actually disconnect the signal handler once the object being
177
  connected to dies, just disables it. See the API docs for the function
178
  for further details and the correct workaround that will continue to
1.2.21 by Sebastien Bacher
Import upstream version 2.12.12
179
  work with future versions of GLib.
180
181
How to report bugs
182
==================
183
1.2.45 by Sebastien Bacher
Import upstream version 2.20.1
184
Bugs should be reported to the GNOME bug tracking system.
1.2.21 by Sebastien Bacher
Import upstream version 2.12.12
185
(http://bugzilla.gnome.org, product glib.) You will need
186
to create an account for yourself.
187
188
In the bug report please include:
189
190
* Information about your system. For instance:
191
192
   - What operating system and version
193
   - For Linux, what version of the C library
194
195
  And anything else you think is relevant.
196
1.2.45 by Sebastien Bacher
Import upstream version 2.20.1
197
* How to reproduce the bug.
1.2.21 by Sebastien Bacher
Import upstream version 2.12.12
198
1.2.45 by Sebastien Bacher
Import upstream version 2.20.1
199
  If you can reproduce it with one of the test programs that are built
200
  in the tests/ subdirectory, that will be most convenient.  Otherwise,
201
  please include a short test program that exhibits the behavior.
202
  As a last resort, you can also provide a pointer to a larger piece
1.2.21 by Sebastien Bacher
Import upstream version 2.12.12
203
  of software that can be downloaded.
204
205
* If the bug was a crash, the exact text that was printed out
206
  when the crash occured.
207
208
* Further information such as stack traces may be useful, but
209
  is not necessary.
210
211
Patches
212
=======
213
214
Patches should also be submitted to bugzilla.gnome.org. If the
215
patch fixes an existing bug, add the patch as an attachment
216
to that bug report.
217
218
Otherwise, enter a new bug report that describes the patch,
219
and attach the patch to that bug report.
220
1.9.1 by Emilio Pozuelo Monfort
Import upstream version 2.23.1
221
Patches should be in unified diff form. (The -up option to GNUdiff.)