-
Notifications
You must be signed in to change notification settings - Fork 2
/
NEWS
1899 lines (1351 loc) · 73.9 KB
/
NEWS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
USER VISIBLE CHANGES BETWEEN ACE-6.1.8 and ACE-6.2.0
====================================================
. Added MinGW64 as supported platform
. Added support for GCC 4.8.0
USER VISIBLE CHANGES BETWEEN ACE-6.1.7 and ACE-6.1.8
====================================================
. Small bug fixes
USER VISIBLE CHANGES BETWEEN ACE-6.1.6 and ACE-6.1.7
====================================================
. Integrated several patches to simplify Debian/Ubuntu
packaging
USER VISIBLE CHANGES BETWEEN ACE-6.1.5 and ACE-6.1.6
====================================================
. Added new event and sema initialization methods to OS_NS_Thread
to allow passing pre-initialized condition attributes providing
basic support for using time policies in ACE Event classes.
. Added TIME_POLICY support to ACE_Event classes to allow for
monotonic timer support for ACE Events.
. Added new regression test:
Monotonic_Manual_Event_Test
USER VISIBLE CHANGES BETWEEN ACE-6.1.4 and ACE-6.1.5
====================================================
. When a ACE_Event_Handler registered for signals is unregistered,
whether by unregistering, returning -1 from handle_signal(), or by
the reactor closing, the ACE_Event_Handler::handle_close() hook will
be called. The close_mask passed will be ACE_Event_Handler::SIGNAL_MASK.
In previous versions, handle_close() would only be called when the
handle_signal() callback returned -1. This resolves Bugzilla #2368.
. Some initial ACE unit tests to validate the C++11 support of various
compilers
. Added support for OpenSuSE 12.2
USER VISIBLE CHANGES BETWEEN ACE-6.1.3 and ACE-6.1.4
====================================================
. Added a new ACE_Time_Value derived template class (Time_Value_T.h):
template <class TIME_POLICY> class ACE_Time_Value_T
This template class overloads 4 new virtual methods from
the ACE_Time_Value base class to provide time policy aware
time values:
to_relative_time ()
to_absolute_time ()
now ()
duplicate ()
. Updated time policy classes to return ACE_Time_Value_T<> instantiations
for the corresponding time policy instead of 'common' time values.
. Added new ACE_Monotonic_Time_Policy (Monotonic_Time_Policy.h).
This class provides a monotonic time source for supported
platforms (Windows and POSIX platforms providing the required
clock_gettime() time source; currently verified for Windows and
Linux)
. Updated OS_NS_Thread to use the new time policy support in ACE_Time_Value
for (relative) time calculations and added new ACE_OS::condattr_setclock ()
method.
. Added TIME_POLICY support to ACE_Condition_Attributes to allow for
monotonic timer support for ACE_Condition.
. Added TIME_POLICY support to ACE_Message_Queue-s, ACE_Task-s and
related classes to enable support for monotonic timers in the timed
wait methods (ACE_Condition based). See docs/ACE-monotonic-timer.html
for how to use this.
. Added two new regression tests:
Monotonic_Task_Test
Monotonic_Message_Queue_Test
and updated the Bug_4055_Regression_Test to a fixed state.
USER VISIBLE CHANGES BETWEEN ACE-6.1.2 and ACE-6.1.3
====================================================
. Added support for Oracle Solaris Studio 12 Update 3 (SunCC 5.12)
. Added new XML_Utils library which comes from DAnCE but is now also used
by OpenDDS
USER VISIBLE CHANGES BETWEEN ACE-6.1.1 and ACE-6.1.2
====================================================
. Added compile time support for Windows CE 7, no runtime testing has
been performed
. The High Res Timer global scale factor on Windows is now 64bit, see bugzilla
3703 for the background of this. If you use the gsf in your code, use the
new ACE_High_Res_Timer::global_scale_factor_type type trait to not get
any conversion warnings
. Removed Tandem NSK v2/v3 support which resulted in cleanup throughout all
code. The emulations for ACE_INT64/ACE_UINT64 have been removed because no
platform is using them anymore
USER VISIBLE CHANGES BETWEEN ACE-6.1.0 and ACE-6.1.1
====================================================
. Minor bug fixes
USER VISIBLE CHANGES BETWEEN ACE-6.0.8 and ACE-6.1.0
====================================================
. Added compilation support for VxWorks 6.9, no runtime
testing has been performed
. Added ACE Run-length encoding compressor
. Fixed several Coverity reported issues
USER VISIBLE CHANGES BETWEEN ACE-6.0.7 and ACE-6.0.8
====================================================
. Added support for MPC's new feature that creates dependency files for IDL
files when generating '-type gnuace' projects. Turned off by default, it
can be enabled in a features file or on the command line with
'-features ace_idl_dependencies=1'.
USER VISIBLE CHANGES BETWEEN ACE-6.0.6 and ACE-6.0.7
====================================================
. Added a new method to ACE_Atomic_Op<LOCK, TYPE>, TYPE exchange (TYPE newval)
which does an atomic exchange of the new value with ACE_Atomic_Op's value
and returns the old value. The tests/Atomic_Op_Test.cpp test program has a
test case that exemplifies its usage; see the Exchange_Tester class.
. Added a new feature to timer queue templates classes: TIME_POLICY.
This feature is specified through a new template argument and provides the
timer queue with a policy for a timer (time of day) value. This feature is
intended to replace (in time) the gettimeofday setter method which has been
marked @deprecated. For now backwards compatibility is guaranteed.
The TIME_POLICY feature provides flexibility with regards to providing a timer
source to the timer queues as well as the possibility for a fully optimized
calling path.
A number of standard time policies are provided in ace/Time_Policy.h.
The tests/Timer_Queue_Test.cpp has been updated to reflect and exemplify these
changes.
. Added the TIME_POLICY feature also to countdown time class which has now
become a template (ace/Countdown_Time_T.h)
. Initial support for Microsoft Visual Studio 11
. Increased overall code quality by using Coverity and Klocwork
USER VISIBLE CHANGES BETWEEN ACE-6.0.5 and ACE-6.0.6
====================================================
. Removed autoconf support, only traditional way of
compilation is shipped from now
. Add support for RHEL 6.1 64bit
USER VISIBLE CHANGES BETWEEN ACE-6.0.4 and ACE-6.0.5
====================================================
. Improved support for Android and added the ability to run all ACE/TAO tests
automatically using the Android emulator
USER VISIBLE CHANGES BETWEEN ACE-6.0.3 and ACE-6.0.4
====================================================
. Removed support for C++ Builder
. Added support for building with the Android NDK, at least r5c. This
is currently available for linux host platforms.
USER VISIBLE CHANGES BETWEEN ACE-6.0.2 and ACE-6.0.3
====================================================
. Added support for GCC 4.6
USER VISIBLE CHANGES BETWEEN ACE-6.0.1 and ACE-6.0.2
====================================================
. The ACE_wrappers/ace/OS.h file has been restored in order to ensure
build-time compatibility with older ACE versions. Its use will still
cause your build to incur more processing time than using the needed
ace/OS_NS_*.h files; however, you should be able to build OS.h-including
code without needing to replace it with OS_NS_* includes.
. Improved and simplified QNX support
. Changed rand_r() and getpwnam_r() to conform Single UNIX Specification.
. Fixed performance of send_v on windows when individual iovec elements
are particularly large.
USER VISIBLE CHANGES BETWEEN ACE-6.0.0 and ACE-6.0.1
====================================================
. Added support for MinGW with GCC 4.5
USER VISIBLE CHANGES BETWEEN ACE-5.8.3 and ACE-6.0.0
====================================================
. Changed the string format produced by ACE::timestamp() from the ctime
format "Day Mon dd hh:mm:ss yyyy" to ISO-8601 yyyy-mm-dd hh:mm:ss.mmmmmm.
This makes the time easier to collate and removes any dependence on locale.
The change affects the output from ACE_Log_Msg's %D format and both VERBOSE
and VERBOSE_LIGHT timestamps in addition to application-made direct calls
to ACE::timestamp().
. Removed GCC < 3 support
. A new build system hook was added for users to include site-private rules
in a build. If a file named "rules.private.GNU" in located in any build
directory it will get included from
$ACE_ROOT/include/makeinclude/rules.local.GNU. The "private_rules_file"
make variable can be set to override the name and/or location of the file.
If no such rules file exists, its absence is silently ignored. This
facility can be used, for example, to integrate a specialized code checker
into the build process.
USER VISIBLE CHANGES BETWEEN ACE-5.8.2 and ACE-5.8.3
====================================================
. Two new methods were added to ACE_Pipe: close_read() and close_write().
These methods can be used to close individual pipe handles.
. The ACE::handle_ready() family of methods was changed to prefer using
poll() over select() on platforms where poll() is available. This
preference was previously only used if ACE_HAS_LIMITED_SELECT was set.
The ACE_HAS_LIMITED_SELECT choice is removed, making ACE_HAS_POLL the
setting that switches this preference. The driving reason for this
is that if select() is called to detect changes on a handle whose
values falls outside that which can safely be stored in an fdset,
the handle-setting macros/functions will set/clear bits outside
of the fdset. This results in very weird memory changes, often in
the stack, which are very hard to diagnose. poll()'s operation
does not suffer from this affect. With the growing use of large
numbers of handles and use of ACE_Dev_Poll_Reactor on Linux,
the rate at which this problem was cropping up was increasing.
. Added a simple helper ACE::is_equal() which compares equality of two
objects without using operator==. This is useful for comparing floating
point values.
. Removed all deprecated methods, arguments, files, classes, macros and
anything else we kept for years.
. Removed Irix/Tru64/SCO/Uniware/Cray support
. ACE_Pair has been removed. Users should now use std::pair.
. This is the last micro release that will work with GCC < 3, after x.8.3
support for GCC < 3 will be removed
USER VISIBLE CHANGES BETWEEN ACE-5.8.1 and ACE-5.8.2
====================================================
. Added support for the Microsoft Visual Studio 2010 IDE (vc10)
. Removed complete support for emulated C++ exceptions
USER VISIBLE CHANGES BETWEEN ACE-5.8.0 and ACE-5.8.1
====================================================
. Added support for Microsoft Visual Studio 2010 using nmake
. Reduced the amount of doxygen pages generated, the original settings caused
a doxygen generated html package of 1.4GB which was way too large
. Extended ACE INet addon library with:
* HTTP Basic Authentication
* SSL/HTTPS support.
* Proxy CONNECT tunneling.
USER VISIBLE CHANGES BETWEEN ACE-5.7.9 and ACE-5.8.0
====================================================
. There are two new ACE_Time_Value methods for getting and setting millisecond
values to/from ACE_UINT64 values:
ACE_UINT64 ACE_Time_Value::get_msec () const
void ACE_Time_Value::set_msec (const ACE_UINT64 &ms)
The former is a replacement for the existing msec(ACE_UINT64&) methods that
are "getter" methods whose signatures look confusingly like "setters". See
Bugzilla #3336 for the history behind this change.
The latter is for consistency and clarity.
. Added ACE INet addon library for Inet protocol clients (and possibly
servers at some point) like http://, ftp:// etc.
The library implements standard C++ iostream wrapper classes for
ACE Svc_Handler and Reactor based input/output handling, URL classes
and protocol handler classes.
NOTE: This is work in progress! There is no guarentee that the API
won't change in the next few releases.
Protocol handling is currently restricted to client side download
requests for HTTP and FTP.
Handling for upload requests should be added in the near future as well
as HTTP Basic Authentication.
USER VISIBLE CHANGES BETWEEN ACE-5.7.8 and ACE-5.7.9
====================================================
. ACE's default makefiles (traditional ACE/GNU, not autoconf/automake)
now support installation with "make install".
Please see the ACE-INSTALL.html file for instructions.
. Support for the ARCH make variable has been enhanced to apply to executables
(in addition to libraries and object files), and the ARCH feature has been
integrated into the MPC-generated makefiles (to work with MPC's requires
and avoids features).
USER VISIBLE CHANGES BETWEEN ACE-5.7.7 and ACE-5.7.8
====================================================
. ACE now uses GCC builtin Atomic instructions for short,
unsigned short, long, unsigned long, int, unsigned int,
and bool. This makes our Atomic_Op around 7 times faster
. ACE Service Configuration Framework now process first service
configuration files and then command-line directives. Thus if
application uses both service configuration files and command-line
directives then the command-line directives may override results of
directives in the configuration files. At the same time if the
application uses only the default svc.conf file and command-line
directives then the directives from svc.conf can not override
results of the user provided command-line directives.
. ACE_Dev_Poll_Reactor now dispatches notifications in only one thread at
a time. This brings notification handling more in line with behavior in
other Reactor implementations.
USER VISIBLE CHANGES BETWEEN ACE-5.7.6 and ACE-5.7.7
====================================================
. Integrated fix for bug 3104 and regression test for
interval timers.
. Added support for GCC builtin Atomic instructions which
are enabled with GCC >= 4.1 for PPC32/PPC64/IA64
. Improved autoconf support for debian
. Added support for -mcpu and -mtune. Add TCPU=.. to your
environment/platform_macros.GNU to specify you cpu and
than add cpumodelflag=1 and/or tunemodelflag=1. Using
this with IBM Cell increased the performance significantly
USER VISIBLE CHANGES BETWEEN ACE-5.7.5 and ACE-5.7.6
====================================================
. Added support for iPhone/iPod Touch/iPad. The following
environment variables are needed:
IPHONE_TARGET, should be set to either SIMULATOR or
HARDWARE. Set to HARDWARE if you want to deploy
on the iPhone/iPod Touch/iPad device.
IPHONE_VERSION, should be set to 3.1.2 or 3.2. One can
set the version to any future or past versions, but
only 3.1.2 and 3.2 have been tried.
Note that one has to compile ACE/TAO statically as
it is believed that the iPhone OS does not support
dynamic loading of external libraries. The usual
procedure of cross compiling ACE/TAO applies
(such as setting HOST_ROOT environment variable).
. Added support for Embarcadero C++ Builder 2010
. Added option to print a given ACE_Time_Value in the log
message instead of system supplied timestamp as in %T
and %D.
The option is implemented as a variant of the %D/%T
options by using the '#' flag character like '%#D' or
'%#T'. When using this flag an ACE_Time_Value pointer is
expected in the argument list supplied with the log message.
This fixed Bugzilla #3221.
. Fixed problems with ACE_INET_Addr::is_multicast() on
little endian platforms. This fixed bugzilla #3729.
. Added compilation support for VxWorks 6.8, no runtime
testing has been performed
USER VISIBLE CHANGES BETWEEN ACE-5.7.4 and ACE-5.7.5
====================================================
. Added MacOSX Snow Leopard support
. Added strsignal() wrapper
. Improved LynxOS support
. Updated Interix port
. Fixed MinGW compilation problems
USER VISIBLE CHANGES BETWEEN ACE-5.7.3 and ACE-5.7.4
====================================================
. ACE_CDR::consolidate now returns an int, 0 is ok, -1 is failure
. Fixed a bug in the realclean feature of the GNU makefiles
. Improved Sun Studio for Linux support
. Improved OpenBSD support
USER VISIBLE CHANGES BETWEEN ACE-5.7.2 and ACE-5.7.3
====================================================
. C++ Builder 2009 Update 3 is the only C++Builder that is supported, older
and newer compilers are not supported anymore
. Made final changes for the CEGCC port
. Added a set of tests to validate C++ compiler and the stl implementation
they ship.
. HP-UX PARISC aCC < 3.80 are deprecated and can't be used anymore. Upgrade
to aCC 3.80 or newer
USER VISIBLE CHANGES BETWEEN ACE-5.7.1 and ACE-5.7.2
====================================================
. Borland C++ makefiles aren't shipped anymore as part of the release
but have to be generated by the user
. Refactored gperf to have its own shared library so that we can reuse
that in TAO
. Added support for SuSE Enterprise 10
. ACE_Configuration_Heap::open() now returns -1 with errno EBUSY if it is
called multiple times. Previous versions would allow multiple calls to
open() but leak resources.
USER VISIBLE CHANGES BETWEEN ACE-5.7.0 and ACE-5.7.1
====================================================
. Added support for Sun Studio 12 Update Pack 1
. Fixed compile problems when using Windows CE x86 release mode
. Fixed compile problems for FreeBSD
USER VISIBLE CHANGES BETWEEN ACE-5.6.9 and ACE-5.7.0
====================================================
. Added support for the VxWorks vxAtomicLib which is available with VxWorks 6.6
and newer. If you don't want to use this library undef ACE_HAS_VXATOMICLIB
in your config.h file
. Added support for C++ Builder 2009 Update 3
. Added support for ACE/TAO using the CEGCC project
. Added support for upcoming Fedora 11 and OpenSuSE Factory
USER VISIBLE CHANGES BETWEEN ACE-5.6.8 and ACE-5.6.9
====================================================
. Removed Borland/CodeGear C++ Builder 2007 support. If you'd like to
fund this support please let us know.
. Removed VxWorks 5.5.x, 6.2, and 6.3 support. If you'd like to fund
this support please let us know.
. Improved Unicode support.
. Added support for the native Windows Vista and Windows Server 2008
condition variables. These has to be enabled at compile time, and when
enabled the application can only run on Vista or Server 2008. Add
ACE_HAS_WTHREADS_CONDITION_VARIABLE to your config.h file to enable
these
. Fixed a bug when trying to read a file of 1 byte when unicode is
enabled
. Improved the Windows CE port
. Fixed several Klocwork reported issues
. Added support for MinGW 3.15
. Added support for Incredibuild, which is an MSVC++ feature that
optimizes compiles via distributing builds.
USER VISIBLE CHANGES BETWEEN ACE-5.6.7 and ACE-5.6.8
====================================================
. Added a new function ACE::isdotdir() which determines if a specified
pathname is "dot dir" (ie. "." or ".."). ACE::isdotdir() is significantly
faster than pair of strcmp() calls.
. Last micro release that is maintained for Borland/CodeGear C++
Builder 2007 and Intel C++ on Windows.
. Fixed crash when ACE thread tries to inherit the logging attributes
from non ACE threads.
. Fixed many small compile and test errors that occur on some platforms.
. Fixed log output formatting on some platforms.
. Bugs fixed: 2748, 3164, 3480, 3494, 3502, 3541, 3542, 3544, 3557.
USER VISIBLE CHANGES BETWEEN ACE-5.6.6 and ACE-5.6.7
====================================================
. Changed the automake build's feature test for a "usable" config
to warn on failure instead of exiting with an error. This should
make it easier to diagnose configure failures, as the script will
now generate a config.h file even when the test fails.
. Removed borland MPC template, use the bmake template from now
. Added Windows Mobile 6 support and improved the WinCE port
. Removed BCB6 and BCB2006 support
. Added BCB2009 MPC template
. Updated stat struct on Windows CE to match the stat struct on other
platforms so that application code can be written portable
. Added new ACE_OS wrappers: raise, atof, atol, isblank, isascii,
isctype, and iswctype
. Added ACE_OS wrapper for narrow-char version of strtoll.
. ACE_OS wrappers for wide-char versions of strtol, strtoul,
strtoll, and strtoll.
. Added Visual Studio 2010 (vc10) support
. Added a new feature for the "Traditional Make" build facility to allow
building for multiple architectures out of a single source directory.
To use this facility, set the ARCH make variable. The ARCH value will be
used to add a subdirectory layer below the source directory where the
traditional .shobj, .obj, etc. directories will be placed.
. Added support for HP-UX 11iv3 on Integrity using aC++
. ACE (and TAO) can now be built using GNU make and the Microsoft Visual C++
compiler and linker. See include/makeinclude/platform_win32_msvc.GNU for
more details.
. Added support for FC10
USER VISIBLE CHANGES BETWEEN ACE-5.6.5 and ACE-5.6.6
====================================================
. Added an option to the ACE_Process_Options class to use a wchar_t
environment buffer on Windows.
. A new configure option, --enable-rcsid, was added to the autoconf build.
This is used to embed RCS IDs in object files.
. A new method was added: void ACE_Time_Value::msec (ACE_UINT64&)
This method, like the existing msec(ACE_UINT64&)const method, obtains the
time value in milliseconds and stores it in the passed ACE_UINT64 object.
This method was added so that msec(ACE_UINT64&) can be called on both
const and non-const ACE_Time_Value objects without triggering compile errors.
Fixes Bugzilla #3336.
. Added ACE_Stack_Trace class to allow users to obtain a stack trace
within their application on supported platforms. A new conversion
character, the question mark, was added to ACE_Log_Msg for stack
trace logging.
. Added iterator support to ACE_Message_Queue_Ex class. The resulted in
the addition of ACE_Message_Queue_Ex_Iterator class and
ACE_Message_Queue_Ex_Reverse_Iterator class.
. Renamed gperf to ace_gperf to prevent clashes with the regular gperf
tool that is available in linux distributions
. Added support for FC9
. Added support for OpenSuSE 11.0
. Improved support for GCC 4.2 and 4.3
. Added support for CodeGear C++ Builder 2009
USER VISIBLE CHANGES BETWEEN ACE-5.6.4 and ACE-5.6.5
====================================================
. Added new Monitoring lib that can be used to store and retrieve
counters. This is disabled by default because it is not 100%
finished yet, with the next release it will be enabled by default
. Fixed bug in ACE_Service_Config when it was used from a thread
not spawned by ACE
. Add VxWorks 6.x kernel mode with shared library support to ACE
. Extended the implementation of Unbounded_Set, which has been
renamed Unbounded_Set_Ex, to accept a second parameter which is
a comparator that implements operator() which returns true if
the items are equivalent. Unbounded_Set has been reimplemented
in terms of Unbounded_Set_Ex using a comparator that uses operator==,
which captures the previous behavior.
. Added support for Intel C++ on MacOSX
USER VISIBLE CHANGES BETWEEN ACE-5.6.3 and ACE-5.6.4
====================================================
. Reworked the relationship between ACE_Service_Config and
ACE_Service_Gestalt
. Improved autoconf support
. Improved AIX with gcc support
. Improved OpenVMS support
. Improved VxWorks support
USER VISIBLE CHANGES BETWEEN ACE-5.6.2 and ACE-5.6.3
====================================================
. Deprecated Visual Age 5 and older
. Closed a rare race condition hole whereby ACE_Atomic_Op<> function
pointers would not be fully initialized prior to use. See bugzilla
3185 for details.
. Tweaks to support MacOS X Leopard (10.5 and 10.5.1) on Intel
. Fixed compile problems with MinGW with GCC 4.2. Do note that we do see
much more test failures then when using GCC 3.4.
. Changed to use synchronous exception handling with msvc 8/9 which is the
default. Asynchrous exception handling does catch access violations but
it leads to lower performance and other problems. See also bugzilla 3169
. Make ace_main extern C with VxWorks so that it doesn't get mangled
. Fixed compile errors and warnings for VxWorks 6.6
. Added an MPC generator for the WindRiver Workbench 2.6 which is shipped
with VxWorks 6.4
. Added support for CodeGear C++ Builder 2007 with December 2007 update
installed
. Added support for VxWorks 5.5.1
. Implemented the const reverse iterator for ACE_Hash_Map_Manager_Ex
. Increased support for using ACE_Hash_Map_Manager_Ex with STL <algorithm>
functions based on latest standard C++ draft
USER VISIBLE CHANGES BETWEEN ACE-5.6.1 and ACE-5.6.2
====================================================
. ACE-ified the UUID class, which will change user applications slightly.
. Added support for Sun Studio 12
. Added support for Intel C++ 10.1
. Fixed runtime problems with VxWorks 6.x in kernel mode, several improvements
have been made to ACE, but also some problems in the VxWorks kernel have
been found for which WindRiver has made patches.
. Added support for VxWorks 6.5 kernel mode
. Added support for MacOS 10.5
. Support for MacOS 10.4 is now deprecated.
. Added support for OpenSuSE 10.3
. Added support for RedHat 5.1
. Added support for Microsoft Visual Studio 2008
. Added support for Fedora Core 8
. Added support for Ubuntu 7.10
. With Ubuntu 7.04 and 7.10 we can't use visibility, that results in
unresolved externals when building some tests. With lsb_release we
now detect Ubuntu 7.04 and 7.10 automatically and then we disable
visibility
. Removed deprecated (un)subscribe methods from ACE_SOCK_Dgram_Mcast
. Added an additional replace() method to ACE_OuptutCDR for replacing a
ACE_CDR::Short value. Also added write_long_placeholder() and
write_short_placeholder() to properly align the stream's write pointer,
write a placeholder value and return the placeholder's pointer. The pointer
can later be used in a call to replace() to replace the placeholder with a
different value.
. Initial support for VxWorks 6.6
. Removed support for pthread draft 4, 6, & 7. This makes the ACE threading
code much cleaner
. Improved autoconf support
. Fixed TSS emulation problems
. Changed ACE_thread_t and ACE_hthread_t to int for VxWorks kernel mode. All
thread creation methods do have an additional const char* argument to
specify the task name, this now also works with pthread support enabled
. Use bool in much more interfaces where this is possible
. Added support for Debian Etch
. Fixed ACE CDR LongDouble support on VxWorks 6.x
. Added Microsoft Visual Studio 2008 project files to the release packages
. Fixed a few bugs in the ACE_Vector template
USER VISIBLE CHANGES BETWEEN ACE-5.6 and ACE-5.6.1
====================================================
. Added support for CodeGear RAD Studio 2007
. Added support for CodeGear C++ Builder 2007 Update 3
. Modified the definiton of ACE_DEFAULT_THREAD_KEYS on Windows so it
is based on the version of the OS as defined by Microsoft in this web
page: http://tinyurl.com/2jqcmd
This fixes bugzilla #2753
USER VISIBLE CHANGES BETWEEN ACE-5.5.10 and ACE-5.6
====================================================
. OpenVMS 8.3 on IA64 port
. Added autoconf support for Intel C++ 10.0
. Improved autoconf support on Linux, Solaris, NetBSD and HPUX
. CodeGear C++ Builder 2007 Update 2 support
. The netsvcs's client logging daemon has a new configuration option,
-llocal-ip[:local-port], which can be used to specify the local IP
address and port number for the client logging daemon's connection to
the server logging daemon. If the -l option is specified with an IP
address but not a port number, an unused port number is selected.
. A new ACE+TAO port to LabVIEW RT 8.2 with Pharlap ETS. The host build
environment is Windows with Microsoft Visual Studio .NET 2003 (VC7.1).
Please see the ACE-INSTALL.html file for build instructions.
USER VISIBLE CHANGES BETWEEN ACE-5.5.9 and ACE-5.5.10
====================================================
. The ACE_utsname struct, used in the ACE_OS::uname() function when the
platform doesn't provide the standard utsname struct, was changed. It
defines a number of text fields and their types were changed from
ACE_TCHAR[] to char[] in order to be consistent with all other platforms.
This removes the need to write different code for platforms where
ACE_LACKS_UTSNAME_T is set and that have wide characters (most probably
Windows). Fixes Bugzilla #2665.
. The ACE::daemonize() "close_all_handles" parameter was changed from
an "int" to a "bool" to better reflect how it is used.
. VxWorks 6.5 support. Compilation of the core libraries has been validated
but no runtime testing has been performed.
. CodeGear C++ Builder 2007 support.
. The FaCE utility was moved from the ACE_wrappers/apps directory to
ACE_wrappers/contrib. It is used for testing ACE+TAO apps on WinCE.
See the ACE_wrappers/contrib/FaCE/README file for more information.
. ACE_INET_Addr::set (u_short port, char *host_name, ...) now favors IPv6
addresses when compiled with ACE_HAS_IPV6 defined and the supplied address
family is AF_UNSPEC. This means that if host_name has an IPv6 address in
DNS or /etc/hosts, that will be used over an IPv4 address. If no IPv6
address exists for host_name, then its IPv4 address will be used.
. Intel C++ 10.0 support
. Support for the version of vc8 for 64-bit (AMD64) shipped with the Microsoft
Platform SDK.
. Fixed ACE_Vector::swap() (bugzilla #2951).
. Make use of the Atomic_Op optimizations on Intel EM64T processors. The
Atomic_Op is now several times faster on EM64T then with previous versions
of ACE
USER VISIBLE CHANGES BETWEEN ACE-5.5.8 and ACE-5.5.9
====================================================
. Use Intel C++ specific optimizations for Linux on IA64
. Improved support for ACE_OS::fgetc. Added support for ACE_OS::fputc,
ACE_OS::getc, ACE_OS::putc and ACE_OS::ungetc.
. Added support for ACE_OS::log2(double) and improved support for
ACE::log2(u_long).
. Shared library builds on AIX now produce a libxxx.so file instead of the
previous practice of producing libxxx.a(shr.o).
. GCC 4.1.2 that comes with Fedora 7 seems to have a fix for the visibility
attribute we use for the singletons. F7 users will therefore need to
define the following in your config.h file.
ACE_GCC_HAS_TEMPLATE_INSTANTIATION_VISIBILITY_ATTRS 1
. Fixed (rare) problem in TP_Reactor where incorrect event handler was
resumed.
. Reduced footprint on some platforms, particularly those that use
g++ >= 3.3.
USER VISIBLE CHANGES BETWEEN ACE-5.5.7 and ACE-5.5.8
====================================================
. Extended ACE_Event constructor with optional LPSECURITY_ATTRIBUTES
argument
. Added support for QT4
. Added support to integrate with the FOX Toolkit (www.fox-toolkit.org)
. Added support for Microsoft Visual Studio Code Name "Orcas", which is
the msvc9 beta
. Added ability to provide an optional priority when calling
ACE_Message_Queue_Ex::enqueue_prio(). There was previously no way
to specify a priority for queueing.
. Removed support for Visual Age on Windows.
. ACE will compile once again with ACE_LACKS_CDR_ALIGNMENT #defined.
. ACE_Process_Manager::terminate() no longer removes the process from the
process descriptor table; the pid remains available in order to call
ACE_Process_Manager::wait().
USER VISIBLE CHANGES BETWEEN ACE-5.5.6 and ACE-5.5.7
====================================================
. ACE 5.5 contained a set of pragmas which prevented Visual Studio 2005 (VC8)
from issuing warnings where C run-time functions are used but a more
secure alternative is available. For more information on the C run-time
issues and Microsoft's response, please see the following MSDN page:
http://msdn2.microsoft.com/en-us/library/8ef0s5kh(VS.80).aspx.
In this beta, the pragmas which prevented the warnings have been removed.
The ACE library has been reviewed and most of the use of "unsafe" functions
has been fixed where possible. Since not all of the warnings emanating from
ACE are situations that can or should be fixed, the ACE VC8 projects will
prevent the warnings while building the ACE kit and its contained examples,
tests, etc. The warnings are disabled by adding Microsoft-specified macros
to the compile line via MPC. If desired, the warnings can be re-enabled by
regenerating the project files with different MPC features. Note, however,
that while ACE without warnings caused by the new C run-time functions, your
application builds may trigger these warnings either by use of the "unsafe"
C run-time functions or via use of an inlined ACE_OS method which uses it.
If the warning is caused by an ACE_OS method, there is a more safe alternate
available, probably located by appending _r to the method name (e.g.,
instead of using ACE_OS::ctime(), use ACE_OS::ctime_r()).
There are other cases where the compiler may have issued warnings and ACE
prevented this via a #pragma. These #pragmas have been removed as well.
This may cause your application builds to trigger more warnings from VC8
than past ACE versions. You should review your code and either correct
the code or disable the warnings locally, as appropriate.
. The "release" argument to a number of ACE_String_Base<> methods was changed
from int to bool to more accurately reflect its purpose. The following
methods were changed:
ACE_String_Base (const CHAR *s,
ACE_Allocator *the_allocator = 0,
int release = 1);
to
ACE_String_Base (const CHAR *s,
ACE_Allocator *the_allocator = 0,
bool release = true);
ACE_String_Base (const CHAR *s,
size_type len,
ACE_Allocator *the_allocator = 0,
int release = 1);
to
ACE_String_Base (const CHAR *s,
size_type len,
ACE_Allocator *the_allocator = 0,
bool release = true);
void set (const CHAR * s, int release = 1);
to
void set (const CHAR * s, bool release = true);
void set (const CHAR * s, size_type len, int release);
to
void set (const CHAR * s, size_type len, bool release);
void clear (int release = 0);
to
void clear (bool release = false);
Since ACE_String_Base forms the basis of the ACE_CString and ACE_TString
classes, this may ripple out to user application code. If you encounter
errors in this area while building your applications, replace the
int argument you are passing to the method now with either true or false.
. Solutions for the eVC3/4 platform have been removed from this
release. Note that we package WinCE projects/workspaces for use
with VC8.
. There were 3 new ACE_Log_Msg logging format specifiers added to make logging
easier for types that may change sizes across platforms. These all take one
argument, and the new formats are:
%b - format a ssize_t value
%B - format a size_t value
%: - format a time_t value
. The ace/Time_Request_Reply.h and ace/Time_Request_Reply.cpp files were
moved from $ACE_ROOT/ace to $ACE_ROOT/netsvcs/lib. The time arguments in
the public API to ACE_Time_Request were changed from ACE_UINT32 to time_t
and the portions of the on-wire protocol that contains time was changed from
ACE_UINT32 to ACE_UINT64. Thus, code that uses the ACE_Time_Request class
to transfer time information will not interoperate properly with prior
ACE versions. This will affect uses of the netsvcs time clerk/server.
. The portion of the ACE_Name_Request class that carries the on-wire seconds
portion of a timeout value was changed from ACE_UINT32 to ACE_UINT64. This
means that Name server/clients at ACE 5.5.7 and higher will not interoperate
properly with previous ACE versions' name servers/clients.
. In the ACE_Log_Record (ACE_Log_Priority, long, long) constructor, the
second argument, long time_stamp, was changed to be of type time_t. This
aligns the type with the expected value, a time stamp such as that returned
from ACE_OS::time().
. Added support for VxWorks 6.x cross compilation using a Windows host
system
. Added support for VxWorks 6.x using the diab compiler
. The destructor of ACE_Event_Handler no longer calls
purge_pending_notifications(). Please see bugzilla #2845 for the full
rationale.
(http://deuce.doc.wustl.edu/bugzilla/show_bug.cgi?id=2845)
USER VISIBLE CHANGES BETWEEN ACE-5.5.5 and ACE-5.5.6
====================================================
. The ACE_TYPENAME macro has been added to those that are not
available when the ACE_LACKS_DEPRECATED_MACROS config option is set
(it is not set by default). You are encouraged to replace the use of
ACE_TYPENAME with the C++ typename keyword before the ACE_TYPENAME
macros is removed from ACE in the future.
. A new script, rm_exception_macros.pl, has been added to help users
remove the use of the ACE exception macros from their own code.
USER VISIBLE CHANGES BETWEEN ACE-5.5.4 and ACE-5.5.5
====================================================
. The prebuild MPC keyword is now supported by the gnuace project type.
This fixes Bugzilla #2713.
. Support for Windows earlier than NT 4 SP2 was removed. ACE will not build
for Windows 95, 98, Me, etc. out of the box any longer.
. Reformat stringified IPv6 addresses to use [addr]:port when printing
addresses that contain ':' such as "::1".
. Added method to ACE_INET_Addr to determine if address is IPv6 or
IPv4 multicast.
. Fixed a bug in ACE_Async_Timer_Adapter_Timer_Queue_Adapter<TQ> where the
gettimeofday function of the timer queue was ignored when setting the alarm.
. Fixed a problem where, on Solaris 9 onwards, calling
ACE_OS::thr_create(THR_NEW_LWP) more than 2^15 (65535) times in a
process will fail. See changelog entry from "Wed Jan 3 22:31:05 UTC
2007 Chris Cleeland <[email protected]>" for more information.
. Fixed a bug in ACE_QtReactor where the two select() calls in that function
might select on different handler sets.