<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>ECF New and Noteworthy</title>
<link rel="stylesheet" href="http://www.eclipse.org/default_style.css" type="text/css">

</head>

<body bgcolor="#FFFFFF">
<table border=0 cellspacing=5 cellpadding=2 width="100%">
  <tbody>
    <tr>
      <td width="69%" class="bannertext">
        <font class="indextop style">eclipse communication framework</font>
        <br><br>
        <font class="indexsub">an eclipse technology project</font>
        <br><br>
        <font class="indextop style2">New and Noteworthy</font><br>2.1.0 Release</font>
        <br><br><br>
        Return to <a href="downloads.php">ECF download page</a></br>
        <br><br>
        <a href="NewAndNoteworthy_1.0.0.html">New and Noteworthy for 1.0.0</a><br>
        <a href="NewAndNoteworthy_1.1.0.html">New and Noteworthy for 1.1.0</a><br>
        <a href="NewAndNoteworthy_1.2.0.html">New and Noteworthy for 1.2.0</a><br>
        <a href="NewAndNoteworthy_2.0.0.html">New and Noteworthy for 2.0.0</a><br>
        <br><br>
      </td>
      <td width="31%">
        <div align="center">
          <img src="../images/Idea.jpg" width="120" height="86" hspace="50" align="middle">
        </div>
      </td>
    </tr>
  </tbody>
</table>

<hr>

<ul>
<li>
With ECF Release 2.1, ECF moved to the Eclipse RT Project. 
</li>
<li>
There are also two videos 
available online at <a href="http://live.eclipse.org/">live.eclipse.org</a>. 
</li>
<li>
ECF also presented at the OSGI Community event. See 
<a href="http://www.osgi.org/wiki/uploads/CommunityEvent2008/21_RemoteServices_OSGi_CommEvent08.pdf">
Distributed OSGi Services with the Eclipse Communication Framework</a>
</li>
<li>
ECF Release 2.1 has also fixed a large number of bugs. See
<a 
href="https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced&short_desc_type=allwordssubstr&short_desc=&classification=RT&product=ECF&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&status_whiteboard_type=allwordssubstr&status_whiteboard=&keywords_type=allwords&keywords=&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&emailtype1=substring&email1=&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&chfieldfrom=2008-06-20&chfieldto=Now&chfieldvalue=&cmdtype=doit&order=Reuse+same+sort+as+last+time&field0-0-0=noop&type0-0-0=noop&value0-0-0=o">
113 bugs</a>
</li>
</ul>
<table>

<tr>
<td vAlign=top><b>Sync API</b></td>
<td>
Abstracted from popular real-time Shared Editing. Opens up ability for other applications
to use real-time document synchronization (Cola).
</td>
</tr>

<tr>
<td vAlign=top><b>Storage API</b></td>
<td>
Uses Equinox secure storage (IsecurePreferences) to store and retrieve ECV Ids
securely/persistently, along with any associated properties (for example, passwords). Will
enable secure storage of user login and credential info for ECF accounts.
</td>
</tr>

<tr>
<td vAlign=top><b>Real-Time Shared Editing</b></td>
<td>
Many improvements.
<br/>
Inclusion of RT shared editing in WTP point release (for several text editors).
</td>
</tr>

<tr>
<td vAlign=top><b>JSLP <br/>(Discovery API provider)</b></td>
<td vAlign=top>
Additions and bug fixes.
</td>
</tr>

<tr>
<td vAlign=top><b>XMPP provider</b></td>
<td>
Critical bug fixes.
</td>
</tr>

<tr>
<td vAlign=top><b>Remote Services provider</b></td>
<td vAlign=top>
Bug fixes (generic and r-OSGI).
</td>
</tr>



</table>


</body>
</html>
