-------------
Release 1.0.2
-------------

r738160 | sccomer | 2009-01-27 11:30:43 CST

fix for ETCH-31: MySessionListener in TcpTransportFactory does not override
toString() method to show something useful about the transport stack
----------------------------------------------------------------------------
r737984 | dixson | 2009-01-26 21:14:36 CST

update SVN and homepage to apache.org URLs
----------------------------------------------------------------------------
r737770 | sccomer | 2009-01-26 11:59:24 CST

fix for ETCH-29: Installing all Maven artifacts along with their sources.
----------------------------------------------------------------------------
r737767 | sccomer | 2009-01-26 11:55:12 CST

fix for ETCH-27: mixins cause trouble when two or more mixed in files define a
type with the same name.
----------------------------------------------------------------------------
r737764 | sccomer | 2009-01-26 11:43:19 CST

fix for ETCH-28: Examples do not build due to outdated ant files.
----------------------------------------------------------------------------
r736737 | sccomer | 2009-01-22 12:32:13 CST

fix for ETCH-24: The message direction is always "server" for the result_method
messages in the java-binding valuefactory (also csharp)
----------------------------------------------------------------------------
r736725 | sccomer | 2009-01-22 11:43:19 CST

comment out conflicting assignment of JAVA_HOME
----------------------------------------------------------------------------
r736724 | sccomer | 2009-01-22 11:42:41 CST

bump the version number to 1.0.2.
----------------------------------------------------------------------------
r736169 | sccomer | 2009-01-20 17:25:34 CST

fix for ETCH-25: DefaultDeliveryService ends call with mb.CloseDelivery() and it
should end it with mb.CloseRead()
----------------------------------------------------------------------------
r733843 | rebarraz | 2009-01-12 11:11:12 CST

fix for ETCH-13: added examples to distribution
----------------------------------------------------------------------------
r724340 | sccomer | 2008-12-08 07:32:04 CST

factor perf tests into individual static functions called from main.

pull configuration options to the top.
----------------------------------------------------------------------------
r723340 | sccomer | 2008-12-04 08:49:24 CST

csharp fix for ETCH-19: Break out common tcp transport options so that they may
be shared among various transports.
----------------------------------------------------------------------------
r723112 | sccomer | 2008-12-03 16:49:22 CST

do the right math related to relative timing tests.
----------------------------------------------------------------------------
r723034 | sccomer | 2008-12-03 13:42:19 CST

csharp fix for ETCH-11: AlarmManager deadlocks during shutdown(). break lock on
AbstractStartable start() and stop() methods. Add back necessary synchronization
for Monitor.PulseAll() in Stop0(). Port java version of unit test.
----------------------------------------------------------------------------
r723032 | sccomer | 2008-12-03 13:39:56 CST

drop blank string for thrown exception in unit test for AlarmManager.
----------------------------------------------------------------------------
r722646 | sccomer | 2008-12-02 16:38:21 CST

change the exception thrown by AbstractStartable for already started and is not
started to Exception from ThreadInterruptedException.

change NullReferenceException thrown by AlarmManager when listener is null to
ArgumentNullException.

shell of unit test for AlarmManager.
----------------------------------------------------------------------------
r722629 | sccomer | 2008-12-02 16:04:52 CST

expanded unit test for AlarmManager.

mostly cosmetic edits for AlarmManager, except tightened up code which notifies
worker thread when an alarm is removed (if no alarm is removed, then notify is
not needed).
----------------------------------------------------------------------------
r722262 | sccomer | 2008-12-01 16:15:09 CST

java fix for ETCH-11: AlarmManager deadlocks during shutdown().

AlarmManager.shutdown() just calls AbstractStartable.stop() on the static
instance.
the bug was actually in AbstractStartable.stop().
created unit test for AlarmManager which covers this case.
----------------------------------------------------------------------------
r722250 | sccomer | 2008-12-01 15:50:56 CST

csharp fix for ETCH-17: SessionListener needs to be more independent.
----------------------------------------------------------------------------
r722248 | sccomer | 2008-12-01 15:48:53 CST

improved the comment.
----------------------------------------------------------------------------
r722242 | sccomer | 2008-12-01 15:31:41 CST

fix ETCH-6: if free pool exceeds maximum number of threads the exception thrown
will kill the connection.

also rearrange code in StubBase sessionMessage to enable optimization of NONE
case.
----------------------------------------------------------------------------
r722240 | sccomer | 2008-12-01 15:29:21 CST

fix issue with clock tick quanta in free pool tests.
----------------------------------------------------------------------------
r722208 | sccomer | 2008-12-01 14:00:37 CST

