Changes between Version 68 and Version 69 of ReleaseNotes


Ignore:
Timestamp:
24.08.2013 02:40:02 (11 years ago)
Author:
jri
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • ReleaseNotes

    v68 v69  
    1111* **Exploiting the browser cache** (#478). Consequent usage of intrinsic HTTP features (`Last-Modified` and `Cache-Control` response headers and `If-Modified-Since` request header) results in lesser network traffic and better perceived performance. The caching aspect is realized as a separate module (`dm4-caching`). 
    1212* **Edit conflict detection** (#479). The server rejects a PUT request when the resource has changed meanwhile. The check is based on the resource's "last modified" timestamp. This fights the "lost update" problem when working collaboratively. Edit conflict detection is realized at HTTP level, that is a conditional PUT request (`If-Unmodified-Since` request header). Conflict ''resolution'' is not yet realized. 
     13 
     14Bug fixes: 
     15* Login/Logout: 
     16    * Logout works for private DM installations as well. (A private DM installation is one with `read_requires_login=true`.) The missing HTTP Logout is emulated by forcing the browser to bring up a dummy login dialog (#423). 
     17    * Login works for open DM installations as well. (An open DM installation is one with `read_requires_login=false` and `write_requires_login=false`.) (#475). 
     18    * When wrong credentials are entered DM's login dialog is not overlapped by the browser's login dialog. The user stays in DM's login dialog (#471). 
     19    * When the user enters neither a username nor a password in the login dialog no exception occurs (#473). 
     20* The type loader doesn't throw a bogus "Endless recursion" exception when repeatedly tried to load a type with an invalid URI (#487). 
     21* Exceptions thrown from request filters (formerly servlet filters) appear in the log file (if file logging is activated) (#474). 
     22* Webclient model update: 
     23    * When processing the directives of an update request the `dm4c.selected_object` is updated properly (#488). 
     24    * Construction of the object model passed to a topic/association update request no longer manipulates the `dm4c.selected_object` in place. This allows a plugin to investigate the selected object's metadata (e.g. timestamps, access control information) before the request is send (#486). 
     25* Requests issued by the Webclient have no superfluous "?" character at the end as it might confuse the browser's or network proxy's caching heuristic (#483). 
     26* Web application plugins (derived from `WebActivatorPlugin`) are detected as DeepaMehta plugins. The `ALL_PLUGINS_ACTIVE` event is fired properly (#498). 
    1327 
    1428Plugin Development Framework: 
     
    3145 
    3246Further changes: 
     47* The dependency on Felix's proprietary "Extended HTTP Service" is dropped. Thus we are ready to replace Felix HTTP Service with OPS4J Pax Web soon. OPS4J Pax Web is the far more modern and flexible OSGi HTTP Service implementation which enables a variety of new applications (#448). 
     48* Core Service REST API: the URLs for topic/association update (PUT) requests are REST-conform (#482). 
    3349* The REST service no longer delivers user-related permission information along with topic/association responses. The permissions are explicitly retrieved through the Access Control service (#489). This makes topic/association responses cachable by the browser (#478). 
    34 * Core Service REST API: the URLs for topic/association update (PUT) requests are REST-conform (#482). 
    35 * The dependency on Felix's proprietary "Extended HTTP Service" is dropped. Thus we are ready to replace Felix HTTP Service with OPS4J Pax Web soon. OPS4J Pax Web is the far more modern and flexible OSGi HTTP Service implementation which enables a variety of new applications (#448). 
    3650* The DM Karaf distro uses same default configuration as the DM Standard Distro (#447). 
    3751* COPYRIGHT.txt is updated (#434). 
    3852 
    39 Bug fixes: 
    40 * Login/Logout: 
    41     * Logout works for private DM installations as well. (A private DM installation is one with `read_requires_login=true`.) The missing HTTP Logout is emulated by forcing the browser to bring up a dummy login dialog (#423). 
    42     * Login works for open DM installations as well. (An open DM installation is one with `read_requires_login=false` and `write_requires_login=false`.) (#475). 
    43     * When wrong credentials are entered DM's login dialog is not overlapped by the browser's login dialog. The user stays in DM's login dialog (#471). 
    44     * When the user enters neither a username nor a password in the login dialog no exception occurs (#473). 
    45 * The type loader doesn't throw a bogus "Endless recursion" exception when repeatedly tried to load a type with an invalid URI (#487). 
    46 * Exceptions thrown from request filters (formerly servlet filters) appear in the log file (if file logging is activated) (#474). 
    47 * Webclient model update: 
    48     * When processing the directives of an update request the `dm4c.selected_object` is updated properly (#488). 
    49     * Construction of the object model passed to a topic/association update request no longer manipulates the `dm4c.selected_object` in place. This allows a plugin to investigate the selected object's metadata (e.g. timestamps, access control information) before the request is send (#486). 
    50 * Requests issued by the Webclient have no superfluous "?" character at the end as it might confuse the browser's or network proxy's caching heuristic (#483). 
    51 * Web application plugins (derived from `WebActivatorPlugin`) are detected as DeepaMehta plugins. The `ALL_PLUGINS_ACTIVE` event is fired properly (#498). 
    5253 
    5354----