Apache Etch Changelog
What's new in Apache Etch 1.3.0
Oct 1, 2013- Sub-task:
- Implementation of EtchQueue
- Implementation of EtchList
- Implementation of EtchHashtable
- Implementation of EtchSet
- Implementation of EtchThreadPool
- Implementation of EtchCondition
- Implementation of EtchSocket normal IO and AIO
- Implementation of EtchTimer
- Create Transport Layer
- Create Util components
- Implementation Packetizer
- Implementation Messagizer
- Implementation Session Interfaces
- Implementation Transport Interfaces
- Implementation ValueFactory
- Implementation Validators
- Implementation of Memory Abstraction
- Implementation of EtchArray
- Definition of Etch Enumerations
- Implementation of Templates
- Implementation of Stub Base classes
- Implementation of Remote base
- Implementation of compiler basic class
- Implementation of EtchFile
- Implementation of EtchLogger
- Implementation Serverfactories
- Implementation Mailbox and MailboxManager
- Implementation DeliveryService
- Implementation Transport Factories
- Implementation of cpp-binding examples
- Implementation EtchAsyncResult
- Bug:
- CMake build for 32 bit executables on a 64 bit machine with Ubuntu 11.10 fails
- fix URLs in BUILD.txt
- Cpp binding tests build error with Visual Studio 11
- StubBase not sending session events to user implemenation
- Capu local directories are not settable in ant build
- C++ binding: 'Pair' : is not a member of 'EtchHashTable'
- Code generation of MainClient.cpp contains HelloWorld service calls
- Binding-C Linux build is not working on Apache build infrastructure
- Improvement:
- Move Vector related parts of EtchFlexbuffer to capu
- Add failOnError in Exec Task of Tests
- Enable HelloWorld example build for different platforms using CMake Toolchain Files
- Splitting up initParams function in ValueFactory generation
- Cleaning up cpp-bindings external dependency to CAPU
- Simplify build of binding-cpp
- New Feature:
- Implementation of cpp-binding for etch
- Implementation of cpp-binding for etch runtime part
- Implementation of cpp-binding for etch compiler part
- OS Abstraction for binding-cpp
- Etch collections for binding-cpp
- Implementation of Etch runtime stack
- Task:
- Implementation of Etch Utility Functions
- Add CAPU unit tests from binding-cpp to ANT build script
- Switch Website to public after mailinglist discussion
- Improvement of EtchNativeArray
- Change APR version to apr-1.4.8 and apt-util-1.5.2 because of an error in apr-1.4.5 and apr-util-1.3.12
- Add support for Debug and Release builds to binding-cpp Ant and CMake
- Refactoring of ArrayValue
- Refactor binding-cpp lifecylce
- General bugfixing and small refactoring stuff
- Refactoring of binding-cpp ant/CMake build system
- Implementation of EtchNumber
New in Apache Etch 1.2 (Oct 1, 2013)
- Sub-task:
- Implementation of EtchNativeArray
- Implementation of EtchThread
- Implementation of EtchMutex
- Implementation of EtchWait
- Implementation of basic primitive data types for the NSDL
- Implementation of Etch Bytes Wrapper
- Bug:
- C# Binding: some unexpected exceptions are thrown if .Net Framework Language Pack is installed
- C Binding: double-free bug for structs containing structs containing strings
- C binding Compiler: different genereted port numbers
- C Binding: Race condition for simultaneous connection loss and runtime cleanup
- C Binding: Mixins not fully functional
- Bug fix plain_mailbox_manager; do cleanup all registered mailboxes if connection goes down
- Change \scripts\antsetup.bat so external ENV variables are also handled
- Race condition while connection goes down
- Bugfix TCP backlog parameter
- Sockets do not shutdown correctly on Linux
- C-Binding: client side crash when calling stop_wait while socket is being shut down from server side
- Some of csharp tests are failing with .Net 4.0 and Nunit 2.5.9.10348
- Naming conflicts in Etch binding-c runtime message module; add prefix etch_message
- Cmake home path is not set in antsetup.bat for Windows
- .etch extension
- Website must display disclaimer text and link to incubator
- Update Etch Binding to new Go Version
- CSharp examples have broken builds for 2008/2010 Visual Studio
- Improvement:
- We need a Logo
- Integrate apache-rat into build
- Add exception handling code to hello world c-binding example
- Build Configuration
- New Feature:
- Design and provide example of using forrest to deploy etch documentation
- Implement first Google Go Binding version
- Change build system to support different build stages like stable, nightly
- Add binding-cpp to nightly builds
- Task:
- Setup Hudson Build Configuration for continous Etch builds
- Update external etch dependencies to new versions
- clean up etch headers (distribution vs. build)
- extend etch mutex unit tests
- Migrate Etch website to new Apache CMS
- Create CMS infrastructure
- Create website layout and templates
- Create website basic sites
- Migrate content to new CMS structure
- Cmake based build system for C++ binding & tests
- Update Build to work with latest Apache Ant 1.8.2
- Update Readme files
- Update Release notes and changeLog files for Release 1.2
New in Apache Etch 1.1 (Oct 1, 2013)
- Sub-task:
- create directory structure for c binding
- import the c binding code into the new directory structure
- create the directory structure for the python binding
- import the python binding into the new directory structure
- create directory structure for interoperability tester
- import the code for the interoperability tester
- import the java example test
- create a csharp example test
- create a interoptest script which combines java and csharp
- put java header comments in order per apache standard
- put csharp header comments in order per apache standard
- put python header comments in order per apache standard
- put c header comments in order per apache standard
- merge changes from 1.0.2 branch to trunk - 738635 update version string
- merge changes from 1.0.2 branch to trunk - 738652 make examples more tolerant
- merge changes from 1.0.2 branch to trunk - 739277 update eclipse build
- merge changes from 1.0.2 branch to trunk - 739282 updates to unit tests
- merge changes from 1.0.2 branch to trunk - 739287 fix for selector under linux
- Bug:
- UnwantedMessage.ToString method attempts to format using the java style formatting instead of csharp style
- Sometimes closing a TlsConnection normally will result in an IOException with Socket is closed.
- Compiler throws URISyntaxException if there are spaces in the classpath
- Build problems if Etch source is downloaded to a path with spaces
- Incompatibility in the READMEs for the bundled examples
- Windows 7 / .NET 3.5 SP1 runtime setsockopt error
- Improvement:
- TransportFactory.newTransport returns stack topped by DeliveryService which makes it hard to implement meta transports
- Listener stack is built 1/2 upside down and strange inhibiting name service and other transport filters
- Change maven groupId to "org.apache.etch" from "etch.etch"
- New Feature:
- design and implement a framework for interoperability testing, plus a simple demonstration test
- Implement the compiler portion of the c-binding, to generate code for the etch c runtime
- Integrate the c-binding into the windows build.
- Port the c-binding to linux, resolve differences between windows and linux.
- Implementation of Etch C Binding (Runtime + Compiler)
- Task:
- Map http://cwiki.apache.org/ETCH to http://incubator.apache.org/etch
- Change Java (and C#) package names to org.apache.etch
- import the c binding
- import the python binding
- import interoperability tester
- put header comments in order per apache standard
- merge changes from 1.0.2 branch to trunk
- Rename jar file build products to include incubating in the name.
- repair license header in c binding
- repair license header in interop tester
- repair license header in tests
- repair license header in scripts
- Setup CMake based build environment for C binding
- Merge etch-c into trunk
- Provide getting started Setup documentation
- Provide Documentation for Examples
- Provide 1.1. release package
- Provide 1.1. release package for Win32 + Installer
- Provide 1.1. release package for Linux
- Extend C# and Java Compilers to generate Wireshark keyfiles
- Ant Build using ETCH_EXTERNAL_DEPENDS
- Clean up / re-create examples/HelloWorld for all bindings
- Integrate C binding to NSIS installer and packaging
- Provide Documentation for Etch's binary protocol
- Add public PGP KEY (CODE SIGNING KEY) to etch KEYS (fitzner)
- Add CMake makefiles to exambles for binding-c
- update BUILD.txt on top level
- Integrate HelloWorld C Binding example into top level ant build
- Add documentation regarding APR_ICONV_PATH to documentation
- Create NOTICE_THIRD_PARTY.txt and LICENSE_THIRD_PARTY.txt
- Write documentation example in docbook
New in Apache Etch 1.0.2 (Oct 1, 2013)
- Bug:
- if free pool exceeds maximum number of threads the exception thrown will kill the connection
- canceling mailbox notification registration throws exception if not registered
- AlarmManager deadlocks during shutdown()
- KeepAlive throws exception while trying to shutdown connection
- FreePool has synchronization issues with quick back to back calls to Run
- The message direction is always "server" for the result_method messages in the java-binding valuefactory
- DefaultDeliveryService ends call with mb.CloseDelivery() and it should end it with mb.CloseRead()
- mixins cause trouble when two or more mixed in files define a type with the same name.
- Examples do not build due to outdated ant files.
- MySessionListener in TcpTransportFactory does not override toString() method to show something useful about the transport stack
- Improvement:
- Copy the rest of the example sources into the distribution
- SessionListener needs to be more independent
- Break out common tcp transport options so that they may be shared among various transports.
- Installing all Maven artifacts along with their sources.