implemented unit tests for FreePool in both csharp and java bindings.
----------------------------------------------------------------------------
r722205 | sccomer | 2008-12-01 13:58:44 CST

fix for ETCH-23: FreePool has synchronization issues with quick back to back
calls to Run.
----------------------------------------------------------------------------
r722116 | sccomer | 2008-12-01 10:33:04 CST

csharp fix for ETCH-18: KeepAlive throws exception while trying to shutdown
connection.

fixed both csharp and java versions to use Todo during wakeup to send request
so as to not block AlarmManager if there is a problem with the connection.
----------------------------------------------------------------------------
r722098 | sccomer | 2008-12-01 09:35:14 CST

fix the fix for ETCH-8: canceling mailbox notification registration throws
exception if not registered.

unit tests for fix for ETCH-8.

----------------------------------------------------------------------------
r722085 | sccomer | 2008-12-01 08:42:58 CST

java unit test for fix for ETCH-8.
----------------------------------------------------------------------------
r720572 | sccomer | 2008-11-25 13:43:44 CST

fix for ETCH-8: canceling mailbox notification registration throws exception if
not registered.
----------------------------------------------------------------------------
r720115 | sccomer | 2008-11-23 22:56:45 CST

changes for selector code to be compatible with jdk 1.5.0_16.

regularize the start/stop handling between Tcp2Listener and Tcp2Connection.
----------------------------------------------------------------------------
r719644 | sccomer | 2008-11-21 11:17:48 CST

fixed the test for whether a Tcp2Connection is started.

finalized some instance variables, and made handler private.

synchronized setHandler.
----------------------------------------------------------------------------
r719414 | sccomer | 2008-11-20 16:50:55 CST

checkpoint on selectors and transport which uses them.
----------------------------------------------------------------------------
r719413 | sccomer | 2008-11-20 16:43:43 CST

correct the name of this test of TcpListener.
----------------------------------------------------------------------------
r719286 | sccomer | 2008-11-20 11:02:42 CST

fix for etch-17: SessionListener needs to be more independent.
fix for etch-19: Break out common tcp transport options so that they may be
shared among various transports.
----------------------------------------------------------------------------
r719279 | sccomer | 2008-11-20 10:47:12 CST

fix for etch-18: KeepAlive throws exception while trying to shutdown connection.
----------------------------------------------------------------------------
r713417 | gsandhir | 2008-11-12 10:13:38 CST

Test to see if commit goes through
----------------------------------------------------------------------------
r713257 | niclas | 2008-11-11 21:55:20 CST

Checking my own access.
----------------------------------------------------------------------------
r712814 | sccomer | 2008-09-30 10:13:12 CDT

fix bug whereby a null enum value would not deserialize correctly. this also
caused problems when additional elements were added to a service enum and then
a mix of old and new implementations of the service used together.
----------------------------------------------------------------------------
r712813 | dixson3 | 2008-09-10 10:00:41 CDT

skip csharp build on non-windows
----------------------------------------------------------------------------

-------------
Release 1.0.1
-------------

r80 | sccomer | 2008-09-08 15:33:33 CDT

added antlib resource for etch ant plugin, changed chat example to use it.
----------------------------------------------------------------------------
r79 | sccomer | 2008-09-08 13:40:12 CDT

add csharp build to dist chat example.
----------------------------------------------------------------------------
r78 | sccomer | 2008-09-08 13:00:36 CDT

custom README.txt for chat dist and make the directions all very similar.
----------------------------------------------------------------------------
r77 | sccomer | 2008-09-08 12:34:02 CDT

added chat source to the distribution.
----------------------------------------------------------------------------
r76 | dixson3 | 2008-09-08 10:30:32 CDT

Filter 'etch-maven-install.bat' to include the correct version number for etch
Update csharp-unit-test targets to only run when 'BUILD.csharp' is set

----------------------------------------------------------------------------
r75 | sccomer | 2008-09-07 10:19:23 CDT

updated ChangeLog.txt to the current state of the release.
----------------------------------------------------------------------------

