4 * Meson build: Perl is not required by new versions of mm-common
6 * NMake Makefiles: Support building with VS2022
10 * Upgrade the manual from DocBook 4.1 to DocBook 5.0
17 * Make it possible to use sigc++ as a subproject
19 * Fix dependency on files generated from .h.m4 files
21 * No implicit_include_directories
23 * Make quiet installations possible
25 * Fix build as subproject without building documentation
26 (Kjell Ahlstedt) Issue #71 (Xavier Claessens)
29 * Links to *.gnome.org refer to sigc++-2.0 and gtkmm-3.0 versions
30 instead of latest versions
37 * Meson build: Fix versioning on macOS
38 (Tom Schoonjans) Pull request #65
41 * sigc++/sigc++.h: Describe how to use libsigc++ with Meson
43 * Update links to the web page, now at
44 libsigcplusplus.github.io/libsigcplusplus
51 * Meson build: Set default value of the 'warnings' option to 'min'
53 * NMake Makefiles: Several improvements
54 (Chun-Wei Fan) Pull request #58
55 * docs/reference/: Update for Doxygen >= 1.8.16
59 * docs/manual/libsigc_manual.xml: Update signal and slot syntax
60 (Kjell Ahlstedt) Issue #59 (Denis Washington)
62 The tarball for 2.10.4 has been created with 'meson dist'.
63 If you build with Autotools from the tarball, please read the relevant
70 * Add Meson build, alongside the existing Autotools build.
71 (Kjell Ahlstedt, Chun-Wei Fan) Pull request #47, #50
72 * Improve MSVC builds on Windows
73 (Chun-Wei Fan) Pull request #50
74 * meson.build: Check if .git is a directory or file
75 (Kjell Ahlstedt) Merge request pangomm!8 (Ting-Wei Lan)
76 * docs/reference/meson.build: Check if perl is found
77 (Kjell Ahlstedt) Issue #53 (Rasmus Thomsen)
78 * README: Describe building with Meson and Autotools
82 * Make test_track_obj.cc compile with clang++
88 This release is identical to 2.10.1, except for:
89 * Reference docs generated by Doxygen 1.8.11.
90 Hopefully it will show up at
91 https://developer.gnome.org/libsigc++/stable/
96 * signal_impl::clear(): Don't clear the slot list during signal emission,
97 to prevent a segfault. And add a test for this.
98 (Kjell Ahlstedt) Bug #784550 (Andrejs Hanins)
99 * slot_base::set_parent(): Create a dummy slot_rep if necessary
100 (Kjell Ahlstedt) Bug #167714 (Gerald Britton)
101 * Avoid compiler warnings from function pointer conversions
102 (Kjell Ahlstedt) Issue #1 (sharkcz)
103 (Kjell Ahlstedt) Issue #8 (db0451)
106 * Make --disable-benchmark work.
107 (Christophe Lermytte) Bug #774732
108 * Replace the Visual Studio project files with MSVC NMake project files
109 Add MSVC_NMake/README.txt for Visual Studio builds
110 (Chun-wei Fan) Pull request #11
113 * signal_base: Warn against deletion during emission
114 (Kjell Ahlstedt) Bug #167714 (Gerald Britton)
115 * Update links in README, configure.ac, libsigcplusplus.doap
120 * Build: Fix silent builds.
121 (Kjell Ahlstedt) Bug #768797
127 Please tell us if you really need this.
129 Deprecate emit_reverse().
130 Please tell us if you really need this.
132 * Benchmark: Update it and use boost::timer, and actually build it,
133 but not built by default.
137 * Fix the build on MSVC++ 2013 and 2015.
138 (Chun-wei Fan) Bug #767777
143 * Minor documentation improvements.
145 * Some more minor uses of C++11 syntax.
151 * slot: Allow sigc::slot<R(Args...)> syntax, like std::function,
152 deprecating the sigc::slot<R, Args...> syntax.
153 (Murray Cumming, Kjell Ahlstedt) Bug #763393
154 * signal: Allow sigc::signal<R(Args...)> syntax, like std::function,
155 deprecating the sigc::signal<R, Args...> syntax.
156 (Murray Cumming, Kjell Ahlstedt) Bug #763393
161 * Documentation: Mention use with CMake.
165 * Deprecate sigc::ref() and sigc::reference_wrapper(),
166 adding support instead for std::ref(), std::cref(),
167 and std::reference_wrapper().
169 * mem_fun(): Deprecate mem_fun(pointer, func).
170 Leaving just mem_fun(reference, func).
171 Please let us know if you disagree strongly with this.
172 (Murray Cumming) Bug #763215
173 * Make all operator bool() explicit. (A C++11 feature.)
175 * Build: Remove some now-unnecessary configure checks.
176 But please let us know if this causes problems for you.
177 (Murray Cumming) Bug #762065 (Kjell Ahlstedt)
178 * Build: Update MSVC project.
180 * Documentation: Improve the documentation of mem_fun(), making it clear that
181 mem_fun() does not return a slot.
186 * signal: Add a moving connect() method, taking an rvalue reference
188 (Kjell Ahlstedt) Bug #756484
189 * can_deduce_result_type_with_decltype: Rename the check() methods to
190 checksize(). check() is a preprocessor macro in Mac OS X.
191 (Kjell Ahlstedt) Bug #759315 (David Otto)
192 * Temporarily undefine the nil macro, if it's defined.
193 nil is a preprocessor macro in Objective-C++ and Mac OS X.
194 (Kjell Ahlstedt) Bug #695235
195 * Correct the mem_functor<> declarations.
200 * slot: Handle auto-disconnection when a slot contains a slot
201 (Kjell Ahlstedt) Bug #755003 (Ryan Beasley)
202 * slot and signal: Correct move constructors and move assignments.
203 (Kjell Ahlstedt) Bug #756484.
204 * trackable, slot_base, signal_base, connection: Add some noexcept specs
205 (Kjell Ahlstedt) Bug #756484.
206 * trackable, slot, signal: Remove noexcept from move operations.
207 (Kjell Ahlstedt) Bug #756484.
208 * slot and signal: Add missing move constructors and move assignments
209 (Kjell Ahlstedt) Bug #756484.
210 * signal_impl: =delete copy and move operations.
211 (Murray Cumming, Kjell Ahlstedt) Bug #756484
212 * typed_slot_rep: =delete unimplemented copy and move operations.
213 (Murray Cumming, Kjell Ahlstedt) Bug #756484
214 * slot_rep: =delete copy and move operations.
215 (Murray Cumming, Kjell Ahlstedt) Bug #756484
220 * Add back deprecated adaptors/lambda API to avoid an unintented ABI break.
221 (Kjell Ahlstedt) Bug #755550 (Michael Biebl)
222 * sigc::trackable: Move operations: Don't move the callback list
223 (Kjell Ahlstedt) Bug #755393 (Tom Schoonjans)
228 * C++11: deduce_result_type: Simplify with C++11 variadic template.
229 (Murray Cumming, Marcin Kolny) Bug #753612
230 * Fix the build with MSVC.
231 (Chun-wei Fan) Bug #754082
232 * Update the website.
238 * slot_base::operator=(const &): Copy the blocked too,
239 so the destionation is blocked if the source is blocked,
240 regardless of whether the destionation was previously
241 blocked, because this seems to be what we should expect.
243 * C++11: slot_base, slot*, signal_base, signal*, trackable:
246 * Update MSVC Projects, requiring at least MSVC++ .Net 2013
253 * Use C++11 "using" aliases to simplify code that uses type traits.
254 (Murray Cumming) Bug #753580
259 * Remove useless headers:
266 Some of these still have equivalents in sigc++/adaptors/
267 (Kjell Ahlstedt, Murray Cumming) Bug #752560
268 * C++11: Replace deprecated std::auto_ptr by std::unique_ptr.
270 * C++11: Use std::is_base_of<> instead of our sigc::is_base_and_derived<>,
271 removing sigc::is_base_and_derived<>.
272 (Kjell Ahlstedt, Murray Cumming) Bug #752560
273 * C++11: Use of range-based for loops.
275 * C++11: Use of the auto keyword.
277 * C++11: Use of nullptr instead of 0.
279 * sigc++/slot.h: Use a regular .h file instead of generating it
280 from an .m4 file. Bug #752560
282 * Visual Studio Builds: Move 2010 Projects to 2012 to support C++11.
284 * Use -Wformat-security and -Wshadow with --enable-warnings=fatal.
290 * Use (and require) C++11
292 * Using C++11 lambda functions to create sigc::slots:
293 Avoid the need for SIGC_FUNCTORS_DEDUCE_RESULT_TYPE_WITH_DECLTYPE.
295 * Remove the already-deprecated sigc::lambda (and sigc::group) API.
296 This is an API change but should not be an ABI change, so it should
297 only affect you when rebuilding applications, if you use this API.
298 (Murray Cumming, Kjell Ahlstedt)
303 * A slot's functor is destroyed when an empty slot is assigned to the slot.
304 (Kjell Ahlstedt) Bug #738602 (James Lin)
305 * test_disconnect_during_emit tests that the slot is really disconnected
306 during signal emission.
311 Note: API/ABI is the same as in release 2.3.2. Compared to stable
312 releases 2.2.x, the API has been broken regarding visit_each() functions.
313 See the NEWS entry for libsigc++ 2.3.2.
315 * Fix the test_lambda test case for MS Visual C++ 2013 and other
316 C++11-compliant compilers.
317 (Kjell Ahlstedt) Bug #734368 (Ryan Beasley)
318 * Add a missing #include in limit_reference.h.
321 - Use doxygen-extra.css from the mm-common package.
322 Requires mm-common 0.9.7 when configured to use maintainer-mode.
327 Note: The implementation of bug #724496 breaks API for some users,
328 but it does not break ABI.
329 Only users who have added their own visit_each() overloads are affected by
330 the API break. Their programs will still compile, but there will be run-time
331 errors, if they rely on auto-disconnection of slots.
332 Updated instructions for users who implement their own adaptors are found
333 in the description of sigc::adapts<>.
335 * Replace visit_each() overloads by struct visitor<>.
336 Add the test_visit_each test case.
337 (Ryan Beasley, Kjell Ahlstedt) Bug #724496
338 * signal_impl::notify(): Don't delete signal_impl during erase().
339 (Kjell Ahlstedt) Bug #564005 (Alexander Shaduri)
340 * Fix 'make check' with clang++ 3.4 and --enable-warnings=fatal
341 (Kjell Ahlstedt) Bug #724496 (Ryan Beasley)
342 * Fix test_cpp11_lambda for gcc 4.8
344 * Speed up disconnection of slots.
345 (Kjell Ahlstedt) Bug #167714 (Neal E. Coombes)
346 * Auto-generate the ChangeLog from the git log for 'make dist'.
348 * Don't use __file__ in the FIREWALL m4 macro.
349 (Kjell Ahlstedt) Bug #699168 (John Ralls)
350 * Add the track_obj() adaptor and test_track_obj test case.
351 Deprecate libsigc++ lambdas, sigc::group() and sigc::var().
352 Use C++11 lambda expressions instead.
353 (Kjell Ahlstedt) Bug #672555
355 - Emphasize that signals are reference counted.
356 (Kjell Ahlstedt) Bug #611941 (Jonathon Jongsma)
357 - Mention std::function<> and std::bind() where appropriate.
358 (Kjell Ahlstedt, Chris Vine)
359 - Use DOXYGEN_SHOULD_SKIP_THIS consistently to exclude internal
360 functions from the reference documentation.
363 - Enable C++11 lambda expressions with MS Visual Studio 2012 and later
364 (Ryan Beasley) Bug #733752
365 - Update MSVC_Net2010
366 (Kjell Ahlstedt) Bug #724496 (Ryan Beasley)
370 * signal_base: Add blocked(), block(), unblock().
371 (Kjell Ahlstedt) Bug #153780
375 * Fix comma operator in libsigc++ lambda expressions.
376 Andris Pavenis) Bug #342911
377 * Added SIGC_FUNCTORS_DEDUCE_RESULT_TYPE_WITH_DECLTYPE.
378 This allows most uses of libsigc++'s lambda expressions to be
379 replaced by standard C++11 lambda expressions.
380 (Kjell Ahlstedt) Bug #672555.
381 Thanks to Chow Loong Jin, who posted similar code on libsigc-list.
382 * Use std::size_t and std::ptrdiff_t instead
384 * Fix 'make check' with gcc 4.7.
386 * Enable test_lambda in 'make check'.
387 (Kjell Ahlstedt) Bug #669128.
392 * slot_rep: Avoid access to deleted object in notify(),
394 (Kjell Ahlstedt ) Bug #564005 (Alexander Shaduri)
395 * Mention visit_each() in the documentation of sigc::adapts.
400 * trackable: Avoid calling the same callback function twice, fixing some
402 (Kjell Ahlstedt) Bug #589202
403 * Minor documentation corrections.
405 * Fix the build with GCC 4.6
407 * Windows build fixes for MSVC++ .Net 2005 and 2010
412 Nothing interesting. Just a small change for library.gnome.org.
417 - Added main page text with doxygen.
418 (David King, Murray Cumming)
419 - Fix the functors Doxygen group.
421 - Tutorial: Removed outdated marshallers section that had no working example.
422 (Murray Cumming) Bug #417924 (Michael Ekstrand)
426 * Slight documentation changes.
427 (Murray Cumming) Bug #614741 (Armin Burgmeier)
431 * Accumulators: Allow return types that are different to the signal's.
434 - Disable collaboration graphs in documentation
435 - Use non-blurry font for graph labels.
437 - sigc::hide() correction: It always only hides one signal argument.
439 * Fix the MSVC++ build.
444 * Namespace sigc is now documented, in order to make large chunks of the
445 reference reappear. (Daniel Elstner)
446 * The shipped reference documentation has been regenerated using Doxygen
447 1.6.1, so that the document type is now XHTML 1.0. (Daniel Elstner)
448 * The shipped Devhelp file has been generated with a newer version of the
449 XSLT script in mm-common, so that documentation groups no longer appear
450 as namespace prefixes in the keyword list. (Daniel Elstner)
454 * Reenable the per-class hierarchy graphs in the reference documentation.
456 * Drop the custom HTML header and footer, and use the shared doxygen.css
457 file from mm-common. (Daniel Elstner)
461 * New build system based on mm-common. The mm-common module is now
462 required for building from the git repository, but not for builds
463 of release archives. (Daniel Elstner)
464 * The public reference documentation is now hosted on library.gnome.org.
465 (Frédéric Péters, Daniel Elstner)
470 - Added project files (and property sheets) for
471 MSVC++ 2005 and 2008.
473 - Removed unnecessary dependency on afxrefs.h, so it builds
474 with MSVC++ Express editions.
479 * Added an include of functors/slot.h that was mistakenly removed
480 during the 2.1 series.
481 (Deng Xiyue) Bug #521418.
485 * Really fix the build with Sun CC.
486 (Elaine Xiong. Bug #302098)
490 * Build fixes when using gcc 4.3 pre-releases.
491 (Ryan Hill, Vladimir Marek)
495 WARNING: This is an unstable release and should not yet be
496 packaged by distributions unless libsigc++ 2.0.x does not
497 build for some reason (Please report such bugs).
499 * Removed the SigC:: namespace and other compatibility API,
500 to fix the build with some versions of some compilers,
501 such as the SUN Forte C++ CC compiler.
502 See bug #302098, for instance
505 - Added Added typedefs for
506 value_type, reference, and pointer, so that these
507 iterators are more like standard C++ iterators, so they can
508 be used with standard C++ algorithms.
509 (Michael Elkstrand) (Bug #417926).
510 - Added emit_reverse().
515 * slot::disconnect(): Make this work.
516 sigc::connection::disconnect() already worked.
517 (James Lin, Murray Cumming)
518 * visit_each compilation problem fixed.
523 * Fixed build for SUN Forte C++ 5.5
524 * Fixed build for MSVC++ 7.1
525 * Fixed crash when using --no-inline with g++.
529 * g++ 3.2 (and Mac OS X g++ 3.3) build fix.
531 * Compose: Fix slot lifetime regression introduced in
532 2.0.9. (Philip Langdale)
533 * tests: Small ISO C++ correctness fix (Marek Rouchal)
534 * Don't specify unused function parameter names.
539 * SUN Forte 5.7 build fix for ambiguity when using
540 inner template class. However, you still need the
541 patch in bug #302098 to finish the build.
545 * signal_emit::emit(): Ensure the correct order of
546 destruction of the member variables, to avoid a leak.
547 (Andreas Ames, bug #306249)
548 * Allow recursive signal emission again.
549 (Neal E. Coombes, bug #303896)
550 * SUN Forte CC 5.5 build fixes:
551 - test_compatibility minor fix.
552 - visit_each() template specializations:
553 Mention the bool I_derives_trackable template type,
554 (Friedemann Kleint, bug #305647)
555 - Check for the non-standard SUN reverse_iterator,
556 and use alternative code if necessary.
561 * Fixes crashes when using virtual inheritance, particularly
562 with bound by-reference parameters, caused by casting
563 from derived to base when the derived destructor has run.
565 This might affect non-g++ compilers, so do tell us about
570 * Build fixes for SUN Forte, Tru64
571 (Murray Cumming), and MSVC++ (Cedric Gustin).
575 * tests: Include <new> to avoid unresolved symbols on Tru64.
577 * When signal handlers are connected made during an emit
578 of the same signal, prevent them from being called in the
579 same emit, to prevent infinite loops.
581 * Performance improvement in a corner case.
586 * sigc::bind() now works with the AIX and Tru64 compilers.
587 See the comments in sigc++/visit_each.h: visit_each_type()
588 if you have compilation problems.
590 * sigc::var() is now documented. (Roger Ferrer Ibáñez)
594 * Maybe avoid (incorrect) warning with g++ 3.3.5.
596 * Fix namespace ambiguity when using multiple
597 major versions of libsigc++. (Liza Klerck)
601 * Now builds with the following compilers, in addition to
602 the existing GNU g++, SUN Forte CC 5.5, MSVC++ .Net 2003,
606 - IRIX MIPSpro 7.4.2m
607 (Older versions of all these compilers might also work.)
608 (Murray Cumming, www.thewrittenword.com)
609 * MSVC++ .Net 2003 build improvements.
610 (Cedric Gustin, Timothy M. Shead)
611 * Replace C-style casts with reinterpret_cast<> and
612 static_cast<>. (e97_far at e.kth.se).
613 * Documentation: Added manual, based on the manual in
614 libsigc++ 1.2, but updated for the new API.
620 * Fixed a memory leak in sigc::slot.
621 * Fixed compilation for gcc-3.4.
622 * Fixed compilation for Intel C++ compiler (upgraded libtool).
623 * Fixed project files for MSVC .Net (Timothy M. Shead).
624 * Fixed segfaults when compiled with MSVC .Net 2003 (moved
625 all calls to new and delete into non-inline library code).
626 * In the compatibility module use correct bound_mem_functor
627 variants for const (volatile) methods when creating a slot.
628 * Minor documentation fix.
629 * Resolved bugs: #152327 #148744 #152323 #151404 #153143
633 * Distribute pregenerated configuration header for MSVC .Net.
637 * Fixed warnings and compiler errors in the test cases.
638 * Added a new test case (Murray Cumming).
639 * Fixed 'hello_world' example.
640 * Don't test optional features that fail with the Sun FORTE.
641 * Fixes for the Sun FORTE to compile out-of-the-box
642 (Damien Carbery, Murray Cumming, Martin Schulze).
643 * Fixes for MSVC to build a DLL out-of-the-box (James Lin).
644 * Improved compiler specific configuration during 'configure'.
645 * Added rmp description file libsigc++-2.0.spec (Eric Bourque).
646 * Minor documentation improvements (Murray Cumming).
647 * Resolved bugs: #147311 #147313 #147391 #144846 #145541
651 * Fix segfault on emission of unconnected signal.
652 * Test emission of unconnected signals in the test case.
653 * Suppress compiler warning at dynamic_cast<>-test for good.
654 (Help from Christof Petig and Timothy M. Shead.)
658 * Suppress compiler warning in compatibility module at
659 dynamic_cast<>-test (fix suggested by Timothy M. Shead).
660 * If a custom accumulator is specified invoke it on signal
661 emission even if the signal's slot list is empty. (This used
662 to be the case in libsigc++-1.2 as pointed out by Timothy.)
666 * Fixed serious bug in reference counting in sigc::signal_base::impl().
667 * Fixed SigC::Object-derivation check in SigC::slot() compatibility module.
668 * Fixed compilation on Apple gcc 3.3 (assisted by Spundun Bhatt).
669 * Fixed configure check for gcc 3.4 (Murray Cumming).
673 * Implemented sigc::connection::blocked() (Murray Cumming).
674 * Added the scripts directory to the make dist target (Murray Cumming).
675 * Added more documentation (Martin Schulze).
679 * Fixed compiler warning in sigc::connection (Alexander Nedotsukov, Murray Cumming).
680 * Fixed examples and made them part of the regular build (Murray Cumming).
681 * Added header sigc++config.h for configure time checks (Murray Cumming).
682 * Added configure time checks to determine the correct syntax
683 for explicit template method specializations (Murray Cumming).
684 * Removed code using partial specializations of overloaded template methods
685 from test cases. SUN Forte doesn't support this feature (Martin Schulze).
686 * Fixed compilation for gcc 3.4 (Murray Cumming).
691 * Add numbered slot# templates.
692 * Allow for methods of the object's base types to be passed into sigc::mem_fun().
694 Other fixes and cleanups:
695 * Make is_base_and_derived template compatible with the SUN Forte.
696 * Non-template code moved from .m4 macro source to .h/.cc files (Murray Cumming).
697 * Implementation moved to .cc files (Murray Cumming).
698 * More fixes for the SUN Forte. Make some more ctors explicit.
702 * Added sigc::slot_base::operator bool() (Murray Cumming).
703 * Build docs directory by default (Murray Cumming).
704 * Fixed minor doxygen issues (Murray Cumming).
705 * Fixed compiler warning in signal.h (Murray Cumming).
709 * Fixed passing references through sigc::slot (Reported by Jeff Franks).
710 * Enabled binding of objects to method slots through sigc::bind().
711 * Reworked sigc::bind() API: Made the template argument for the
712 parameter position zero-based and optional. Added overloads for
713 binding of up to 7 arguments at a time when no position is specified.
714 * Reworked sigc::hide() API: Made the template argument for the
715 parameter position zero-based and optional.
716 * Fixed compilation problems with MSVC .Net 2003 (Roel Vanhout).
717 * Distribute MSVC .Net 2003 project files in the tarballs.
718 * Improved and extended documentation.
723 * Added adaptor retype(). With this final API addition all adaptors
724 are in place that are available in libsigc++-1.2.
725 * Added negation lambda operator. Use STL names for lambda actions.
726 * Remove formerly disabled support for gcc extension typeof().
727 * Added project files for MS Visual Studio .Net 2003. (Roel Vanhout)
728 * Make libsigc++2 compile with .Net 2003. (Roel Vanhout, Martin Schulze)
729 * Build shared version of libsigc++2 by default. (Cedric Gustin)
730 * Add support for win32 platform. (Cedric Gustin)
731 * Install .m4 files. (requested by Ron Steinke)
732 * Cleaned up functors.
733 * Restructured and completed documentation of the core library parts.
737 API Additions and important bug fixes:
738 * Compatibility module completed. libsigc++-1.2 filenames are preserved.
739 * Fixed critical bug in auto-disconnection: don't defer detaching
740 of a slot from all referred trackables during signal emission.
741 * Reduced size of slots significantly.
742 * Fixed support for sigc::ref() in adaptors.
743 * Fixed sigc::visit_each(): only hit targets that are passed by
744 reference; pass bound members in bound_member_functor by reference.
745 * Add lambda actions sigc::{reinterpret,static,dynamic}_cast_
746 to support explicit parameter conversion.
747 * Add adaptors sigc::retype_return<>() and sigc::hide_return().
750 * Fixed return type deduction for bind<0>.
751 libsigc++-1.9.11 should compile with gcc-3.3.
752 * Fixed copy constructor and operator=() of slot template.
753 * Fixed a compiler warning in signal_emit#<>::emit().
754 * Improved test case.
758 * Fix compiler issues with gcc-3.3.2 (patch from Jeff Franks).
759 * Remove compiler check for the gcc extension typeof().
760 * Simplify bind_functor templates.
761 * Move definition of struct nil into functor_trait.h.
765 * Add a constructor to sigc::connection that takes a slot_base&
766 to support user defined slot lists like they are used in gtkmm.
767 * Fix compiler issues with gcc-3.3.2 (reported by Jeff Franks).
771 * Add compatibility module that defines namespace SigC.
772 namespace SigC should be API compatible to libsigc++-1.2.
773 Currently only the core parts of the library are supported.
774 Adaptors are still to follow.
775 * Fix connection::operator=(). Include connection.h in sigc++.h.
776 * Get rid of namespace functor.
777 * Rename dependency to destroy_notify_callback.
778 * Rename trackable::clear() to trackable::notify_callbacks().
779 * Move slot_base, signal_base, slot_iterator[_buf], slot_list
780 out of namespace internal. They are public API.
781 * Add reference counter to signal_impl enabling signals
782 to share the underlying information.
783 * Add convenience function signal#::make_slot().
784 * Get rid of one-letter-parameter-names.
785 * Get rid of "using namespace ..." in the test cases.
786 * Add lambda operators subscript ([]) and assign (=).
787 * Fix is_base_and_derived<> for const types.
788 * New and updated documentation.
789 * Add previous announces to file NEWS.
793 * Added sigc++/sigc++.h. (Murray Cumming)
794 * Added member_method example. (Murray Cumming)
795 * Renamed closure to slot.
796 * Fixed issues with gcc-3.3. (Adreas Rottmann)
797 * Removed unnecessary void specializations.
798 * Made adaptors' operator()() (overload with no arguments) return a value.
799 * Made visit_each() support adaptors.
800 * Overhauled return type deduction to make it work without typeof().
801 * Added convinience macros SIGC_FUNCTORS_HAVE_RESULT_TYPE and
802 SIGC_FUNCTOR_TRAIT(T_functor, T_result) to make return type deduction system
803 support 3rd-party funtors.
804 * Changed syntax of group adaptor from "[functor] % grp([lambdas])" to "group
805 ([functor], [lambdas])".
806 * Made many fixes to lambda functionality.
807 * Added var() and constant() lambda creators.
808 * Added many lambda operators.
809 * Added ref() which creates a reference wrapper to enable storage of
810 references in bind and group adaptors.
811 * Expanded test suite.
812 * Added documentation. (Corrections by Murray Cumming)
816 * First public release of the unstable 2.0 generation.
817 libsigc++ 2.0 uses modern C++ mechanisms to achieve a highly
818 flexible, yet typesafe callback system. It supports all features of
819 libsigc++ 1.2 and improves upon it by:
820 - No need to specify the number of arguments in signal definitions.
821 - Connection of any compatible (=implicitly convertable) functor
823 - Implicit type conversions of parameters during signal emission.
824 - Lambda adaptor for complete restructuring of functor parameter
825 lists in one line (subject to changes).
826 - Signal has a fully featured stl style list interface.
827 - A convinient accumulator API (replacing the old marshaller API).
828 - Removal of unnecessary memory management functionality.
829 - Lightweight class "trackable" for use as base class of your
830 class hierarchy replaces class "Object".