Add bbt_add that does not take Metric parameter.
[ardour.git] / libs / sigc++2 / NEWS
1 2.2.2 (stable)
2
3 * Added an include of functors/slot.h that was mistakenly removed 
4   during the 2.1 series.
5   (Deng Xiyue) Bug #521418.
6
7 2.2.1 (stable):
8
9 * Really fix the build with Sun CC.
10   (Elaine Xiong. Bug #302098)
11
12 2.2.0 (stable):
13
14 * Build fixes when using gcc 4.3 pre-releases.
15   (Ryan Hill, Vladimir Marek)
16
17 2.1.1 (unstable):
18
19 WARNING: This is an unstable release and should not yet be 
20 packaged by distributions unless libsigc++ 2.0.x does not 
21 build for some reason (Please report such bugs).
22
23 * Removed the SigC:: namespace and other compatibility API, 
24   to fix the build with some versions of some compilers, 
25   such as the SUN Forte C++ CC compiler.
26   See bug #302098, for instance 
27   (Murray Cumming)
28 * sigc::signal<>:
29   - Added Added typedefs for 
30   value_type, reference, and pointer, so that these 
31   iterators are more like standard C++ iterators, so they can 
32   be used with standard C++ algorithms.  
33   (Michael Elkstrand) (Bug #417926).
34   - Added emit_reverse().
35   (John Profic)
36
37 2.0.17:
38
39 * slot::disconnect(): Make this work.
40   sigc::connection::disconnect() already worked.
41   (James Lin, Murray Cumming)
42 * visit_each compilation problem fixed.
43   (Philipp Berndt)
44
45 2.0.16:
46
47 * Fixed build for SUN Forte C++ 5.5
48 * Fixed build for MSVC++ 7.1
49 * Fixed crash when using --no-inline with g++.
50
51 2.0.15:
52
53 * g++ 3.2 (and Mac OS X g++ 3.3) build fix.
54   (Paul Pogonyshev)
55 * Compose: Fix slot lifetime regression introduced in 
56   2.0.9. (Philip Langdale)
57 * tests: Small ISO C++ correctness fix (Marek Rouchal)
58 * Don't specify unused function parameter names.
59   (Andris Pavenis)
60
61 2.0.14:
62
63 * SUN Forte 5.7 build fix for ambiguity when using 
64   inner template class. However, you still need the 
65   patch in bug #302098 to finish the build.
66
67 2.0.13:
68
69 * signal_emit::emit(): Ensure the correct order of 
70   destruction of the member variables, to avoid a leak.
71   (Andreas Ames, bug #306249)
72 * Allow recursive signal emission again.
73   (Neal E. Coombes, bug #303896)
74 * SUN Forte CC 5.5 build fixes:
75   - test_compatibility minor fix.
76   - visit_each() template specializations: 
77   Mention the bool I_derives_trackable template type,
78   (Friedemann Kleint, bug #305647)
79  - Check for the non-standard SUN reverse_iterator,
80   and use alternative code if necessary.
81   (Murray Cumming)
82
83 2.0.12:
84
85 * Fixes crashes when using virtual inheritance, particularly 
86   with bound by-reference parameters, caused by casting 
87   from derived to base when the derived destructor has run.
88   (Régis Duchesne)
89   This might affect non-g++ compilers, so do tell us about 
90   any problems.
91
92 2.0.11:
93
94 * Build fixes for SUN Forte, Tru64
95   (Murray Cumming), and MSVC++ (Cedric Gustin).
96
97 2.0.10:
98
99 * tests: Include <new> to avoid unresolved symbols on Tru64.
100   (Tim Mooney)
101 * When signal handlers are connected made during an emit
102   of the same signal, prevent them from being called in the
103   same emit, to prevent infinite loops.
104   (Neal E. Coombes)
105 * Performance improvement in a corner case.
106   (Neal E. Coombes).
107
108 2.0.9:
109
110 * sigc::bind() now works with the AIX and Tru64 compilers.
111   See the comments in sigc++/visit_each.h: visit_each_type() 
112   if you have compilation problems.
113   (Murray Cumming)
114 * sigc::var() is now documented. (Roger Ferrer Ibáñez)
115
116 2.0.8:
117
118 * Maybe avoid (incorrect) warning with g++ 3.3.5.
119   (Murray Cumming)
120 * Fix namespace ambiguity when using multiple 
121   major versions of libsigc++. (Liza Klerck)
122
123 2.0.7:
124
125 * Now builds with the following compilers, in addition to 
126 the existing GNU g++, SUN Forte CC 5.5, MSVC++ .Net 2003, 
127 and Intel compilers: 
128 - IBM AIX xlC v7
129 - Tru64 C++ V6.5-042
130 - IRIX MIPSpro 7.4.2m
131   (Older versions of all these compilers might also work.)
132   (Murray Cumming, www.thewrittenword.com)
133 * MSVC++ .Net 2003 build improvements.
134   (Cedric Gustin, Timothy M. Shead)
135 * Replace C-style casts with reinterpret_cast<> and 
136   static_cast<>. (e97_far at e.kth.se).
137 * Documentation: Added manual, based on the manual in 
138   libsigc++ 1.2, but updated for the new API.
139   (Murray Cumming)
140
141
142 2.0.6:
143
144 * Fixed a memory leak in sigc::slot.
145 * Fixed compilation for gcc-3.4.
146 * Fixed compilation for Intel C++ compiler (upgraded libtool).
147 * Fixed project files for MSVC .Net (Timothy M. Shead).
148 * Fixed segfaults when compiled with MSVC .Net 2003 (moved
149   all calls to new and delete into non-inline library code).
150 * In the compatibility module use correct bound_mem_functor
151   variants for const (volatile) methods when creating a slot.
152 * Minor documentation fix.
153 * Resolved bugs: #152327 #148744 #152323 #151404 #153143
154
155 2.0.5:
156
157 * Distribute pregenerated configuration header for MSVC .Net.
158
159 2.0.4:
160
161 * Fixed warnings and compiler errors in the test cases.
162 * Added a new test case (Murray Cumming).
163 * Fixed 'hello_world' example.
164 * Don't test optional features that fail with the Sun FORTE.
165 * Fixes for the Sun FORTE to compile out-of-the-box
166   (Damien Carbery, Murray Cumming, Martin Schulze).
167 * Fixes for MSVC to build a DLL out-of-the-box (James Lin).
168 * Improved compiler specific configuration during 'configure'.
169 * Added rmp description file libsigc++-2.0.spec (Eric Bourque).
170 * Minor documentation improvements (Murray Cumming).
171 * Resolved bugs: #147311 #147313 #147391 #144846 #145541
172
173 2.0.3:
174
175 * Fix segfault on emission of unconnected signal.
176 * Test emission of unconnected signals in the test case.
177 * Suppress compiler warning at dynamic_cast<>-test for good.
178   (Help from Christof Petig and Timothy M. Shead.)
179
180 2.0.2:
181
182 * Suppress compiler warning in compatibility module at
183   dynamic_cast<>-test (fix suggested by Timothy M. Shead).
184 * If a custom accumulator is specified invoke it on signal
185   emission even if the signal's slot list is empty. (This used
186   to be the case in libsigc++-1.2 as pointed out by Timothy.)
187
188 2.0.1:
189
190 * Fixed serious bug in reference counting in sigc::signal_base::impl().
191 * Fixed SigC::Object-derivation check in SigC::slot() compatibility module.
192 * Fixed compilation on Apple gcc 3.3 (assisted by Spundun Bhatt).
193 * Fixed configure check for gcc 3.4 (Murray Cumming).
194
195 2.0.0:
196
197 * Implemented sigc::connection::blocked() (Murray Cumming).
198 * Added the scripts directory to the make dist target (Murray Cumming).
199 * Added more documentation (Martin Schulze).
200
201 1.9.16:
202
203 * Fixed compiler warning in sigc::connection (Alexander Nedotsukov, Murray Cumming).
204 * Fixed examples and made them part of the regular build (Murray Cumming).
205 * Added header sigc++config.h for configure time checks (Murray Cumming).
206 * Added configure time checks to determine the correct syntax
207   for explicit template method specializations (Murray Cumming).
208 * Removed code using partial specializations of overloaded template methods
209   from test cases. SUN Forte doesn't support this feature (Martin Schulze).
210 * Fixed compilation for gcc 3.4 (Murray Cumming).
211
212 1.9.15:
213
214 API additions:
215 * Add numbered slot# templates.
216 * Allow for methods of the object's base types to be passed into sigc::mem_fun().
217
218 Other fixes and cleanups:
219 * Make is_base_and_derived template compatible with the SUN Forte.
220 * Non-template code moved from .m4 macro source to .h/.cc files (Murray Cumming).
221 * Implementation moved to .cc files (Murray Cumming).
222 * More fixes for the SUN Forte. Make some more ctors explicit.
223
224 1.9.14:
225
226 * Added sigc::slot_base::operator bool() (Murray Cumming).
227 * Build docs directory by default (Murray Cumming).
228 * Fixed minor doxygen issues (Murray Cumming).
229 * Fixed compiler warning in signal.h (Murray Cumming).
230
231 1.9.13:
232
233 * Fixed passing references through sigc::slot (Reported by Jeff Franks).
234 * Enabled binding of objects to method slots through sigc::bind().
235 * Reworked sigc::bind() API: Made the template argument for the
236   parameter position zero-based and optional. Added overloads for
237   binding of up to 7 arguments at a time when no position is specified.
238 * Reworked sigc::hide() API: Made the template argument for the
239   parameter position zero-based and optional.
240 * Fixed compilation problems with MSVC .Net 2003 (Roel Vanhout).
241 * Distribute MSVC .Net 2003 project files in the tarballs.
242 * Improved and extended documentation.
243 * Minor cleanups.
244
245 1.9.12:
246
247 * Added adaptor retype(). With this final API addition all adaptors
248   are in place that are available in libsigc++-1.2.
249 * Added negation lambda operator. Use STL names for lambda actions.
250 * Remove formerly disabled support for gcc extension typeof().
251 * Added project files for MS Visual Studio .Net 2003. (Roel Vanhout)
252 * Make libsigc++2 compile with .Net 2003. (Roel Vanhout, Martin Schulze)
253 * Build shared version of libsigc++2 by default. (Cedric Gustin)
254 * Add support for win32 platform. (Cedric Gustin)
255 * Install .m4 files. (requested by Ron Steinke)
256 * Cleaned up functors.
257 * Restructured and completed documentation of the core library parts.
258
259 1.9.11:
260
261 API Additions and important bug fixes:
262 * Compatibility module completed. libsigc++-1.2 filenames are preserved.
263 * Fixed critical bug in auto-disconnection: don't defer detaching
264   of a slot from all referred trackables during signal emission.
265 * Reduced size of slots significantly.
266 * Fixed support for sigc::ref() in adaptors.
267 * Fixed sigc::visit_each(): only hit targets that are passed by
268   reference; pass bound members in bound_member_functor by reference.
269 * Add lambda actions sigc::{reinterpret,static,dynamic}_cast_
270   to support explicit parameter conversion.
271 * Add adaptors sigc::retype_return<>() and sigc::hide_return().
272
273 Minor fixes:
274 * Fixed return type deduction for bind<0>.
275   libsigc++-1.9.11 should compile with gcc-3.3.
276 * Fixed copy constructor and operator=() of slot template.
277 * Fixed a compiler warning in signal_emit#<>::emit().
278 * Improved test case.
279
280 1.9.10:
281
282 * Fix compiler issues with gcc-3.3.2 (patch from Jeff Franks).
283 * Remove compiler check for the gcc extension typeof().
284 * Simplify bind_functor templates.
285 * Move definition of struct nil into functor_trait.h.
286
287 1.9.9:
288
289 * Add a constructor to sigc::connection that takes a slot_base&
290   to support user defined slot lists like they are used in gtkmm.
291 * Fix compiler issues with gcc-3.3.2 (reported by Jeff Franks).
292
293 1.9.8:
294
295 * Add compatibility module that defines namespace SigC.
296   namespace SigC should be API compatible to libsigc++-1.2.
297   Currently only the core parts of the library are supported.
298   Adaptors are still to follow.
299 * Fix connection::operator=(). Include connection.h in sigc++.h.
300 * Get rid of namespace functor.
301 * Rename dependency to destroy_notify_callback.
302 * Rename trackable::clear() to trackable::notify_callbacks().
303 * Move slot_base, signal_base, slot_iterator[_buf], slot_list
304   out of namespace internal. They are public API.
305 * Add reference counter to signal_impl enabling signals
306   to share the underlying information.
307 * Add convenience function signal#::make_slot().
308 * Get rid of one-letter-parameter-names.
309 * Get rid of "using namespace ..." in the test cases.
310 * Add lambda operators subscript ([]) and assign (=).
311 * Fix is_base_and_derived<> for const types.
312 * New and updated documentation.
313 * Add previous announces to file NEWS.
314
315 1.9.7:
316
317 * Added sigc++/sigc++.h. (Murray Cumming)
318 * Added member_method example. (Murray Cumming)
319 * Renamed closure to slot.
320 * Fixed issues with gcc-3.3. (Adreas Rottmann)
321 * Removed unnecessary void specializations.
322 * Made adaptors' operator()() (overload with no arguments) return a value.
323 * Made visit_each() support adaptors.
324 * Overhauled return type deduction to make it work without typeof().
325 * Added convinience macros SIGC_FUNCTORS_HAVE_RESULT_TYPE and 
326 SIGC_FUNCTOR_TRAIT(T_functor, T_result) to make return type deduction system 
327 support 3rd-party funtors.
328 * Changed syntax of group adaptor from "[functor] % grp([lambdas])" to "group
329 ([functor], [lambdas])".
330 * Made many fixes to lambda functionality.
331 * Added var() and constant() lambda creators.
332 * Added many lambda operators.
333 * Added ref() which creates a reference wrapper to enable storage of 
334 references in bind and group adaptors.
335 * Expanded test suite.
336 * Added documentation. (Corrections by Murray Cumming)
337
338 1.9.6:
339
340 * First public release of the unstable 2.0 generation.
341   libsigc++ 2.0 uses modern C++ mechanisms to achieve a highly
342   flexible, yet typesafe callback system. It supports all features of
343   libsigc++ 1.2 and improves upon it by:
344   - No need to specify the number of arguments in signal definitions.
345   - Connection of any compatible (=implicitly convertable) functor
346    to a signal.
347   - Implicit type conversions of parameters during signal emission.
348   - Lambda adaptor for complete restructuring of functor parameter
349    lists in one line (subject to changes).
350   - Signal has a fully featured stl style list interface.
351   - A convinient accumulator API (replacing the old marshaller API).
352   - Removal of unnecessary memory management functionality.
353   - Lightweight class "trackable" for use as base class of your
354    class hierarchy replaces class "Object".