r74 | sccomer | 2008-09-07 09:56:18 CDT
r73 | sccomer | 2008-09-05 16:03:49 CDT
r72 | sccomer | 2008-09-05 15:32:36 CDT
r71 | sccomer | 2008-09-05 15:31:46 CDT
r70 | dixson3 | 2008-09-05 08:31:53 CDT
r69 | sccomer | 2008-09-04 18:03:04 CDT
r68 | sccomer | 2008-09-04 18:02:24 CDT
r67 | sccomer | 2008-09-04 09:16:38 CDT
r66 | sccomer | 2008-09-04 09:14:53 CDT
r65 | sccomer | 2008-09-02 16:25:03 CDT
r64 | dixson3 | 2008-09-02 15:44:35 CDT
r63 | sccomer | 2008-09-02 14:39:23 CDT
r62 | sccomer | 2008-09-02 14:07:09 CDT
r61 | sccomer | 2008-09-02 13:42:47 CDT
r60 | dixson3 | 2008-09-02 11:16:17 CDT
r59 | sccomer | 2008-09-02 10:41:54 CDT

(various improvements to build scripts.)
----------------------------------------------------------------------------
r58 | sccomer | 2008-09-02 10:27:40 CDT

make TestEtchMain.test7 dump msgs upon failure.
----------------------------------------------------------------------------
r57 | sccomer | 2008-09-02 07:49:21 CDT
r56 | sccomer | 2008-09-02 07:35:20 CDT
r55 | dixson3 | 2008-08-29 21:52:03 CDT
r54 | dixson3 | 2008-08-29 15:48:01 CDT
r53 | sccomer | 2008-08-29 10:37:05 CDT
r52 | sccomer | 2008-08-28 16:05:49 CDT
r51 | sccomer | 2008-08-28 15:40:26 CDT
r50 | sccomer | 2008-08-28 14:23:50 CDT
r49 | sccomer | 2008-08-28 11:04:32 CDT

(various improvements to build scripts.)
----------------------------------------------------------------------------
r48 | sccomer | 2008-08-28 10:20:18 CDT

merging changes to various build.xml from release 1.0.0 rev 5-6: mono support
is not fully baked, use -DUSE.mono to test
----------------------------------------------------------------------------
r47 | sccomer | 2008-08-28 09:00:13 CDT

fixed problem with java generated remote rejecting exceptions which are
subclasses of allowed exceptions.
----------------------------------------------------------------------------
r46 | sccomer | 2008-08-27 19:31:44 CDT

fix several bugs and add missing functionality to url so that java and csharp
versions work the same.
----------------------------------------------------------------------------
r45 | sccomer | 2008-08-27 12:44:50 CDT

if last chance exception handler in EtchMain catches an exception, it should
print it.

correct spelling of csharp Validator.Level enum element MISSING_OK.

implement name for types and fields in csharp BinaryTaggedDataOutput.

add named types and fields testing for csharp binary tagged data.
----------------------------------------------------------------------------
r44 | sccomer | 2008-08-26 13:29:24 CDT

fix csharp BinaryTaggedDataInput to support names for types and fields.
----------------------------------------------------------------------------
r43 | sccomer | 2008-08-26 10:24:49 CDT

merge compiler driver changes (and a few misc updates to unit tests) from
branch sccomer-compiler-1 (revs 20-42) to trunk.
----------------------------------------------------------------------------
r28 | sccomer | 2008-08-22 11:39:29 CDT

support for java BinaryTaggedDataInput and BinaryTaggedDataOutput using names
instead of hashes of names for types and fields.
----------------------------------------------------------------------------
r27 | sccomer | 2008-08-22 11:38:24 CDT

change java testUrl to better name (TestUrl1).
----------------------------------------------------------------------------
r26 | sccomer | 2008-08-22 11:37:41 CDT

changed java codes from using Integer constructor to Integer.valueOf.
----------------------------------------------------------------------------
r25 | sccomer | 2008-08-22 11:36:51 CDT

added command line control of starting listener also.
----------------------------------------------------------------------------
r24 | sccomer | 2008-08-22 11:35:45 CDT

fix up java URL support of non-string terms.

fully support Boolean in java URL.

properly implement in java URL handling of remove( name, value ) when value
is a singleton.
----------------------------------------------------------------------------
r9 | sccomer | 2008-08-01 15:37:49 CDT

corrected csharp project dependences.

corrected port numbers in distmap test.
----------------------------------------------------------------------------
r8 | sccomer | 2008-08-01 14:17:27 CDT

integrated remaining examples into csharp build.

bumped version numbers of expected build to 1.0.1.
----------------------------------------------------------------------------
r7 | sccomer | 2008-07-31 15:58:29 CDT

added csharp build of most of the examples.

substitute DOTNET_HOME environment variable for gnarley dot net path in various
build.xml. this allows disabling the csharp build for those that don't want it.

example ant build setup (antsetup.bat), shows which environment variable and
path manipulations you need for a build. also shows which ones are optional.

corrected port numbers of distmap example.
----------------------------------------------------------------------------
Gaurav was Here

-------------
Release 1.0.0
-------------
