Lightstreamer Server |
4.1.1 build 1513.1.15
(Compatible with the deployment structure of the previous version)
(Compatible with configuration files for the previous version)
Released on 10 Jan 2013
Fixed a bug that could have caused data inconsistency or system vulnerability issues in some client environments and under particular conditions. 4.1 build 1513.1.14
(Compatible with the deployment structure of the previous version)
(Compatible with configuration files for the previous version)
Released on 9 Aug 2012
Fixed the handling of uncommon pathnames in the utility scripts for using the Server as a service under Windows. Fixed the documentation of the <license_path> configuration element with the extensions introduced in build 1513.1.4 Enlarged the "SNAPSHOT" thread pool (devoted to dispatching of snapshot contents) so as to match the number of available processors, if greater than 10. Fixed a bug, introduced in version 3.6, which affected subscriptions by the HTML Client Library to items in MERGE mode in case their snapshots was also requested; the update representing the snapshot could have been notified as not being a snapshot by the library. Fixed a bug in the RelativeFileAppenders$RollingFileAppender implementation: the <FileNamePattern> specified in the <rollingPolicy> were interpreted relative to the launch directory instead of being interpreted relative to the log configuration file location as them should have been. Now the paths specified in the <FileNamePattern> elements are correctly interpreted. On the other hand note that the <File> element was already correctly interpreted and thus its handling is not changed. 4.1 build 1513.1.12
(Compatible with the deployment structure of the previous version)
(Compatible with configuration files for the previous version)
Introduced the support for dinamically reconfiguring the maximum frequency of currently subscribed items, that can be leveraged by client libraries. Introduced the optional "randomize" attribute for both the <default_keepalive_millis> and <max_idle_millis> configuration elements, that can be used in particular scenarios; see the descriptions in the configuration file. Fixed a bug in the handling of the <allowed_domain> setting, by which the check could have been avoided by purposedly altering the Html Client Library. Clarified how resampling works for the LightstreamerMonitorText and LightstreamerMonitorTAB loggers configuration. 4.0.3 build 1513.1.11
(Compatible with the deployment structure of the previous version)
(Compatible with configuration files for the previous version)
Released on 6 Apr 2012
Adopted java 7 as the recommended SDK runtime environment and as the factory setting in the launch scripts. Added the <max_streaming_millis> configuration flag; see the configuration file for details. Fixed a bug, introduced in version 4.0, affecting polling sessions; under particular conditions of slowness, poll requests could have returned immediately even with no data available, thus causing an unneeded increase of the overall frequency of requests. Fixed a bug affecting polling sessions; under particular conditions of fastness, poll requests could have returned with no data even if data were available, thus causing data delivery to be delayed. Fixed the supplied scripts for running the Server as a Windows service, which, under some conditions, could have failed to correctly install the service. 4.0.2 build 1513.1.9
(Compatible with the deployment structure of the previous version)
(Compatible with configuration files for the previous version)
Fixed an issue with potential conflicts regarding proxy settings when a trial license is used; if proxy settings are supplied in order to access the LS trial license validation server, they could also affect connections performed by the Adapters. 4.0.2 build 1513.1.8
(Compatible with the deployment structure of the previous version)
(Compatible with configuration files for the previous version)
Released on 6 Dec 2011
Fixed a bug introduced in version 4.0 which could have caused an html client to receive wrong data in case of issues with the use of XHR during a polling session. The error was serious, but the triggering environmental conditions were very rare. Fixed a potential race condition which could have led to an internal thread deadlock. A high rate of socket disconnections (about 100 per second) was the only triggering scenario observed. Changed, from 6666 to 6600, the factory setting for the port to be used for accessing the HTML-based JMX interface; in fact, access to port 6666 could be restricted by some browsers because of conflicts with known protocols. 4.0.1 build 1513.1.4
(Compatible with the deployment structure of the previous version)
(Compatible with configuration files for the previous version)
Extended license configuration support by allowing to specify multiple
<license_path> elements, so that, at any moment in the Server life, at least one
should refer to a valid license. 4.0.1 build 1513.1.3
(Compatible with the deployment structure of the previous version)
(Compatible with configuration files for the previous version)
Released on 20 Jul 2011
Fixed a bug that could have caused read failures on TLS/SSL connections upon long requests. 4.0 build 1513.1.1
(Compatible with the deployment structure of the previous version)
(Compatible with configuration files for the previous version)
Released on 8 Jul 2011
Fixed and changed the timestamp format on the audit logs. COMPATIBILITY NOTE: existing and new audit log lines can coexist with no problems. Introduced the execute permission flags for launch scripts also in the zip version of the package. 4.0 build 1513
(No longer compatible with the deployment structure of the previous version;
see the compatibility notes below)
(No longer compatible with configuration files for the previous version;
see the compatibility notes below)
Released on 7 Jun 2011
Wholly revised the implementation of the logging subsystem, which is no longer based on log4j, but rather on the "logback" libraries. This has consequences:
COMPATIBILITY NOTE: existing deployment structures
have to undergo all the above changes in order to run the new Server.
In particular, this applies to the configuration of the Java Service Wrapper utility,
if used, which should specify the new libraries (though the new configuration is not
shown, as we now suggest and include a different tool for the same purpose,
as specified in a separate point below).
Moreover, some ready-made appenders and filters may no longer be available and some custom appenders, loggers or filters may not be portable in a natural way. Introduced the support for compression in responses, through the "gzip" HTTP
content encoding. See <use_compression> and <compression_threshold>.
For the web server support, see the tags with the same names, but inside the
<web_server≶ element. Modified the behavior of the unfiltered COMMAND mode; now edition-related frequency limits are applied to single keys. As a consequence, the order of updates related with different keys may be inverted in some cases. COMPATIBILITY NOTE: if existing clients need that the order of the updates is preserved even across different keys, the new <preserve_unfiltered_command_ordering> configuration flag can be used to restore the previous behavior. Improved the management and revised the format of the produced audit log files; see README.TXT in the "audit" folder for details. Improved the search for a suitable file for writing audit log; if necessary, it may be created in the configuration directory. However, the availability of an audit log file is now required on startup. COMPATIBILITY NOTE: if writing audit logs currently fails, the configuration should be fixed, otherwise the Server won't start. Addressed a compatibility issue with Android Browser and Skyfire on Android. Addressed a compatibility issue with Silverlight on Windows Phone. Revised the syntax of the <user_agent> element under <content_length>.
See the new <special_case> element. COMPATIBILITY
NOTE: Existing <user_agent> elements have to be converted. Revised the support for launching the Server as a service under Windows. The Java Service Wrapper utility has been dismissed in favour of the NSSM tool. The new tool also supports 64 bit environments. See Lightstreamer/bin/windows/README.TXT for details. Revised the logging at startup, to ensure that the "LightstreamerLogger.init"
and "LightstreamerLogger.license" loggers log all the relevant startup-related
log and that error stack traces are only available at DEBUG level. Extended the syntax checks in the main configuration file and the Adapater Set configuration files. Improved the performances of the internal thread pools. Fixed a bug that could have caused the parsing of the "adapters.xml" files to fail. The bug could be triggered by the use of long multiline parameter values. Improved the checks for unexpected behavior of the NIO selector implementation. Extended the Monitoring Data Adapter. The UPDATES.TOTAL_IN and UPDATES.TOTAL_OUT fields in the monitor_statistics item and the STARTUP_TIME field in the monitor_identification item are now available; see the documentation in the General Concepts document for details. Revised and extended the supplied Monitor Console with information on the total number of inbound and outbound events since the server startup and with the server startup time; the same changes have been applied to the Monitor Demo. Removed a few external libraries, no longer needed. Increased from 2 to 5 seconds the suggested setting for the probe time. Changed and renamed the logo image supplied by the Server. The suggested error page (namely, ErrorPage.html under the "conf" folder) has changed consequently. COMPATIBILITY NOTE: an existing deployment in which the supplied ErrorPage.html (or a custom error page based on the supplied logo) is configured (see the <error_page> configuration element) should be updated. 4.0 a4 build 1495
(May not be compatible with the deployment structure of the previous version;
see the compatibility notes below)
(No longer compatible with configuration files for the previous version;
see the compatibility notes below)
(May not be compatible with custom applications which take advantage of the
included Monitoring Data Adapter; see the compatibility notes below)
Made available as a prerelease on 4 Feb 2011
Discontinued the support for java 1.4 SDK and runtime environment. Java 1.5 or later is now required. COMPATIBILITY NOTE: installations of the Server still based on a java 1.4 JVM have to be upgraded. Existing Adapters compiled with a java 1.4 SDK don't need to be upgraded. Introduced a new optional thread pool specifically devoted to the management of the sendMessage requests received from the client. See <messages_pool> in the predeployed adapters.xml for details. Improved the checks for connections closed on the client side. This allows
for faster disposal of resources and subscriptions held by the connections
and the related sessions. Revised the configuration elements for the handling of streaming and polling connections:
Revised the syntax for the configuration of external access to JMX. The new
<html_adaptor>, <rmi_connector> and <jmxmp_connector> sections now replace
the old subelements of the <jmx> section. This allows for extended features
introduced in the JMX SDK. Improved the JMX support. Introduced the possibility of suppressing the "Session" MBeans from the JMX support, through the new <disable_session_mbeans> configuration element. This may improve the performances under critical load. Updated the included libraries for jmx support. A new library has been added. Extended https connections management, by adding the support for client TLS/SSL certificates. See <use_client_auth>, <force_client_auth> and <truststore> in the Server configuration file. Simplified the configuration of the JMXMP port used by the stop script. Discontinued the support for the <max_load> configuration element. Discontinued the support for the main level <port> and <ssl_port>
configuration elements. Discontinued the support for the main level <backlog>,
<listening_interface>, <ssl_backlog>, <ssl_listening_interface>
and <keystore> configuration elements, which provide defaults for the
various <http_server> or <https_server> compound elements. Introduced the <delta_delivery> configuration element, whose meaning
is the opposite of <redundant_delivery>. The latter element has been
discontinued. Introduced the <sendbuf> configuration element, which allows for overriding
the small TCP buffer size imposed on streaming connnections. Introduced the <reuse_pump_buffers> configuration element, which allows
for control on the per-session memory allocation requirements. Optimized the responses to requests from the HTML Client Library. This may reduce delays at connection startup in case of slow clients or network. Forced the completion of the content-length for most streaming responses
before asking for a rebind. This also allows for leaving the connection open
and available for reuse by the clients. Fixed a bug in the Monitoring Data Adapter. The PUMP_WAIT.NOTIFY field for
the monitor_statistics item also included wait time due to tasks enqueued on
a thread pool with no free threads. Revised and extended the supplied Monitor Console, with information on the
outbound update throughput and on lost updates for unfiltered subscriptions;
the same changes have been applied to the Monitor Demo. Dismissed the <text_monitor> configuration element. The Internal Monitor
log can still be suppressed through the logging configuration file. Changed the internal default for the <use_protected_js> configuration setting
to Y. Note that the factory setting for this flag in the configuration file
has always been Y. Fixed the handling of TLS/SSL sockets, that, in some cases of normal close, might have caused a warning about a refused TLS/SSL renegotiation request to be issued. Addressed compatibility issues which might have prevented streaming from being supported by iOS clients. Improved the protection against Data-Adapter-originated memory leaks. Improved the robustness upon unexpected internal exceptions. Removed possible misleading log messages about NIO infrastructure not being available. Added log of session closing. The same logger that reports session opening (i.e. the logger of client requests) is used. Removed spurious cases of the "Update discarded" message. Also downgraded the message at INFO level, as no malfunctioning is involved. Improved the logging of issues in TLS/SSL keystore loading. Added notes in "SSL Certificates.pdf" on converting existing TLS/SSL certificates in PKCS12 format to the JKS format requested by Lightstreamer Server. Clarified that the provided "stop" script only works after the initialization of the Server has completed. 3.6.1 build 1470
(Compatible with the deployment structure of the previous version)
(Compatible with configuration files for the previous version)
(May not be compatible with custom applications which take advantage of the
included Monitoring Data Adapter; see the compatibility notes below)
Introduced decimal digits in the values for the ITEMS.FILTERED_EVENTS_SEC and
ITEMS.EVENTS_SEC fields supplied by the Monitoring Data Adapter for the
monitor_statistics item. Discontinued the "session timeout" (i.e. the wait, governed by the
<session_timeout_millis> configuration element, done before closing a session)
in all cases in which the session termination is caused by an explicit
disconnection by the client. This wait causes the count of active session
to be higher then real and it was of no benefit in this case. Added the support for the extensions in the sendMessage client methods. Fixed a bug that, in case of a burst of sendMessage requests on the same sequence from the web client, might have caused some requests to be logged as duplicated and not enqueued, until a new submission attempt by the client Fixed a bug that could have caused non ASCII or multiline custom messages supplied to CreditsException to be forwarded to the client in an illegal way, thus possibly causing errors on the client side. Fixed a bug that, in case a selector had been used for items to be subscribed in an unfiltered mode, would have caused rejected events to be notified to the client as lost events. Improved the recovery of incorrect "command" field values in updates received from the Data Adapter for items in COMMAND mode. Extended the factory configuration by setting <rmi_connector_port> to the 8888 port. This setting allows JMX management through tools like jconsole and jvisualvm. See notes in PRODUCTION_SECURITY_NOTES.TXT. Used INFO level instead of WARN for logging notices on the initial population of selector-related thread pools. 3.6 build 1463.2
(Compatible with the deployment structure of the previous version)
(Compatible with configuration files for the previous version)
Released on 16 Apr 2010
Fixed a bug, introduced with build 1463, which could cause the internal
thread pool configured for subscription management to fill up after a
SubscriptionException was thrown by a Data Adapter. In particular, all
client subscription requests received after the failed one caused an internal
thread to block forever. 3.6 build 1463.1
(Compatible with the deployment structure of the previous version)
(Compatible with configuration files for the previous version)
Released on 14 Apr 2010
Fixed a compatibility issue with Flex Native AS library version 1.2 and 2.0, which was introduced in build 1463, such that any call to sendMessage from the client would have caused the whole library to stop working correctly. Fixed a compatibility issue with Flex Native AS library version 1.2 and 2.0, which caused, upon the very first call to sendMessage from the client, a 1 second delay before the message processing. Revised the logging configuration of the included demos. 3.6 build 1463
(Compatible with the deployment structure of the previous version)
(Compatible with configuration files for the previous version)
Released on 16 Feb 2010
Separated the management of external requests into subtasks related with
request parsing, authentication, authorization/execution and subscription. Extended the Adapter Set configuration to define optional thread pools devoted
to hosting request management subtasks related to the Adapter Set. Introduced multiple NIO selectors devoted to read, write and TLS/SSL handshaking
operations instead of one for each operation type. See also the new
<selector_max_load> configuration element. Relieved the bandwidth constraints from the initial part of the session; this speeds up the page startup, unless physical bandwidth constraints are also in place. Revised the management of client messages.
Increased, from 1 to 30 seconds, the internal timeout used to ensure proper
ordering of notifyUserMessage calls for web clients; the timeout can be
configured through the <missing_message_timeout_millis> element. Ensured that, upon subscription towards the Data Adapter, the client that causes the subscription receives the update flow exactly as it is sent by the Data Adapter. Previously, the very first updates could have been accumulated into the snapshot before being received (and could have been lost, if the snapshot were not requested). However, this behavior was consistent with the interface specifications, hence it was not a bug. Removed the limitations posed by <max_buffer_size> for events waiting to be
sent to the client, if they belong to a COMMAND mode item snapshot. Introduced the support for "chunked" transfer encoding in the HTTP response
to HTTP/1.1 requests, limited to stream connections. Discontinued the audit logs generation; audit-related configuration is no longer needed. Introduced configuration settings which allow some control over the HTTP headers of the provided responses. See <response_http_headers>. Fixed a bug that might cause the first event received for a MERGE subscription to lose the snapshot flag upon dispatching to a Web client. This caused the isSnapshot method in the UpdateItemInfo object to return false. Fixed a bug that provoked incorrect http headers on SYNC ERROR responses; the response, however, were still accepted by the clients. Fixed a bug that might cause a "Content-Length setting of xxx too small ..." message to be issued when not necessary. That could happen in POLLING mode with a very high update rate. Deprecated the <max_clients> configuration element, which was based on the overall number of connections, in favour of the new <max_sessions> element, which is based on the number of sessions. Introduced checks on the wait time of tasks on the internal thread pools. Added checks for incorrect "command" field values in updates received from the Data Adapter for items in COMMAND mode. Some cases that were discarded are now accepted. Improved the suggested "ulimit" setting on the Unix/Linux launch script. Reduced the response size for web client control requests. Fixed a bug in the management of thread pool "max_free" settings: a 0 value was treated as "unlimited" instead of 0. Extended the support for "connection end" notifications issued to the clients. Used the response completion time instead of the response starting time in the "Date" response HTTP header upon long polling requests. Revised some error messages. 3.5.1 build 1436
(Compatible with the deployment structure of the previous version)
(Compatible with configuration files for the previous version)
Introduced the support for the Silverlight client SDK. Disabled the heuristic client availability check for most sessions. After the latest changes in client-side management of the session, too many redundant rebinds would have been needed. Fixed a bug that might cause old versions of J2SE, .NET and J2ME client libraries to issue syntax error messages upon session closure forced on the Server side. Fixed a bug that made the recent extension "Addressed a compatibility issue for Flex clients running on Opera or Safari browser..." ineffective. Fixed a bug on request management triggered by a very small content length setting. Fixed a bug in the management of unchecked exceptions during streaming. 3.5 build 1428.4
Released on 28 Jan 2009
Addressed a compatibility issue for Flex clients running on Opera or Safari browser, which perform an initial buffering of the response, which could prevent streaming connections from working. This requires Flex client library 1.2 build 47 or greater in order to be effective. Improved the logging of unexpected exceptions. Added logging for updates lost upon unfiltered subscriptions (which include RAW mode and ADD/DELETE in COMMAND mode). Suppressed the "Unexpected empty selected list", "Unexpected empty read on a readable socket" and "Unexpected empty write on a writable socket" warnings for not significant cases. Revised and extended the DOCS-SDKs\Clustering.pdf document, which provides suggestions about clustering configuration. 3.5 build 1427
Fixed a compatibility issue introduced in build 1422, which caused the Server not to work with java 1.4 SDK. Fixed a bug that might cause the first event after rebinding to a streaming
session to be lost. This could only happen for web clients and for events
that happened to be bigger than all the preceding ones. Fixed a bug that might cause a rebind request issued when a session had just timed out to be refused with a "session forcibly closed by the Server" notification. That notification prevented automatic recovery by the client. Discontinued the partial hiding of the license ClientID, which is returned
by the Internal Monitor; the full ClientID is now returned. Fixed a bug in the "total subscribed items" count returned by the Internal Monitor. Items for which a SubscrException were thrown by "subscribe" were added and never removed from the count. Fixed a minor unconformance with the HTTP 1.0 protocol for some HTTP error code responses. Improved the management of rebind requests from the Web Client Library, to handle duplicated requests that may be issued by some user agents. Introduced the "LightstreamerLogger.connections.ssl" logging subcategory, to differentiate log related to TLS/SSL activity. Added full support for the internal monitor client when the Server is
configured to run in a cluster. Previously, the internal monitor could only
be accessed through the specific address used by external clients. 3.5 build 1422
Released on 23 Sep 2008
Introduced a basic support for multiple Data Adapters that feed the same
client session. A Metadata/Data Adapter Pair can now be generalized to an
"Adapter Set", made up of a single Metadata Adapter and one or multiple
Data Adapters. Changed the policy for Data and Metadata Adapter loading. All the configured Adapters are now loaded in parallel, while before they were loaded in sequence. Note, however, that the previous Adapter loading policy was never declared. Introduced the support for inclusion of the internal monitoring Data Adapter
in custom Adapter Sets. See the General Concepts document for documentation
on the available items and fields. Extended the Internal Monitor front-end, with information about the local
instance of the Server. Similarly, configuration details of the configured
server sockets are available through the internal monitoring Data Adapter. Supported the extension to the "notifyUser", "notifyNewSession", "getItems"
and "getSchema" Adapter interface methods. Introduced the <adapters_dir> and <shared_dir> configuration elements, which help deploying the Server with a custom directory structure. Introduced the <base_url_path> configuration element, to customize the URL path to be used for push requests by web clients (whose default is still /lightstreamer). Improved the management of sendMessage for Web Clients. The possibility of discarding messages that have come too late has been minimized. Extended the custom LSProducer log4j appender to accept generic appender configuration elements (but for <layout>). Fixed a bug that might cause the first update after the snapshot to be
filtered if it came very close to the snapshot and the buffer size was 1. Fixed a bug in the parsing of the "adapters.xml" files; the element values are now trimmed before use. Fixed a bug that might disturb the slowing algorithm provided by the Web Client Library, which can be enabled by a client page through setSlowingEnabled. Improved the handling of very frequent pollig requests. Changed the default configuration setting for <session_timeout_millis>, from 30000 (only useful with very slow clients/networks) to 5000 ms. Suppressed the error log for TLS/SSL handshake errors caused by the a client side connection reset. Changed the default installation of the Server in order to host new demos;
these include existing HTML and Flash/Flex examples and brand new demos. 3.4.8 build 1398
Released on 6 Mar 2008
Fixed a bug affecting the dispatching of events in the following cases:
In all those cases, the bug might cause some events to be sent with null
field values. Fixed a bug that might cause configuration subelements to be missed,
in case they were defined immediately after the containing elements,
as in <ELEM><SUBELEM>val</SUBELEM></ELEM>. Hidden the LS_password argument value from the log of client requests for
new sessions. Changed the session ID generation algorithm. 3.4.7 build 1395
Released on 11 Feb 2008
Inhibited socket reuse when refusing a request for a new session because of the load shedding mechanism. Added a configuration element to customize the error page, which is returned upon unexpected request URLs. See <error_page> in lightstreamer_conf.xml and the basic "ErrorPage.html" page added under "conf". Introduced a simple variable-expansion feature for the Server configuration file. See the introduction comment in lightstreamer_conf.xml. Fixed a bug which caused a logging operation to throw an exception. This only happened when the DEBUG level or the custom TRACE level were enabled on the LightstreamerLogger.preprocessor category. This also caused the processing of all updates to fail. 3.4.6 build 1393
Released on 4 Jan 2008
Revised and simplified the error page, which is returned upon unexpected
request URIs. 3.4.6 build 1391
Released on 6 Dec 2007
Excluded the logging of the health check requests from the filtering imposed by the <no_logging_ip> configuration element. 3.4.6 build 1390
Added the <server_tokens> configuration element, that allows the Server version number to be excluded from the "Server" HTTP header response. Improved the checks for incorrect answers from the Data or Metadata Adapter. 3.4.6 build 1389
Released on 22 Nov 2007
Extended the notifications to web clients for sessions closed on the server side to the case of polling, when the closure occurs between two polling requests. In these cases, the Web Client Library version 4.2.2 or newer will no longer try to recover by opening a new session. Fixed a bug which affected the notifications to web clients for sessions closed on the server side; the bug prevented them from reaching the client in case a rebind had taken place. 3.4.6 build 1387
Fixed a bug which might cause error notifications to web clients (intended for the onServerError event handler) to fail and issue a javascript error. 3.4.6 build 1385
Released on 15 Nov 2007
Changed the format of the included build.number file. Introduced the notification to the clients of the name of the server socket which handles a session request (the name is the one assigned through the <http_server> or <https_server> configuration element). Introduced a special /lightstreamer/healthcheck request that can be used by load balancers to test the responsiveness of each Server instance in a cluster. See the <healthcheck> configuration element for details. Fixed a compatibility issue with Nokia Browser, which prevented some client requests from being received by the Server. 3.4.5 build 1383
Changed the policy for the management of the conversion of update event field values to a transferrable format. See the new <force_early_conversions> configuration element for details. Fixed a compatibility bug that, under particular configuration settings, could lead to a "NoSuchMethodError" in the startup phase if JDK 1.4 were used, thus causing the Server startup to fail. 3.4.5 build 1382
Fixed a bug related to the management of unexpected conditions from the NIO library. In case the "Unexpected empty read/write on a readable/writable socket; forcing a 50 ms pause" message was issued, the pause might be significantly longer. 3.4.5 build 1380
Changed the default configuration for the events_pool_size and pump_pool_size configuration elements. Now each pool starts with one thread for each available processor. 3.4.5 build 1376
Removed a compatibility issue with Flex player under Internet Explorer, which prevented HTTPS connections to Lightstreamer Server from working. 3.4.5 build 1375
Removed redundand calls to the wantsTablesNotification API. 3.4.5 build 1374
Upgraded the included log4j library to the latest version (1.2.15). Added a check to prevent possible browser-originated duplicated messages
upon sendMessage calls issued by web clients. Introduced a configuration flag to suppress the use of special notifications
in order to send unchanged fields to the clients. Revised and extended the TRACE level logging of request management problems. 3.4.4 build 1369
Added the support for the customization of the choice of a suitable cipher suite operated by the Server upon each new HTTPS connection. See the <remove_cipher_suites> Server configuration element for details. Removed some elements not related with the supported editions from the default Server configuration file and from this changelog. 3.4.4 build 1364
Fixed a bug on the management of TLS/SSL connections that might cause the writing of very long fields to fail and the whole connection to be closed. 3.4.4 build 1361
Added a workaround for a problem with native Flex clients running under IE,
which might cause the start of the streaming to be delayed. 3.4.4 build 1360
Revised and extended the implementation of the HTTP protocol, though it is
still based on HTTP 1.0 version. Slightly improved the estimation of real bandwidth for text mode connections. 3.4.4 build 1355
Extended the text client interface in order to let the client ask for Server capabilities (see the LS_report_info querystring parameter). 3.4.3 build 1353
Fixed a bug which might cause the initial license check to fail when in the presence of some unusual network interfaces. 3.4.3 build 1352
Changed the policy for the allocation of the IO buffers. The buffers are now allocated in heap space rather than in native space. The IO buffers are usually small (about 1 KB). 3.4.3 build 1351
Revised some details in the text output protocol syntax; forced the use
of \r\n as the line separator in the answers to control requests, instead
of a system dependent line separator. This ensures better compliance with
the protocol documentation in "Network Protocol Tutorial.pdf", with no
impact on the existing client libraries. 3.4.3 build 1350
Fixed a bug in the embedded Monitor Console that could prevent log lines filtering in case of high logging activity. 3.4.3 build 1347
Added the support for native Flex clients. See the "flex_crossdomain_enabled"
element in the Server configuration file for a detailed comment. 3.4.3 build 1345
Removed the dependencies on Sun's proprietary APIs. 3.4.3 build 1344
Fixed a bug (that was introduced in build 1321) which might cause the Server
to enqueue in an incorrect order events for the same item coming from
the Data Adapter within the same millisecond. 3.4.3 build 1340
Introduced a workaround for Sun's bug 6403933 (about NIO implementation), which might cause 100% CPU usage for short intervals in Linux. It replaces a simpler workaround, that forced the NIO thread to sleep for 50 ms in those cases. 3.4.3 build 1337
Fixed a bug in the support for the internal Load Test Toolkit, which, on some machines, might cause errors of a few milliseconds in the measured times; this might even lead to small negative latencies. 3.4.3 build 1336
Fixed an error in the MetadataProviderAdapter javadoc: the getUserSessions method is deprecated. 3.4.3 build 1334
Fixed a bug affecting the management of the HTTP requests with the HEAD method. Added an embedded limited license for unregistered use. Revised the log messages related to license check. 3.4.3 build 1331
Improved the protection of the pages supplied by the Server in order to
carry user data. See the <use_protected_js> and <allowed_domain> elements
in the Server configuration file. Fixed a bug on the management of RAW mode and unfiltered dispatching when a maximum frequency limit is imposed by the Edition. This kind of service is no longer refused, but rather it is supported subject to the frequency limit. Note that this may cause significant data latency if the source update frequency is higher than the frequency limit imposed by the Edition. 3.4.2 build 1325
Removed a compatibility issue introduced on version 3.4.2 build 1323 that prevented the Server from running on a 1.4 JVM. 3.4.2 build 1324
Improved security and vulnerability prevention. 3.4.2 build 1323
Fixed a bug that might cause a javascript error on the client in case of unlicensed client version. Added extensions to the web interface in order to support the new 4.2 Web Client Library. The thick client interface has not changed. Upgraded the internal monitor pages to Web Client Library version 4.2. 3.4.1 build 1322
Revised the internal locking strategy, in order to minimize synchronization requirements for the processing of Data Adapter update notifications. 3.4 build 1321
Fixed a bug that affected items requested in COMMAND mode: the end-of-snapshot notification to the client could be delayed until the first update was produced by the Data Adapter. 3.4 build 1320
Fixed a bug that prevented the correct loading of a configuration file starting with a comment node. 3.4 build 1316
Introduced suitable configuration flags for the sizing of the internal thread pool devoted to the management of the client requests. See the sample configuration file for details. 3.4 build 1313
Improved the encoding of special characters in the push stream in order to use less bytes for typical JSON-style data values. Fixed a bug that might cause the available bandwidth not being completely used in case of polling with an unlimited bandwidth granted to the session. 3.4 build 1309
Extended the logging in case of problems in trial license check. Moved the native libraries to a single "native" directory, under "lib". 3.4 build 1308
Extended the sample Metadata Adapters (i.e. FileBasedProvider and
LiteralBasedProvider)in order to support the configuration, in adapters.xml,
of the allowed subscription modes for the various items, inquired by the
Kernel through the "modeMayBeAllowed" method. 3.4 build 1307
Tested the compatibility with the new Java 1.6 release. Extended the support for production licenses on all platforms, if java 1.6 is used to run the Server. 3.4 build 1306
Added the support for production licenses on the x86_64 processors, running either Windows or Linux. Addressed a compatibility issue with Opera browser, gaining a slight improvement on client-side performances. 3.4 build 1305
Added the <events_pool_size> and <pump_pool_size> configuration elements,
that allow the thread pools devoted to the management of the events flow
to be sized, based on the number of processors. 3.4 build 1300
Fixed a bug that prevented the Server to communicate the <request_limit> configuration setting to the web clients for an early check of the length of the requests. 3.4 build 1299
Improved the heuristic strategy adopted by the Server in order to identify connections kept open by intermediate proxies but closed on the client side. 3.4 build 1298
Introduction of Server 3.4 - Web Client 4.1 release. |
SDK for JMX Extensions |
4.0 build 1513.1.3
(Compatible with Server since 4.0)
(Compatible with custom managers for the previous version)
Released on 20 Jul 2011
4.0 build 1513.1.1
(Compatible with Server since 4.0)
(Compatible with custom managers for the previous version)
Released on 8 Jul 2011
4.0 build 1513
(Compatible with Server since 4.0)
(Compatible with custom managers for the previous version)
Released on 7 Jun 2011
Deprecated the "getQueueStageIOPush" method in the "Load" Mbean, as the "IOPush" thread pool has been dismissed. COMPATIBILITY NOTE: No issue can arise, as the method will just return always 0. Fixed an error in the count returned by the getCumulFilteredEvents function in the Session MBean for items requested in filtered COMMAND mode; the overall count for the session (i.e. the CumulFilteredEvents property) was correct. 4.0 build 1495
(Compatible with Server since 4.0 a3)
(Compatible with custom managers for the previous version)
Made available as a prerelease on 4 Feb 2011
Extended the AdapterSetMBean to report the current usage of the newly introduced optional thread pool for client message management. Extended the StreamMBean to report the filtered and lost events cumulated on all the sessions. Added the support for the dynamic descriptions of the available MBeans and their properties and operations (i.e. the MBeanInfo). The returned description texts may contain HTML markup. Put a factory limit on the length of the text that can be returned by the UserAgent property in each Session MBean. Fixed a bug in getExtraWaitMillis in LoadMBean. The returned count also
included wait time due to tasks enqueued on a thread pool with no free threads. 3.6.1 build 1470
(Compatible with Server since 3.6.1)
(May not be compatible with custom managers for the previous version;
see compatibility notes below)
Changed from Long to Double the type of various properties that represent
averages per second (for instance, inbound events per second). The change
involves the Session, Stream and DataAdapter MBeans. Revised, extended and completed the counters of requests, connections and
sessions in the Resource MBean; the properties that were still unimplemented
are now managed, but some of them have been renamed and some have been
dismissed. Revised, implemented and extended the methods for consulting the Server
configuration elements from the Server MBean; the "getConfigFile" method has
become an operation. Revised, extended and completed the counters of the different types of
requests in the Session MBean; the properties, that were still unimplemented,
are now managed, but some of them have been renamed. 3.6 build 1463.2
(Compatible with Server since 3.6)
(Compatible with custom managers for the previous version)
Released on 16 Apr 2010
3.6 build 1463.1
(Compatible with Server since 3.6)
(Compatible with custom managers for the previous version)
Released on 14 Apr 2010
3.6 build 1463
(Compatible with Server since 3.6)
(Compatible with custom managers for the previous version)
Released on 16 Feb 2010
Added the "getCurrentNIOWriteQueue", "getCurrentNIOWriteQueueWait", "getTotalPoolQueue", "getActiveNIOWriteSelectors" and "getTotalNIOSelectors" methods in the "Load" MBean. See the javadocs for details. Added the "Adapter Set" MBeans, one for each installed Adapter Set. Fixed the implementation of the "getMaxSessions" / "setMaxSessions" methods on the Server MBean. They now modify the <max_sessions> configuration element, rather than the deprecated <max_clients>. Fixed a bug in the total subscribed items count returned by the ResourceMBean. Revised the deployment of the MBeans documentation; see the "doc" directory. 3.5.1 build 1436
(Compatible with Server since 3.5)
(Compatible with custom managers for the previous version)
3.5 build 1428.4
(Compatible with Server since 3.5)
Released on 28 Jan 2009
Fixed a documentation error. The getNewLostEvents, getMaxLostEvents, getNewFilteredEvents and getMaxFilteredEvents methods on the SessionMBean are not implemented yet. 3.5 build 1427
(Compatible with Server since 3.5)
Discontinued the partial hiding of the license ClientID, which is returned by the ServerMBean; the full ClientID is now returned. Fixed a bug in the total subscribed items count returned by the ResourceMBean and in the "Subscribed" and "SubscribedButFailed" items reported by a DataAdapterMBean. Items for which a SubscrException were thrown by "subscribe" were added and never removed. 3.5 build 1422
(Compatible with Server since 3.5)
Released on 23 Sep 2008
As a consequence of the introduction of the Adapter Sets, extended the search
pattern of the "DataAdapterMBean" instances. See the DataAdapterMBean
javadoc for details. Implemented the "getUsername" and the new "getAdapterSet" methods of the SessionMBean. Removed the (still not implemented) "TopMaxFrequency" and "SlowingFactor" settings. Removed the MonitorProvider.txt documentation file. As a consequence of the new support for including the monitoring Data Adapter in custom Adapter Sets, accessing monitor data through the "MONITOR" Adapter Set is now deprecated. 3.4.8 build 1398
(Compatible with Server since 3.4)
Released on 6 Mar 2008
3.4.7 build 1395
(Compatible with Server since 3.4)
Released on 11 Feb 2008
3.4.6 build 1393
(Compatible with Server since 3.4)
Released on 4 Jan 2008
3.4.6 build 1391
(Compatible with Server since 3.4)
Released on 6 Dec 2007
Improved the supplied documentation. 3.4.6 build 1389
(Compatible with Server since 3.4)
Released on 22 Nov 2007
3.4.6 build 1385
(Compatible with Server since 3.4)
Released on 15 Nov 2007
3.4.5 build 1373
(Compatible with Server since 3.4)
Added suitable documentation for the monitoring statistics which the Server makes available to external clients. 3.4.4 build 1366
(Compatible with Server since 3.4)
Revised the getDelayMillis method of the Load MBean. Revised the documentation of the getQueueStageHTTPAccept and getQueueStageHTTPSAccept methods of the Load MBean, which was not correct since version 3.4. 3.4 build 1298
(Compatible with Server since 3.4)
Current version upon introduction of Server 3.4 - Web Client 4.1 release. |
SDK for Java Adapters |
4.1.1 build 1513.1.15
(Compatible with Server since 4.1)
(Compatible with code developed with the previous version)
(Compatible with the deployment structure of the previous version)
Released on 10 Jan 2013
Fixed a typo in the documentation of the init method of both adapters, where "adapter_conf.id" was reported instead of "adapters_conf.id". 4.1 build 1513.1.14
(Compatible with Server since 4.1)
(Compatible with code developed with the previous version)
(Compatible with the deployment structure of the previous version)
Released on 9 Aug 2012
4.1 build 1513.1.12
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
(Compatible with the deployment structure of the previous version)
4.0.3 build 1513.1.11
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
(Compatible with the deployment structure of the previous version)
Released on 6 Apr 2012
4.0.2 build 1513.1.8
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
(Compatible with the deployment structure of the previous version)
Released on 6 Dec 2011
4.0.1 build 1513.1.3
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
(Compatible with the deployment structure of the previous version)
Released on 20 Jul 2011
4.0 build 1513.1.1
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
(Compatible with the deployment structure of the previous version)
Released on 8 Jul 2011
4.0 build 1513
(Compatible with Server since 4.0)
(May not be compatible with code developed with the previous version;
see the compatibility notes below)
(May not be compatible with the deployment structure of the previous version;
see the compatibility notes below)
Released on 7 Jun 2011
Removed from the classpath the log4j jar and added the slf4j/logback jars.
COMPATIBILITY NOTE: If any existing Adapter uses log4j,
ensure that the log4j jar is included among the adapter-related libraries or under
the "shared/lib" folder. If any existing Adapter includes the slf4j/logback jars,
ensure that no conflicts arise. Introduced special parameters that are added to the custom ones in the init() call
of the Adapters, to supply context information; see the javadocs for details.
COMPATIBILITY NOTE: If existing adapters already
require that custom parameters with the same names are configured, they should
be changed, in order to use different names. However, as long as they are configured,
the custom values will still be received. Extended the documentation of getItems to show a few use cases. 4.0 a4 build 1495
(Compatible with Server since 4.0 a2)
(May not be compatible with code developed with the previous version;
see compatibility notes below)
Made available as a prerelease on 4 Feb 2011
Extended the MetadataProvider interface. An extended version of the "notifyUser"
method has been added, in which a fourth argument carries client identification
information reported in the client TLS/SSL certificate, when available. 3.6.1 build 1470
(Compatible with Server since 3.6)
(Compatible with code developed with the previous version)
Clarified the allowed format of custom error messages in CreditsException. 3.6 build 1463.2
(Compatible with Server since 3.6)
(Compatible with code developed with the previous version)
Released on 16 Apr 2010
3.6 build 1463.1
(Compatible with Server since 3.6)
(Compatible with code developed with the previous version)
Released on 14 Apr 2010
3.6 build 1463
(Compatible with Server since 3.6)
(may not be compatible with code developed with the previous version;
see compatibility notes below)
Released on 16 Feb 2010
Removed the deprecated "getUserSessions" method from the MetadataProvider
interface. Added the "HTTP_HEADERS" entry to the "clientContext" Map supplied to notifyNewSession, to match the "httpHeaders" argument of the corresponding notifyUser call. Relaxed some requirements on Metadata Adapter methods that could not be blocking, as a consequence of the introduction of the parallel management of control requests. See the javadoc for details. Relieved some requirements on Data Adapter methods that could not be blocking, as a consequence of the introduction of the asynchronous management of the subscriptions. See the javadoc for details. Clarified in the javadocs how binary AMF objects can be supplied as field values in order to be forwarded to the Flex Client Library. Suppressed the stack trace from the error log of the unchecked exceptions thrown by Adapter methods whose message starts with "[MILD]"; the prefix is not logged. Fixed a bug on snapshot management in the predeployed version of the Portfolio Data Adapter example. The example included in the SDK was already correct. Extended the basic Metadata Adapters provided; both comma and spaces are now allowed as separators for the modes_for_item_family_* configuration parameters. Revised the deployment of the API documentation; see the "doc" directory. 3.5.1 build 1436
(Compatible with Server since 3.5)
(Compatible with code developed with the previous version)
3.5 build 1428.4
(Compatible with Server since 3.5)
Released on 28 Jan 2009
3.5 build 1422
(Compatible with Server since 3.5)
Released on 23 Sep 2008
Extended the MetadataProvider interface. A third argument has been added to
the "notifyUser" method; the argument carries information about the HTTP
headers of the originating client request. Also, a third argument has been
added to the "notifyNewSession" method; the argument carries various
information about the originating client request. Moreover, a new argument,
carrying the current session name, has been added to the "getItems" and
"getSchema" methods. Extended the interface specifications to the basic support for multiple Data
Adapters introduced in the Server. Extended the conditions in which an update event, after being passed to the ItemEventListener, can still be used by the Data Adapter. Revised and extended the included examples. 3.4.8 build 1398
(Compatible with Server since 3.3.1 b1)
Released on 6 Mar 2008
3.4.7 build 1395
(Compatible with Server since 3.3.1 b1)
Released on 11 Feb 2008
Clarified on the javadocs the conditions in which an update event, after
being passed to the ItemEventListener, can still be used by the Data Adapter. 3.4.6 build 1393
(Compatible with Server since 3.3.1 b1)
Released on 4 Jan 2008
3.4.6 build 1391
(Compatible with Server since 3.3.1 b1)
Released on 6 Dec 2007
3.4.6 build 1389
(Compatible with Server since 3.3.1 b1)
Released on 22 Nov 2007
3.4.6 build 1385
(Compatible with Server since 3.3.1 b1)
Released on 15 Nov 2007
3.4.4 build 1372
(Compatible with Server since 3.3.1 b1)
Tested the sample Adapters for compatibility with the new version of log4j
libraries used for the Server (1.2.15). 3.4.4 build 1364
(Compatible with Server since 3.3.1 b1)
Extended the provided JMS-based StockListDemo Data Adapter example, by adding configuration istructions for the JBoss Messaging JMS provider. 3.4.3 build 1362
(Compatible with Server since 3.3.1 b1)
Extended the reusable Metadata Adapters provided with the SDK. 3.4.1 build 1322
(Compatible with Server since 3.3.1 b1)
Revised and clarified the Data Adapter interface requirements, in order
to avoid possible issues due to a lack of synchronization. 3.4 build 1309
(Compatible with Server since 3.3.1 b1)
Introduced a new example Data Adapter, named StockListDemo_JMS_DataAdapter, which demonstrates getting data for the StockListDemo front-end from an external generator process, through JMS. 3.3.1 b1 build 1254
(Compatible with Server since 3.3.1 b1)
Current version upon introduction of Server 3.4 - Web Client 4.1 release. |
SDK for .NET Adapters |
1.7.4462.30217
(Compatible with Adapter Remoting Infrastructure since 1.4)
(Compatible with code developed with the previous version)
Released on 6 Apr 2012
Fixed a bug that affected the special Update method overloads based on the IItemEvent and IIndexedItemEvent interfaces. In case the "robust" version of the Proxy Data Adapter had been in use, the updates could have been discarded. Improved the extraction of HTTP headers supplied to NotifyUser. Clarified the API documentation in several points. 1.7.4175.16355
(Compatible with Adapter Remoting Infrastructure since 1.4)
(Compatible with code developed with the previous version)
Released on 7 Jun 2011
Extended the documentation of GetItems to show a few use cases. 1.7.3895.27492
(Compatible with Adapter Remoting Infrastructure since 1.4)
(May not be compatible with code developed with the previous version;
see compatibility notes below)
Made available as a prerelease on 4 Feb 2011
Extended the MetadataProvider interface. An extended version of the "NotifyUser"
method has been added, in which a fourth argument carries client identification
information reported in the client TLS/SSL certificate, when available. Clarified the allowed format of custom error messages in CreditsException. 1.6.3624.26503
(Compatible with Adapter Remoting Infrastructure since 1.3)
(May not be compatible with code developed with the previous version;
see compatibility notes below)
Released on 16 Feb 2010
Discontinued the support for .NET version 1.1; version 2.0 or greater is now
required. All 1.1 related resources have been removed and the deployment tree
has been simplified. Added the "REQUEST_ID" property to the "httpHeaders" IDictionary supplied to NotifyUser and to the clientContext IDictionary supplied to NotifyNewSession, so that the ids for corresponding calls match (only available if Server Adapter Interface 3.6 or higher is in use). Changed the API documentation format. Now HTML documentation is provided. Introduced common base classes for the various Exception classes defined in the Metadata Adapter and Data Adapter namespaces. Added a new Remote Adapter example. Binaries, source code and deployment examples for the Portfolio Demo are now provided. Extended the included StockListDemo Adapter Set example; modified the sample deployment of the Proxy Adapters in the "Deployment_LS(robust)" subdirectory in order to use new RobustNetworkedMetadataProvider included in Adapter Remoting Infrastructure version 1.3. Revised the namespace names in the included StockListDemo example. Fixed an outdated compatibility note in DotNet Adapters.pdf Fixed the obsolete version number stored in the "strong name" server version. 1.5.3331.32630
(Compatible with Adapter Remoting Infrastructure since 1.2.1)
Released on 24 Feb 2009
Introduced a simple internal keepalive mechanism on the connections towards the Proxy Adapters, in order to prevent intermediate network nodes from dropping some connection due to inactivity. Extended the Close method of the MetadataProviderServer and DataProviderServer classes, to also close the involved connections. Fixed a bug that might provoke redundant calls to the handleException exception handler after Close had been invoked. 1.5.3168.20853
(Compatible with Adapter Remoting Infrastructure since 1.2)
Released on 23 Sep 2008
Extended the IMetadataProvider interface, according to the corresponding
extensions on the Server Adapter Interface 3.5. Extended the interface specifications, so that the basic support for multiple
Data Adapters introduced in the Server since 3.5 is taken into account. Revised the API documentation. Revised the deployment details of the included example. Extended the included StockListDemo Adapter Set example; added an alternative deployment of the Proxy Adapters that uses the new RobustNetworkedDataProvider included in Adapter Remoting Infrastructure version 1.2 (see the "Deployment_LS(robust)" subdirectory). Extended the log of the initialization phase. 1.3.2960.18717
(Compatible with Adapter Remoting Infrastructure since 1.1)
Released on 11 Feb 2008
Revised the API documentation. 1.3.2893.27841
(Compatible with Adapter Remoting Infrastructure since 1.1)
Released on 6 Dec 2007
Removed the burst.cs source file from the sample source files in DotNetStockListDemo\src_data_adapter; the example was not part of the StockListDemo Data Adapter. 1.3.2837.24089
(Compatible with Adapter Remoting Infrastructure since 1.1)
Released on 9 Oct 2007
Removed the deployment case based on the "piped" mode from the Remote StockListDemo Adapter example included. Only the standard "socket" mode is now shown. 1.3.2819.29975
(Compatible with Adapter Remoting Infrastructure since 1.1)
Removed a locale-dependent date formatting in the provided StockListDemo example, which might cause compatibility issues with some of the provided example clients. 1.3.2798.29601
(Compatible with Adapter Remoting Infrastructure since 1.1)
Simplified the LiteralBasedProvider.cs sample code. 1.3.2795.18928
(Compatible with Adapter Remoting Infrastructure since 1.1)
Improved the custom adapter initialization through the MetadataProviderServer
and DataProviderServer classes, by using empty hashtables as the default
to be supplied for the adapters Init call. 1.3.2747.24605
(Compatible with Adapter Remoting Infrastructure since 1.1)
Added a version of the library identified with a "strong name". 1.3.2746.18556
(Compatible with Adapter Remoting Infrastructure since 1.1)
Fixed a bug that prevented the use of null values in the update events; actually, they are allowed, though just considered as missing fields. 1.3.2725.16801
(Compatible with Adapter Remoting Infrastructure since 1.1)
Fixed a bug in the Adapter initialization phase, which might cause an Adapter with a slow Init() method to be used before Init() termination. Propagated to Start() any exceptions thrown in the Init() method; previously, they were notified to the custom asynchronous exception handler. Added a DEBUG level log for all request, reply and notify lines (see the sample exe.config configuration files). 1.3.2641.18418
(Compatible with Adapter Remoting Infrastructure since 1.1)
Extended the Server abstract class, which offers the support for custom
Remote Server main programs. Custom exception handling is now possible. 1.2.2613.30708
(Compatible with Adapter Remoting Infrastructure since 1.1)
Revised and clarified the Data Adapter interface requirements, in order
to avoid possible issues due to a lack of synchronization. 1.1.2488.16523
(Compatible with Adapter Remoting Infrastructure since 1.0)
Current version upon introduction of Server 3.4 - Web Client 4.1 release. |
SDK for Adapter Remoting Infrastructure |
1.4.2 build 52
(Compatible with Server Adapter Interface since 4.0)
(Compatible with Remote Servers for the previous version)
Released on 9 Aug 2012
Revised the low level log of the Proxy Adapters, to allow for suppressing the log of real-time messages while logging the requests and replies from the Remote Server; see com.lightstreamer.adapters.remote in the Server log configuration file. Fixed a typo in the com.lightstreamer.adapters.remote logger description. 1.4.2 build 51
(Compatible with Server Adapter Interface since 4.0)
(Compatible with Remote Servers for the previous version)
Released on 6 Apr 2012
Introduced new configuration properties to let the RobustNetworkedMetadataProvider return a custom error notification to the client upon a request for a new session when the remote server is currently unavailable; see "notify_user_disconnection_code" and "notify_user_disconnection_msg" in "conf\sockets(robust)\adapters.xml". Introduced new configuration properties to let the RobustNetworkedDataProvider manage a custom item which carries notifications about the availability of the remote server; see "remote_adapter_status" in "conf\sockets(robust)\adapters.xml". Added checks on the correct configuration of the Proxy Adapters; in fact, wrongly setting a notify port on a Proxy Metadata Adapter could lead to wrong behavior. Improved the extraction of HTTP headers supplied by the "NUS"/"NUA" request. Added log to detect issues caused by obsolete Remote Servers 1.4.1 build 48
(Compatible with Server Adapter Interface since 4.0)
(Compatible with Remote Servers for the previous version)
Released on 7 Jun 2011
Ported the provided Proxy Adapters to "logback" for logging. The Adapters
still lean on the Server deployment for logging configuration and for the
required libraries. Introduced the "missing_connection_timeout_millis" parameter for the socket-based Proxy Data Adapter; see the sample adapter configuration files for details. Introduced the logging of incoming and outcoming messages at DEBUG level. 1.4 build 43
(Compatible with Server Adapter Interface since 4.0 a1)
(may not be compatible with Remote Servers for the previous version;
see compatibility notes below)
Made available as a prerelease on 4 Feb 2011
Extended the protocol with the "NUA" request, an extended version of the "NUS"
request in which an added field carries client identification information
reported in the client TLS/SSL certificate, when available. Extended the protocol with the "NUA" request, an extended version of the "NUS"
request. The extension is related with https connections; as a consequence,
it is not used by the Proxy Adapter in Moderato edition. Addressed the case in which the timeout on the requests to the remote Adapters is very high and a very high number of subscriptions occurs. In this case, memory usage issues could have been experienced. 1.3 build 42
(Compatible with Server Adapter Interface since 3.6)
(Compatible with Remote Servers for the previous version)
Released on 16 Feb 2010
Introduced the RobustNetworkedMetadataProvider, a new version of the Proxy Metadata Adapter which includes the management of the unavailability of the Remote Metadata Adapter. See the sample configuration file under the SDK's conf/sockets(robust) directory for details. Added the "REQUEST_ID" property to the http headers supplied to Notify User and to the client context supplied to Notify New Session, so that the ids for corresponding calls match. Fixed a bug on the management of the connection_recovery_timeout_millis setting for the Robust Data Adapter. Improved Adapter closing management. Supported a negative timeout setting for no timeout checks on requests to the Remote Server. 1.2.1 build 38
(Compatible with Server Adapter Interface since 3.5)
Released on 24 Feb 2009
Introduced a simple keepalive mechanism on the connections towards the Remote Server, in order to prevent intermediate network nodes from dropping some connection due to inactivity. Dismissed the use of the "eos_count_limit" and "eos_sleep_time" parameters for the networked versions of the Proxy Adapters, in which retries on end-of-stream errors are no longer performed. 1.2 build 37
(Compatible with Server Adapter Interface since 3.5)
Fixed a bug which could cause a Proxy Data Adapter not to close itself when only one of the connections to the Remote Adapter was closed and the Remote Adapter did not close the other one as a consequence. Fixed a bug which prevented the correct use of the "eos_sleep_time" parameter. 1.2 build 36
(Compatible with Server Adapter Interface since 3.5)
Released on 28 Jan 2009
Revised and extended the protocol documentation. Added forgotten notes about recent extensions. 1.2 build 34
(Compatible with Server Adapter Interface since 3.5)
Released on 23 Sep 2008
Extended the "Notify User", "Notify New Session", "Get Items" and "Get Schema"
methods on the Metadata Provider Protocol, according to the corresponding
extensions on the Server Adapter Interface 3.5. All new arguments have been
added on the end. Extended the protocol specifications, so that the basic support for multiple
Data Adapters introduced in the Server since 3.5 is taken into account. Introduced the RobustNetworkedDataProvider, a new version of the Proxy Data Adapter which includes the management of the unavailability of the Remote Data Adapter. See the sample configuration file under the SDK's conf/sockets(robust) directory for details. Removed caching of the "Get Items" and "Get Schema" calls results. This can
be considered as a bug fix, since returning different values upon subsequent
calls of "Get Items" or "Get Schema" with the same arguments is allowed. Changed the order of opening of the server sockets for the Networked Proxy Data Adapters. The NotifySocket is now opened first. This fixes a bug in the Remote .NET Server, which could lead to a race condition. Changed the name and format of the included build and version number files. Extended the log of the initialization phase. 1.1 build 25
(Compatible with Server Adapter Interface since 3.3.1)
Released on 9 Oct 2007
Improved internal cache management of user profile data. 1.1 build 24
(Compatible with Server Adapter Interface since 3.3.1)
Revised some exception messages. 1.1 build 23
(Compatible with Server Adapter Interface since 3.3.1)
Tested the Proxy Adapter for compatibility with the new version of log4j libraries used for the Server (1.2.15). 1.1 build 22
(Compatible with Server Adapter Interface since 3.3.1)
Revised the protocol and the protocol documentation. Some update event notifications have been eliminated, as not really different than the "Update by Map" notification. They are still temporarily supported by the Proxy Adapter. Added examples of Proxy Adapter configuration. Such examples were mistakenly missing until now. Changed the management of the server sockets used to accept the connections from the Remote Servers. The server sockets are now closed after the Remote Server connections have been established. Added timeout checks also for the requests performed asynchronously. 1.1 build 21
(Compatible with Server Adapter Interface since 3.3.1)
Improved the performance in case of a burst of subscriptions. 1.1 build 19
(Compatible with Server Adapter Interface since 3.3.1)
Fixed a bug that might cause a misleading exception to be reported in case of high subscription load. 1.1 build 17
(Compatible with Server Adapter Interface since 3.3.1)
Revised the error management for base64 decoding. 1.1 build 16
(Compatible with Server Adapter Interface since 3.3.1)
Improvement on the Adapter performances. 1.1 build 15
(Compatible with Server Adapter Interface since 3.3.1)
Improvement on the Adapter performances. 1.1 build 13
(Compatible with Server Adapter Interface since 3.3.1)
Extended the remoting protocol, in order to enforce the association
of each update notification with a specific subscribe request instance. Fixed a bug that might cause unexpected behavior, in the (unlikely) event of fast subscribe-unsubscribe or unsubscribe-subscribe sequences. 1.0 build 12
(Compatible with Server Adapter Interface since 3.3.1)
Improved the initialization phase, to manage the case in which the Remote Adapter produces update events before any subscription (this may make sense in some cases, though the updates are ignored). 1.0 build 10
(Compatible with Server Adapter Interface since 3.3.1)
Current version upon introduction of Server 3.4 - Web Client 4.1 release. |
SDK for HTML Clients |
5.0.1 build 1446.15
(Compatible with Server since 4.1)
(Compatible with code developed with the previous version)
Released on 10 Jan 2013
Improved compatibility with Opera Browser. 5.0.1 build 1446.13
(Compatible with Server since 4.1)
(Compatible with code developed with the previous version)
Released on 9 Aug 2012
Fixed an issue with an internal hidden iframe that had a small border left; in particular conditions, this could have caused the whole PushPage to become larger than expected and possibly a scrollbar to appear. 5.0.1 build 1446.12
(Compatible with Server since 4.1)
(Compatible with code developed with the previous version)
Extended the functionality of the setRequestedMaxFrequency method to allow for modification of the maximum frequency setting for a currently subscribed table, with no need for a resubscription. 5.0 build 1446.9
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
Released on 6 Apr 2012
Fixed a bug in "getPushPages", which did not return any result. Fixed a bug, introduced in build 1446, which might have caused a spinning icon to be shown by IE7 and IE8 during streaming. 5.0 build 1446.6
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
Released on 6 Dec 2011
Changed an internal default timeout related to xhr requests. 5.0 build 1446.5
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
Relaxed the checks on item and field names that were introduced on version 5.0 b1 build 1413. Improved compatibility with Sony Bravia TV browser. 5.0 build 1446.3
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
Released on 8 Jul 2011
Improved compatibility with Firefox 5.0 and newer and Chrome 11 and newer where timeouts of inactive tabs are delayed and executed at maximum once per second. See https://bugzilla.mozilla.org/show_bug.cgi?id=633421 and http://code.google.com/p/chromium/issues/detail?id=66078 5.0 build 1446
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
Released on 7 Jun 2011
Introduced official support for HTML5 offline web applications (see Web Client Dev.pdf for details). Introduced IE9 streaming support. Introduced a new, faster and lighter, stream-sense algorithm that completely replaces the previous one. Added the forEachChangedField public methods to the UpdateItemInfo and VisualUpdateItemInfo classes. Added the setNodeTypes and setRootNode methods to the ScreenTableHelper class. Introduced support to update any property of a cell (previously only the content of a cell were updated);
accordingly extended cellOverwrite, cellScroll and cellMetapush methods of PushPage. Fixed a bug introduced on build 1413 in the handling of XHR response that may lead to a wrong execution order. The bug was theorically possible on most browsers but was only seen on Chrome. Fixed a bug on the cellOverwrite, cellScroll and cellMetapush methods of PushPage that required'em to be called specifiying the node type to be used. Fixed a bug that may prevent Opera 10.x from creating an engine after a page reload. Fixed a bug that may produce unexpected exceptions during the re-binding of streaming sessions. In such cases the connection to the server may be lost; anyway the client was able to open a new connection after such events. Removed limitations in the use of setPushedHtmlEnabled, the same screen table can now be used with
both setPushedHtmlEnabled set to true and to false provided that in between the associated
Table instance is removed from the "running" state. Introduced partial support to AMD loaders as described by CommonJS (e.g.: RequireJS). Changed the default for the setTimeoutForReconnect method of the Policy class from 15000 to 3000 ms. Deprecated the setBufferedStreamingHandled method of the Policy class as the associated feature was removed in favor of the new stream-sense algorithm. Calling the method has now no effects. Improved the notification of closing sessions to the Server, so that unused sessions are discarded as soon as possible. 5.0 b1 build 1413
(Compatible with Server since 4.0 a4)
(Compatible with code developed with the previous version)
Made available as a prerelease on 4 Feb 2011
Renamed the SDK folder under DOCS-SDKs, from sdk_client_web to sdk_client_html. Removed the setClearOnAdd limitations on DynaScrollTable objects. It is now possible to call setClearOnAdd(false) on those tables, thus permitting to keep in the view of a DynaScrollTable updates pertaining to a previous subscription and/or updates manually added through the showValues method before the actual subscription. Added the getSchema and getGroup public methods to the Table class. Improved the heuristic slowing algorithm. If a streaming session has been downgraded to a "slow" polling session, upon a polling connection failure, a new "slow" polling session will be initiated instead of a new streaming session. Fixed an uncompliance in the internal use of cookies that might have caused compatibility issues (only noticed with the "Django" web framework). Fixed a bug on the production of remote log lines: the build number was not sent correctly to the server. Fixed a bug that may prevent a client from connecting to the server if the connection effort is performed while the server is offline. Made the setAttribute and setRemoteAttribute methods of VisualUpdateInfo compliant with http://www.w3.org/TR/CSS1/#color-units when used to set "color" or "backgroundColor". The short hex form (eg #FF2) and rgb percentile (eg rgb(10%,100%,5%) ) were not supported. Added the caret to the non-alphanumeric characters allowed in item and field
names. Fixed an incorrect management of the Table lifecycle that was introduced in version 4.4 build 1396. In case the client had been disconnected or waiting for the first connection the Table would have been considered as not running, hence:
Allowed the use of underscore characters in sequence names on sendMessage. Changed the Server identification message when the Server is still to be accessed; "Lightstreamer Server" is now used in place of "Streaming Server". Fixed the resume of the possible Engine state transitions (in the documentation for "onStatusChange"). Removed pre-installed TIBCO General Interface demos. 4.4.1 build 1396.4
(Compatible with Server since 3.6)
(Compatible with code developed with the previous version)
Released on 14 Apr 2010
Fixed a bug, introduced in build 1396, which caused notifications of table
removal not to be notified to the Server. If any table had been removed,
the involved subscriptions would have remained active and the related updates
would have been reaching the client until the final session closure. Fixed a bug in showValues, introduced in build 1396, that affected the VisualUpdateInfo object supplied upon the invocation of the onChangingValues callback originated by a showValues call. When getServerValue was invoked on that object, it would return an incorrect value. Fixed the jsdocs: the documentation of the MessageListener class, introduced in build 1396, was missing. Clarified in the jsdocs that the global aliases for class names that are not
meant to be used directly by custom code are not defined at all. 4.4 build 1396
(Compatible with Server since 3.6)
(Compatible with code developed with the previous version)
Released on 16 Feb 2010
Improved the interoperability with other javascript libraries, by removing any conflicts on global names; in fact, only the "Lightstreamer" global name is now needed. However, the above is not the default and has to be forced; see "Lightstreamer.avoidLSGlobals" in the JSDocs. Extended the "sendMessage" function by adding an optional listener argument. Revised the management of the "client errors": now, exceptions are also thrown
in case of errors due to wrong arguments supplied to interface methods. See
the onClientError JSDocs for details on the various cases. Revised some error messages and function argument checks. Removed some spurious occurrences of a "client alert" complaining for browser related issues in the "setTimeout" processing. Improved the management of the "push cells" supplied by the page. The related
HTML elements are now preserved rather than being replaced. Added the setStatusBarUrlPortion setter (and the corresponding getter) to the Connection class. This allows for customization of the streaming page url, which is put into evidence in the status bar by some browsers, as IE. Removed some interface methods deprecated since version 4.2 or before. Removed the global aliases for class names that are not meant to be used by
custom code directly. Clarified the error codes associated to the possible cases of sessions closing reported in onServerError. Fixed a bug that might (partially or fully) have prevented the engine
migration process from working, if tens of client windows had been active. Fixed a bug that might have prevented the engine migration process from
working in case pages invoking createEngine and seekEngine had been placed
under different folders. Fixed a bug that caused "addTable" to never return any value. Fixed "getTable" and "getTables", which could have returned second-level
tables related with a MultiMetapush table, which was not the intended behavior. Fixed a bug that caused some getter methods in DynaMetapushTable not to return any value. Fixed the management of null formatted values in the onChangingValues callback
for Scroll and DynaScroll tables, which didn't match the documentation. Fixed a bug in the scrolling algorithm for (non-Dyna) Metapush tables. Upon
scrolling, some rows could have temporarily remained not refreshed. Fixed a bug on Metapush and DynaMetapush tables, which restricted them to be fed by items subscribed to in COMMAND mode; other cases, though tricky, should have been allowed. Fixed a bug that might have caused very long subscription requests to fail in case the XmlHttpRequest support had not been available. Fixed the management of Master Push-Page unloading. If the "onbeforeunload" event handler had been implemented to return false in some cases, the embedded Engine would have been destroyed regardless. Fixed a bug on the obfuscation process that affected the *Descriptor classes. Fixed a bug that might, in rare cases, have caused wrong, though harmless, requests of the "lsblank.html" page to be issued towards the Server. Addressed a compatibility issue with IE7 and IE8 that could potentially have
caused unexpected problems if many client windows had been active. Assessed and improved the support for Opera 10. Improved the efficiency of the search for available push cells in "addTable". Improved the efficiency of the client-server communication protocol. Removed spurious entries in the GLOBALS section of the JSDocs. Revised the deployment of the API documentation; see the "doc" directory. Revised the code of the included demos. 4.3.1 build 1355.3
(Compatible with Server since 3.5)
Released on 24 Feb 2009
Fixed a bug on the Engine migration mechanism which, in some cases, could cause subsequent rebinds or reconnections to fail and not be recovered correctly. Fixed a bug that could cause unexpected disconnections in case synchronous polling were configured with a high polling timeout. Fixed a compatibility issue with IE6 affecting access to the Server in https. Added checks for incorrect values supplied through property setters. 4.3.1 build 1355
(Compatible with Server since 3.5)
Released on 28 Jan 2009
Fixed a bug that affected the case in which a removeTable was immediately
followed by an addTable for the same ID. Possible trailing updates for the
previous data table were not properly discarded and could be included
in the new data table. Fixed a bug that, upon connection delays affecting rebind requests, might cause onServerError to be invoked with an error code of 30, thus preventing the automatic recovery through a reconnection from taking place. Fixed the engine migration mechanism. Addressed a race condition which was possible when many pages were involved, particularly under IE, and could cause some pages to issue javascript errors or not to get an engine correctly. Fixed a bug that might cause some tables not to be subscribed to on IE7 when a lot of tables had to be subscribed to at page startup. Revised and documented the details of status changes. Removed any use of http GET in favour of http POST for polling requests
and any requests containing user credentials. Improved the Stream-sense mechanism so that, when a polling connection recovers a previous streaming connection attempt, the session related with the streaming connection is closed first. Addressed a compatibility issue with Opera browser, which might prevent the use of XHR and force the library to use less efficient means. Removed inefficiencies when reloading a page in Firefox. Fixed some spurious occurrences of the "The call of createEngine methods after the BODY ...." debug alert. 4.3 build 1348
(Compatible with Server since 3.5)
Removed any use of http GET in favour of http POST for control requests submission. This only concerned recovery attempts after XHR unavailability. 4.3 build 1347
(Compatible with Server since 3.5)
Fixed a bug on the management of the initial cell values; those values were
lost when setPushedHtmlEnabled(true) were issued. Done minor improvements on the included demos. 4.3 build 1346
(Compatible with Server since 3.5)
Released on 23 Sep 2008
Extended the Table interface in order to take advantage of the support
for multiple Data Adapters on the same session, introduced in Lightstreamer
Server with version 3.5. See "setDataAdapter" on the JSDocs for details. Extended the "onServerDeny" event handler so as to include table information. Introduced the MultiMetapush tables. See the new "MultiDynaMetapushTable"
class and the "setCommandLogic" method for the "NonVisualTable" class
in the JSDocs for details. An extension to the field naming conventions is
needed for fields from a MultiMetapush table; this applies to many methods
where field names/indexes are involved. Introduced the setServerUrlPath method, to use a customized URL path for requests to the Server. The same URL path should be configured on the Server through the new <base_url_path> configuration element. Extended the "createEngine" function in order to make it possible to suppress the default handling of the "status change" event. Previously, it could only be disabled after Engine loading. See the JSDocs for the "PushPage" class for details. Changed the default for the setPollingInterval method from 500 to 0 ms. Disabled the recovery of streaming connections that are buffered in the
initial part when the data flow is finally received. Revised the slowing algorithm. In case slow client processing is detected
on streaming sessions, switch to smart-polling is now performed. In case slow
processing is detected on polling sessions, the polling is slowed down. Fixed a bug on the Engine migration algorithm, which might prevent
successful engine recovery in specific cases. Fixed a bug which might prevent session sharing from working correctly when two applications coming from different domains define their own Engine pages with the same name (however, domain restrictions still prevented a Push-page from accessing the wrong Engine page). Serialized the onEngineReady and onEngineCreation events with data events, so that they cannot be issued before data events coming through the involved Engine instance. Added checks to ensure that the unsubscription requests to the Server related to closed non-master push-pages are done in short time. Fixed a bug on the "autoscroll" support for Dyna tables, which affected scroll bar positioning. Fixed a bug that might cause the setClearOnDisconnected setting not to be honoured. Fixed a bug on table names handling, which might cause incorrect management for non-alphanumeric table names. Fixed a bug that might prevent screen table reuse from working correctly. Fixed a bug that might cause wrong subscription requests to be issued to the Server in case of a fast remove-add sequence of the same table. Fixed a small memory leak after table removal. Fixed some spurious occurrences of the "createEngine() has already been called" and "Unable to find the Engine" debug alerts. Fixed an issue with some spurious entries generated in the browser history at Engine loading. This was only observed with multiple Push-Pages on the same frameset. Extended the client alert messages about exceptions thrown in a custom callback. The exception stack trace, where available, is now included. Added checks to cross-frame accesses to avoid javascript errors during the browser shutdown transient. Fixed a bug with no effect on the front-end operation; the bug only happened for some browsers and manifested itself by issuing a request to the Server for the "lsblank.html" page with a wrong path. Addressed a compatibility problem with Firefox browser that prevents
the "SHARE_SESSION" policy on "createEngine" from working when different
application instances come from different hosts, despite the domain setting. Addressed a compatibility issue with Firefox 3, which might prevent or delay engine loading upon page refresh. Addressed a compatibility issue which might affect fading effects on Safari browser. Addressed a compatibility issue with Safari for the iPhone. Improved the Engine initialization phase on Safari 3.1. Addressed a compatibility issue with Internet Explorer 5.5 and Opera 7.54, by which createEngine could only be called in the static part of the page. Ensured compatibility with the new Opera 9.5 browser (while older library
versions are not compatible). Put a check to avoid sending bandwidth requests on rebinds to a session that is supplied by a Server whose Edition does not allow it. Changed the "UNLIMITED" constant for "setMaxBandwidth" to "unlimited". Limited the cases for the warning about multiple instances of the same application; removed some not significant cases. Added checks on the supplied engine name in createEngine; if any character is not allowed, a client error is issued. Extended the support for URLEncoding request values. Any UTF-8 character can now be used in names (e.g. item names, passwords, send message arguments). Improved the demo front-ends and added new ones. 4.2.3 build 1329.12
(Compatible with Server since 3.4.6)
Released on 6 Mar 2008
Extended the NonVisualTable in order to better manage items subscribed to
in COMMAND mode. See setCommandLogic in the JSDocs for details. Revised the documentation of group, schema, item and field descriptors; fixed documentation errors about descriptors for extra fields. 4.2.2 build 1329.9
(Compatible with Server since 3.4.6)
Released on 11 Feb 2008
Fixed a bug that might cause the getTables method on a PushPage object to fail with an exception. 4.2.2 build 1329.7
(Compatible with Server since 3.4.6)
Released on 4 Jan 2008
4.2.2 build 1329.6
(Compatible with Server since 3.4.6)
Fixed a compatibility issue with Internet Explorer 6, which affected cookie management and could prevent multiple application istances from finding an engine to share when "SHARE_SESSIONS" was specified in "createEngine". 4.2.2 build 1329.4
(Compatible with Server since 3.4.6)
Released on 22 Nov 2007
Fixed a bug, introduced in build 1323, which caused the "onClientAlert" and "onServerError" event handlers to be called with wrong values for the arguments. 4.2.2 build 1329.3
(Compatible with Server since 3.4.6)
Revised the implementation of the access to the Master Push-page from a Push-page starting in a newly created popup. Under particular conditions, the access could fail on Internet Explorer. Reduced the occurrences of the "Unable to find the Engine" debug alert to only signal when the Engine has not been found after a significant time has elapsed since page start. 4.2.2 build 1329.1
(Compatible with Server since 3.4.6)
Released on 15 Nov 2007
Changed the format of the included build.number file. Changed the management of the case in which an active session is closed on the Server side. The event is now notified to the onServerError event handler; error codes from 30 to 39 have been reserved for these notifications. As a consequence, the default handling is to issue an alert and the status is set to DISCONNECTED, without any recovery attempt. Added new methods to notify the client of some load balancing details. Fixed a bug on Safari compatibility management which prevented reconnections after disconnections from working correctly on Safari. 4.2.1 build 1329
(Compatible with Server since 3.4.2)
Addressed a compatibility problem with Opera browser, which prevents the "SHARE_SESSION" policy on "createEngine" from working when different application instances run on different windows. The "NEW_SESSION" policy is now automatically applied in those cases. 4.2.1 build 1328
(Compatible with Server since 3.4.2)
Fixed a bug that prevented full reentrancy support in onClientError and onStatusChange; now any API method can be called from inside any event handler. 4.2.1 build 1323
(Compatible with Server since 3.4.2)
Introduced the "Engine migration" feature, which provides automatic recovery
from Engine closure when the SHARE_SESSION policy is used for Engine
creation.
Removed the documentation of the methods that were deprecated upon introduction of the 4.2 version. 4.2 build 1320
(Compatible with Server since 3.4.2)
Fixed a compatibility issue with Internet Explorer, which could prevent the correct page initialization when the library "js" files were included inside the page body element. Fixed a bug that, under particular conditions, might cause a call to "onEngineReady" to receive a not fully initialized LightstreamerEngine object. 4.2 build 1319
(Compatible with Server since 3.4.2)
Fixed a compatibility issue with Safari browser, which could bring the focus to the master pushpage when session rebind occurred. Fixed a bug that could prevent the stream-sense algorithm from behaving correctly with Safari browser. Added a check to prevent possible browser-originated duplicated messages
upon sendMessage calls. Extended the setRemoteAlertsOnClientError method to add optional limits on the length and overall number of messages to be sent to the Server. 4.2 build 1318
(Compatible with Server since 3.4.2)
Fixed a bug that might cause some onEngineLost event handler calls to be lost when immediately followed by the subsequent onEngineReady call. 4.2 build 1317
(Compatible with Server since 3.4.2)
Fixed a bug on the management of the ScrollTable, which caused cell value formatting, set through onChangingValues, to be lost upon scrolling. 4.2 build 1316
(Compatible with Server since 3.4.2)
Improved the library startup phase, by eliminating some unnecessary page requests; this also eliminates a problem, related with uneven session requests distribution, observed with some load balancers. 4.2 build 1314
(Compatible with Server since 3.4.2)
Assured the compatibility with the OpenAjax Hub 1.0 4.2 build 1312
(Compatible with Server since 3.4.2)
Added the onClientAlert event handler, which gives the application
control over the notification to the user of critical conditions,
related to its environment, that prevent the application from working. 4.2 build 1309
(Compatible with Server since 3.4.2)
Added the support for the <use_protected_js> Server configuration element, introduced in Server version 3.4.3. 4.2 build 1308
(Compatible with Server since 3.4.2)
Revised the Server denomination in some error and notification messages. 4.2 build 1307
(Compatible with Server since 3.4.2)
Revised the management of the debug alerts and onClientError notifications
in the startup phases. 4.2 build 1306
(Compatible with Server since 3.4.2)
Fixed a bug that limited the StreamSense behaviour under Safari 1.x. Restricted the "seekEngine" behaviour in order to prevent a Push-Page from
linking to an Engine page created by a different instance of the same
front-end application if the "onSimilarEngineFound" argument passed to the
"createEngine" method was "FAIL" or "NEW_SESSION". 4.2 build 1302
(Compatible with Server since 3.4.2)
Added new utility methods to the LightstreamerEngine object. Revised the way in which the Engine is added to the front-end. Revised the way in which conflicts on the Engine page are handled. Changed the URLs used for the streaming connections to the Server. 4.1.1 build 1300
(Compatible with Server since 3.3.4)
Improved security and vulnerability prevention. 4.1 build 1290
(Compatible with Server since 3.3.4)
Addressed an issue with Safari browser, in which an ongoing streaming page
blocks all page load requests on any parent page (this only affects
programmatic requests, not clicking the "refresh" button, for instance). 4.1 build 1289
(Compatible with Server since 3.3.4)
Fixed an obfuscation bug which prevented the recently addede "onStart" event handler from being visible. 4.1 build 1286
(Compatible with Server since 3.3.4)
Revised and improved the StreamSense algorithm and the various mechanisms for the recovery after unexpected disconnections from the Server. 4.1 build 1284
(Compatible with Server since 3.3.4)
Addressed a compatibility problem with the KHTML browsers (e.g. Safari) that could cause the "getEngineReference" method to return a wrong value when called too early. Now, a null pointer will be returned in these cases, until a correct value could be returned. 4.1 build 1283
(Compatible with Server since 3.3.4)
Overcome a compatibility problem with Opera, that could prevent the full
initialization of Pushpages defined as siblings of the Engine page. 4.1 build 1281
(Compatible with Server since 3.3.4)
Fixed a bug, introduced with build 1279, that affected the recovery with polling when streaming was not allowed, for applications where long user names were used. 4.1 build 1280
(Compatible with Server since 3.3.4)
Fixed a bug that affected visualization in case of visual tables with holes (i.e. tables with fields for which cells are defined for some but not all rows). Guaranteed the compatibility with TIBCO General Interface on all browsers. Added a lookup for the OpenAjax hub services; if found, the "Lightstreamer" prefix is registered. 4.1 build 1279
(Compatible with Server since 3.3.4)
Improved the mechanism of recovery after unexpected disconnections. Improved the mechanism of recovery of subscription requests that don't reach the Server. Redundant requests (which may cause error notifies on the Server log) are minimized. 4.1 build 1273
(Compatible with Server since 3.3.4)
Improved the efficiency of the DOM manipulation. Found an issue about using the full hostname as the domain name in Internet
Explorer. The issue was never observed before and might have been introduced
by recent upgrades (possibly on the browser side). 4.1 build 1272
(Compatible with Server since 3.3.4)
Fixed a bug that affected push cells that were defined with nested HTML markup, rather than just text, as their initial content. For such cells, the initial content were not correctly preserved at startup. Now, if HTML push is enabled for the related table, the initial content is fully preserved; otherwise, using nested HTML as the initial cell content is no longer supported. 4.1 build 1266
(Compatible with Server since 3.3.4)
Fixed a bug in the cell fading implementation that might, in case of big pages, cause a 100% CPU usage if cell fading were enabled. 4.1 build 1265
(Compatible with Server since 3.3.4)
Addressed an issue with memory allocation in Firefox. A pushing page,
continuously changing the cell contents on the screen through a VisualTable
subinstance, could cause Firefox to allocate a growing amount of memory. 4.1 build 1264
(Compatible with Server since 3.3.4)
Fixed a bug on the getTable method of the PushPage class, which might, in some cases, raise a javascript error. 4.1 build 1261
(Compatible with Server since 3.3.4)
Added the "onStart" event handler on all Table objects, in order to
notify that a table has been successfully subscribed to through the Server. Addressed an issue with domain setting in Firefox. Setting the domain as being the same as the hostname is now possible. This technique can be used when Lightstreamer Server and the Web Server are on different ports of the same machine. Addressed a compatibility issue with Opera browser, gaining a slight performance improvement. 4.1 build 1258
(Compatible with Server since 3.3.4)
Fixed a bug that might cause very long subscription requests to be refused. Fixed a bug on the management of subscription problems that might, in case of slow connections, cause table subscriptions to be performed twice, with the second subscription replacing the first one. 4.1 build 1257
(Compatible with Server since 3.3.4)
Removed trailing compatibility conflicts with some javascript frameworks. Fixed a bug that might prevent the correct recovery of a ChartTable in case of stream connection recovery. 4.1 build 1255
(Compatible with Server since 3.3.4)
Introduction of Server 3.4 - Web Client 4.1 release. |
SDK for Flash Clients |
1.1 build 43.165.15
(Compatible with HTML Client SDK version 5.0.1 build 1446.15)
(Compatible with code developed with the previous version)
Released on 10 Jan 2013
Ported to the current HTML Client Library build. 1.1 build 43.165.13
(Compatible with HTML Client SDK version 5.0.1 build 1446.13)
(Compatible with code developed with the previous version)
Released on 9 Aug 2012
Ported to the current HTML Client Library build. 1.1 build 43.165.9
(Compatible with HTML Client SDK version 5.0 build 1446.9)
(Compatible with code developed with the previous version)
Released on 6 Apr 2012
Ported to the current HTML Client Library build. Rebuilt the included StockList demo; the demo binaries have reduced significantly. 1.1 build 40.165.6
(Compatible with HTML Client SDK version 5.0 build 1446.6)
(Compatible with code developed with the previous version)
Released on 6 Dec 2011
Ported to the current HTML Client Library build. 1.1 build 40.165.3
(Compatible with HTML Client SDK version 5.0 build 1446.3)
(Compatible with code developed with the previous version)
Released on 8 Jul 2011
Ported to the current HTML Client Library build. 1.1 build 40.165
(Compatible with HTML Client SDK version 5.0 build 1446)
(Compatible with code developed with the previous version)
Released on 7 Jun 2011
Introduced IE9 support. Ported to the current HTML Client Library build. 1.1 build 38.131
(Compatible with HTML Client SDK version 5.0 b1 build 1413)
(Compatible with code developed with the previous version)
Made available as a prerelease on 4 Feb 2011
Renamed the SDK folder under DOCS-SDKs, from sdk_client_flash_flex(js_bridge) to sdk_client_flash. Ported to the current HTML Client Library build. 1.1 build 36.115.4
(Compatible with Web Client SDK version 4.4.1 build 1396.4)
Released on 14 Apr 2010
Ported to the current Web Client Library build. 1.1 build 36.115
(Compatible with Web Client SDK version 4.4 build 1396)
(Compatible with code developed with the previous version)
Released on 16 Feb 2010
Fixed a bug in the FlashUpdateItemInfo class, which prevented the getNewValue, getOldValue and isValueChanged methods from working if a field name had been supplied instead of a field number. Revised the code of the included demos. Revised the deployment of the API documentation; see the "doc" directory. Ported to the current Web Client Library build. 1.1 build 31.74.3
(Compatible with Web Client SDK version 4.3.1 build 1355.3)
Released on 24 Feb 2009
Ported to the current Web Client Library build. 1.1 build 31.74
(Compatible with Web Client SDK version 4.3.1 build 1355)
Released on 28 Jan 2009
Improved the error detection. Ported to the current Web Client Library build. 1.1 build 27.65
(Compatible with Web Client SDK version 4.3 build 1346)
Released on 23 Sep 2008
Extended the FlashTable interface in order to take advantage of the support for multiple Data Adapters on the same session, introduced in Lightstreamer Server with version 3.5. Introduced the support for item and field name arrays as an alternative to
groups and schema ids, already available in other client SDKs. The FlashTable
constructor has been extended and so have been the FlashUpdateItemInfo
methods and the FlashTable event handlers. See the JSDocs for details. Fixed a bug that might cause a javascript exception to be issued upon a change of status invoked by any page, after a page containing a FlashBridge was closed. Fixed a compatibility issue with Internet Explorer 7, which may prevent the "onStatusChange" event from being received by a non-master Push-page. Removed a compatibility issue with Safari browser, which might prevent the data from reaching the flash object. Ported the included examples to the new preconfigured Adapters deployment. 1.0 build 18.48.12
(Compatible with Web Client SDK version 4.2.3 build 1329.12)
Released on 6 Mar 2008
Ported to the current Web Client Library build. 1.0 build 18.48.9
(Compatible with Web Client SDK version 4.2.2 build 1329.9)
Released on 11 Feb 2008
Ported to the current Web Client Library build. 1.0 build 18.48.7
(Compatible with Web Client SDK version 4.2.2 build 1329.7)
Released on 4 Jan 2008
Ported to the current Web Client Library build. 1.0 build 18.48.4
(Compatible with Web Client SDK version 4.2.2 build 1329.4)
Released on 22 Nov 2007
Ported to the current Web Client Library build. 1.0 build 18.48.1
(Compatible with Web Client SDK version 4.2.2 build 1329.1)
Released on 15 Nov 2007
Changed the format of the included JsBuild.number and AsBuild.number files. Ported to the current Web Client Library build. 1.0 build 18.48
(Compatible with Web Client SDK version 4.2.1 build 1329)
Ported to the current Web Client Library build. 1.0 build 18.47
(Compatible with Web Client SDK version 4.2.1 build 1328)
Fixed a bug that prevented the creation of a Flash bridge dynamically (i.e. after the page had been loaded). Added a check for the case in which the callbacks installed on the flash object cannot be accessed. This case now stops any operation by the flash object. Removed a compatibility issue with Opera browser, which prevented the data to reach the flash object. Ported to the current Web Client Library build. 1.0 build 18.36
(Compatible with Web Client SDK version 4.2 build 1317)
Ported to the current Web Client Library build. 1.0 build 17.32
(Compatible with Web Client SDK version 4.2 build 1313)
Ported to the current Web Client Library build. 1.0 build 17.31
(Compatible with Web Client SDK version 4.2 build 1312)
Ported to the current Web Client Library build. 1.0 build 15.30
(Compatible with Web Client SDK version 4.2 build 1311)
Ported to the current Web Client Library build. 1.0 build 15.28
(Compatible with Web Client SDK version 4.2 build 1309)
Ported to the current Web Client Library build. 1.0 build 15.26
(Compatible with Web Client SDK version 4.2 build 1307)
Ported to the current Web Client Library build. 1.0 build 14.21
(Compatible with Web Client SDK version 4.2 build 1302)
Ported to the current Web Client Library build. 1.0 build 12.19
(Compatible with Web Client SDK version 4.1.1 build 1300)
Ported to the current Web Client Library build. 1.0 build 11.9
(Compatible with Web Client SDK version 4.1 build 1290)
Included in Lightstreamer distribution. |
SDK for Flex Clients |
2.1 build 93
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
Released on 10 Jan 2013
Fixed a bug in the management of non-ascii and control characters in field values; for particular values, the bug could also cause nearby characters to be affected. 2.1 build 90
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
Released on 6 Apr 2012
Improved the robustness in case of connection problems. 2.1 build 88
(Compatible with Server since 4.0)
(May not be compatible with code developed with the previous version;
see compatibility notes below)
Released on 7 Jun 2011
Fixed a bug that may generate unexpected DataErrorEvent events from being thrown during very high frequency push of AMF objects. Note that the bug usually occurs if the pushed AMF objects are at least a few KB big. Changed the default for the timeoutForReconnect property of the ConnectionPolicy class from 15000 to 3000 ms. Removed deprecated method and classes; Improved the notification of closing sessions to the Server, so that unused sessions are discarded as soon as possible. 2.1 build 83
(Compatible with Server since 4.0 a4)
(Compatible with code developed with the previous version)
Made available as a prerelease on 4 Feb 2011
Renamed the SDK folder under DOCS-SDKs, from sdk_client_flash_flex(native_as) to sdk_client_flex. Introduced full support for notifications of the processing outcome of
messages sent through the "sendMessage" function. Fixed a bug related to single requests that are longer than the <request_limit> setting on the server (such requests are refused). The requests were continuosly resent to the server. Fixed a bug on VisualTables configured as MultiMetapush. After a disconnection and a subsequent reconnection, the table might have contained some rows pertaining to its old life. Fixed a bug on VisualTables configured as Metapush. After receiving a DELETE command, the table might have contained spurious entries. Removed the demo examples based on Flex 3 SDK. 2.0.1 build 76
(Compatible with Server since 3.6)
(May not be compatible with code developed with the previous version;
see compatibility notes below)
Released on 14 Apr 2010
Ensured the compatibility with Flex 4 SDK. The library can now be used to
build applications with both Flex 3 and Flex 4 SDK. Fixed a bug introduced in version 1.2, by which any sendMessage call would have caused the whole library to stop working correctly if Server 3.6 build 1463 had been in use. Fixed the documentation about error notifications related with sendMessage. Fixed a bug introduced in version 1.2 which caused, upon the very first call to sendMessage, a 1 second delay before the message processing on the Server. Fixed the documentation of Table and VisualTable: added a reference to SubscriptionEvent. Introduced new versions of the included StockList demo, for both Flash and AIR
runtime, written and compiled with Flex 4 SDK. Added a tutorial to demonstrate the delivery of data in AMF format, possible since build 73. 2.0 build 73
(Compatible with Server since 3.6)
(Compatible with code developed with the previous version)
Released on 16 Feb 2010
Introduced the support for delivery of field values encoded in AMF format. Introduced properties instead of getters/setters for the attributes of the
bean classes ConnectionInfo and ConnectionPolicy. Drastically reduced the size of the library swc file. System libraries are
now listed in the <external-library-path> and no longer included. Added the connectionTimeout setting in ConnectionPolicy to fine control the
Stream-sense behavior. See the API docs for details. Extended the StatusChangeEvent object to report details of the current
session. See sessionServerName and sessionServerAddress in the docs. Fixed a bug, introduced in version 1.2, that might cause a very long burst of subscription requests to be refused by the Server with a "request too long" message. Extended the internal logging to use the Flex logging support. The internal
logging interface is still available. See the Logger class ASDocs for details. Revised the deployment of the API documentation; see the "doc" directory. 1.2 build 55
(Compatible with Server since 3.5)
(May not be compatible with code developed with the previous version;
see compatibility notes below)
Recompiled the library with Flex SDK 3. This breaks the compatibility with
Flex SDK 2. Fixed a bug that caused any polling session to be interrupted and replaced when no updates were available for more than the configured retryTimeout (the default is 5 seconds), unless the idleTimeout had been configured with a lower value. Calling setBufferedStreamingHandled(true) could delay the bug for the first two minutes of session life. Improved the internal heuristic technique to force connection closing for unresponsive connections, despite Flex runtime limitations. Revised the deployment of the included demo. 1.2 build 54
(Compatible with Server since 3.5)
Released on 24 Feb 2009
Fixed a bug that might cause spurious transitions to STALLED state. In some cases, spurious reconnections could even occur. Fixed a bug that might cause a session open attempt to resort to polling mode or to fail in case the Metadata Adapter enforces a limit on the number of open sessions. The bug was introduced with the latest version of the library. Removed internal classes from the "manifest" file. Suppressed logging of initial preamble used to escape initial buffering of the response. 1.2 build 47
(Compatible with Server since 3.5)
Released on 28 Jan 2009
Addressed a compatibility issue for Opera and Safari browsers; these browsers perform an initial buffering of the response, which could prevent streaming connections from working. This requires Server build 1428.4 or greater in order to be effective. 1.2 build 44
(Compatible with Server since 3.5)
Fixed a bug that might cause a session open to fail when switching between streaming and polling (also because of the Stream-sense algorithm) in case the Metadata Adapter enforces a limit on the number of open sessions. Extended the StatusChangeEvent object to report LS session ID assigned to a streaming or polling session. 1.2 build 42
(Compatible with Server since 3.5)
Fixed a bug on the management of null values coming from the Server when they are relative to the first update for an item. The bug affected NonVisualTables and might cause the whole first update to be discarded. Introduced a recovery mechanism to retry unsuccessful connections for sending
messages to the Server. Deprecated ControlErrorEvent in favour of new specific events, namely:
SubscriptionErrorEvent for subscription requests, directly associated to the
involved Table object;
SendMessageErrorEvent, available (though not used yet) for send message
requests, which also reports message details. Introduced the ConnectionDropEvent event to notify cases in which a streaming
connection is forcibly closed by the Server (through JMX, for instance). Revised and documented the details of status changes. Improved the checks for issues during the processing of the various types
of requests. Added proper log messages and log categories. Fixed a bug which prevented a reconnection attempt performed inside the ServerErrorEvent handler from working. Introduced a special case (code 100) in ServerErrorEvent to notify connection refusal by security error. Added a configurable history limit to the supplied DataGridAppender for client side log. Clarified the documentation of the NonVisualItemUpdateEvent methods. 1.1 build 38
(Compatible with Server since 3.5)
Fixed a bug on the management of special characters in the field values,
which might cause wrong update processing or suppression of updates
in case field values included the '|' character. Fixed an issue with delays in update event management. Delays of up to 50 ms are still adopted, to improve efficiency, but longer delays are only possible under heavy load conditions. Fixed a bug which only affected an explicit "setKeyPolicy(ITEM_IS_KEY)" call on a visual table. Introduced the "DataErrorEvent" event type, to notify unexpected update event processing problems. Revised the documentation. Fixed some incorrect links and added forgotten
notes in NonVisualItemUpdateEvent pertaining to changes in build 33. 1.1 build 33
(Compatible with Server since 3.5)
Released on 23 Sep 2008
Extended the Table interface in order to take advantage of the support for multiple Data Adapters on the same session, introduced in Lightstreamer Server with version 3.5. In case a nonexistent Data Adapter is specified, a ControlErrorEvent with the new error code 17 will be issued. Introduced the MultiMetapush tables. See the new "setMultiMetapush" method
for the "VisualTable" class and the new "setCommandLogic" method for the
"NonVisualTable" class in the ASDocs for details. An extension to the field
naming conventions is needed for fields from a MultiMetapush tables;
this applies to many methods where field names/indexes are involved. Introduced the getOldFieldValue method in the NonVisualItemUpdateEvent class. Added a retry mechanism to handle subscription request problems. Improved the recovery from connection problems. See the new setRetryTimeout method in the ConnectionPolicy class. Disabled the recovery of streaming connections that are buffered in the
initial part when the data flow is finally received. Fixed a bug on the "NonVisualTable" management, which caused the "getItem" method of all "NonVisualItemUpdateEvent" received to return an item index, even when an item name was available. Fixed a bug on URLEncoding of client requests. Requests with non-alphanumeric names (item names or user names, for instance) might be handled in a wrong way. Fixed a bug that caused the ControlConnectionErrorEvent not to be issued correctly. Introduced a logging engine that can be used to print internal client library log. See the com.lightstreamer.as_client.logger.Logger class. Ported the included examples to the new preconfigured Adapters deployment. 1.0.1 build 24.11
(Compatible with Server since 3.4.4)
Released on 6 Mar 2008
Fixed a bug which might prevent the connection recovery after a Server restart from working. However, the bug only manifested itself on "debug players". Ensured that any operation on the connection state (e.g. disconnections and new connections) can be performed while handling any event, without conflicts. 1.0.1 build 24.9
(Compatible with Server since 3.4.4)
Released on 11 Feb 2008
Fixed a bug on the setKeyPolicy method of the VisualTable class, which only affected the case in which a number was supplied as either argument. Fixed a bug that caused "\u" patterns in the field values to be automatically expanded as "\uxxxx" unicode sequences. They should rather be preserved and made visible to custom code. Fixed a bug that might cause any connection retry to fail after the first attempt to connect to the Server had failed. 1.0.1 build 24.4
(Compatible with Server since 3.4.4)
Released on 4 Jan 2008
Fixed a bug which prevented the notifications for lost events from being correctly forwarded to client code. Fixed a bug which might cause some update events to be lost in case of a burst of updates from the Server. Fixed a bug which prevented error responses upon stream or control requests
from being correctly notified to client code. 1.0 build 24
(Compatible with Server since 3.4.4)
Released on 19 Oct 2007
Improved the included demo, in order to allow Server host, port and protocol to be configured without the need for a recompilation. 1.0 build 23
(Compatible with Server since 3.4.4)
Included in Lightstreamer distribution. |
SDK for Silverlight Clients |
1.4.4527.28381
(Compatible with Server since 4.1)
(Compatible with code developed with the previous version)
Released on 9 Aug 2012
Introduced the ChangeSubscription method, which allows for modification of the maximum frequency settings for currently subscribed items, with no need for a resubscription; this also introduces a new error code in PushServerException. Fixed the handling of mocked calls to UnsubscribeTable when a batch is in place. Fixed a bug which prevented the ForceUnsubscribeTable method from working. This method was provided only as a help for particular cases of error recovery. 1.3.4517.22613
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
Fixed a memory leak that could have caused a zombie thread to be left after an unsuccessful attempt of connecting to the Server; if the Server had been unreachable for long time for any reason and a loop of attempts had been performed, the leak could have become significant. 1.3.4279.18255
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
Released on 6 Apr 2012
Fixed a potential bug that may have occurred after a SendMessage call, causing an ObjectDisposedException to be internally issued. 1.3.4168.21501
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
Released on 7 Jun 2011
Renamed the SDK folder under DOCS-SDKs, from sdk_client_silverlight_(and_wp7) to sdk_client_silverlight. Windows Phone has now its own SDK (sdk_client_windows_phone). Moved Windows Phone dlls on their own SDK. Changed the default for the ProbeTimeoutMillis property of the ConnectionInfo class from 15000 to 3000 ms. Improved the notification of closing sessions to the Server, so that unused sessions are discarded as soon as possible. 1.3.4049.30377
(Compatible with Server since 4.0 a4)
(May not be compatible with code developed with the
previous version; see compatibility notes below)
Made available as a prerelease on 4 Feb 2011
Renamed the SDK folder under DOCS-SDKs, from sdk_client_silverlight to sdk_client_silverlight_(and_wp7). Discontinued the support for Silverlight 2. Introduced new dlls to be used to develop Silverlight application for the Windows Phone 7 operating system. Both StrongName and simple versions are available. Introduced a new "SendMessage" overload supporting:
The new overload also supports an optional timeout to override the server side
<missing_message_timeout_millis> setting. Fixed a bug that may lead the OpenConnection method, in case "Stream-sense" is enabled (by default true), to exit before the library is ready to accept "SubscribeTable" calls. In that case a call to SubscribeTable will throw an unexpected exception. Fixed a bug that prevented a closeConnection/openConnection call to be executed until a previous call to openConnection was returned. Forced the use of the default "BrowserHttp" HTTP request creator. In fact,
the alternative "ClientHttp" currently does not support streaming. This caused
applications that change the default as "ClientHttp" to only work in polling. Removed ExtendedTableListener, SimpleTableListener and FastItemListener classes and LSClient.subscribeItems
and LSClient.subscribeTable overloads using those classes (all of them were previously deprecated) Changed the type of the "contentLength" property of the ConnectionInfo
class form int to long. Removed deprecated properties from ConnectionConstraints, ConnectionInfo, ExtendedTableInfo,
SimpleTableInfo and UpdateInfo public classes. Made the library CLS Compliant. Fixed a few typos in the inline documentation. Introduced new interfaces ILogger and ILoggerProvider that, together with the new static method setLoggerProvider on LSClient, can be used to receive the library logging. Introduced automatic reconnection and connection status indicator to the Stock-List demo provided as example. 1.2.3624.21130
(Compatible with Server since 3.5.1)
(Compatible with code developed with the previous version)
Released on 16 Feb 2010
Introduced properties in place of fields in the ConnectionInfo
and ConnectionConstraints bean classes; using the fields is now deprecated. Changed the API documentation format. Now HTML documentation is provided. Introduced a common base class for the various Exception classes defined. 1.1.3537.25900
(Compatible with Server since 3.5.1)
(May not be compatible with code developed with the previous version;
see compatibility notes below)
Officially included in Lightstreamer distribution. Ensured the compatibility for inclusion in Silverlight 3 projects, though the library is still compiled with Silverlight 2 SDK. Allowed for configuration of the Stream-sense feature; see the new enableStreamSense and streamingTimeoutMillis properties in the ConnectionInfo class. Extended the OnSessionStarted method on the IConnectionListener to notify
whether streaming or polling mode is in use; when the Stream-sense has been
exploited, this may no longer correspond with the requested mode. 1.0.3524.20170
(Compatible with Server since 3.5.1)
(May not be compatible with code developed with the previous version;
see compatibility notes below)
Extended the PushUserException in order to report the error code and message
supplied by the Server upon refusal of a connection or subscription request. Added OnEnd in IConnectionListener to provide support for the Server
notification for sessions forcibly closed on the Server side. Fixed a bug that might cause a batch not to be closed after an obsolete unsubscription request. Fixed SetRange in ExtendedTableInfo, which should have been ignored; it should not be used, though. Used a dedicated thread for all the calls to the IConnectionListener. Clarified the documentation for what concerns the thread model. Added support for mocking the library for custom code testing purpose. Added getter methods for the various settings in SimpleTableInfo and ExtendedTableInfo. Fixed a typo in the example README.TXT, about the Server configuration flag to be set. 1.0.3391.21925 b1
(Compatible with Server since 3.5.1)
Made available for beta testing. |
SDK for iOS Clients |
1.1.1 build 47
(Compatible with Server since 4.1)
(Compatible with code developed with the previous version)
Released on 9 Aug 2012
Introduced the "changeTableSubscription" method, which allows for modification of the maximum frequency settings for currently subscribed items, with no need for a resubscription. Fixed the wrong name "infoWithPushServerURL" in the documentation page on how to open a connection. 1.1 build 43
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
Released on 6 Apr 2012
Revised and improved the handling of cases of poor connectivity and of switching
between networks. Fixed a bug that could have caused high CPU usage under particular conditions. 1.1 build 39
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
Fixed a bug on the Stream-sense algorithm, which was not working properly. Fixed a bug that could have caused session rebinds to timeout improperly. Fixed a bug that could have caused a crash in case of concurrent unsubscription and update of the same item. Fixed a bug that could have caused a crash in case of multiple reconnections in a short period of time. 1.0.6 build 32
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
Fixed a bug that could have caused http to be used for control connections also when https was needed, when <control_link_address> / <control_link_machine_name> was specified on the Server configuration. 1.0.5 build 31
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
Fixed bugs that could have caused a deadlock when repeatedly calling closeConnection and openConnection under poor connectivity. Fixed minor documentation errors on LSTableDelegate and LSConnectionInfo. 1.0.1 build 27
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
Released on 7 Jun 2011
Introduced auto-reconnection and auto-resubscription mechanisms. Introduced control link handling. Introduced server sent keepalive time value handling. Introduced Logging facilities (see the LSLog class). Fixed a bug that may lead the application crash in case the connection is lost while the application is in background. Fixed a bug on the handling of the STALLED status; some false positive were possible. Changed the default for the probeTimeoutSecs property of the LSConnectionInfo class from 15 to 3 ms. 1.0 a1 build 14
(Compatible with Server since 4.0 a4)
Made available as a prerelease on 4 Feb 2011
Included in Lightstreamer distribution. |
SDK for Android Clients |
1.0.2 build 18
(Compatible with Server since 4.1)
(Compatible with code developed with the previous version)
Released on 9 Aug 2012
Introduced the changeSubscription method, which allows for modification of the maximum frequency settings for currently subscribed items, with no need for a resubscription; this also introduces a new error code in PushServerException. Fixed the handling of mocked calls to unsubscribeTable when a batch is in place. Fixed a bug which prevented the forceUnsubscribeTable method from working. This method was provided only as a help for particular cases of error recovery. 1.0.1 build 17
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
Released on 6 Apr 2012
Introduced the new ExtendedConnectionListener interface that extends the still available ConnectionListener. When the new interface is implemented, the new onSessionStarted overload is invoked carrying extra information about the current server host. , which, however, is not useful for the Moderato case. 1.0 build 12
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
Fixed a compatibility issue for Android version 2.2 and earlier that was introduced in build 10.
The issue would give rise to an unresolved method exception upon a connection attempt, but,
in turn, it was only triggered by an unchecked exception thrown by the underlying I/O library. 1.0 build 11
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
Released on 6 Dec 2011
Improved the checks on unexpected issues during I/O operations. 1.0 build 10
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
Improved the robustness against unexpected issues during I/O operations. Suppressed warnings about BufferedReader usage in the JVM log. 1.0 build 8
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
Released on 7 Jun 2011
Changed the default for the probeTimeoutMillis property of the ConnectionInfo class from 15000 to 3000 ms. Improved the notification of closing sessions to the Server, so that unused sessions are discarded as soon as possible. 1.0 build 6
(Compatible with Server since 4.0 a4)
Made available as a prerelease on 4 Feb 2011
Included in Lightstreamer distribution. |
SDK for BlackBerry Clients |
1.0.1 build 6.3
(Compatible with Server since 4.1)
(Compatible with code developed with the previous version)
Released on 9 Aug 2012
Introduced the setMaxFrequency and setFrequencyUnlimited methods, which allow
for modification of the maximum frequency settings for currently subscribed items;
unless in single connection mode, the changes will take place immediately,
with no need for a resubscription. 1.0 build 6.2
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
Released on 6 Apr 2012
Changed the default for the setIdleTimeout method of the ConnectionPolicy class from 30000 to 19000 ms. Fixed a bug that sometimes caused HandyTableListener instances to receive updates carrying the wrong old values. 1.0 build 5
(Compatible with Server since 4.0)
Released on 7 Jun 2011
Included in Lightstreamer distribution. Following changelog entries for this SDK refer to the version released as a preview inside the Java ME SDK version 3.1 build 135. Changed the default for the setTimeoutForReconnect method of the ConnectionPolicy class from 15000 to 3000 ms. Changed the default for the setContentLength method of the ConnectionInfo class from 1000000 (1 MB) to 50000000 (50 MB). |
SDK for Windows Phone Clients |
1.1.4527.28794
(Compatible with Server since 4.1)
(Compatible with code developed with the previous version)
Released on 9 Aug 2012
Introduced the ChangeSubscription method, which allows for modification of the maximum frequency settings for currently subscribed items, with no need for a resubscription; this also introduces a new error code in PushServerException. Fixed the handling of mocked calls to UnsubscribeTable when a batch is in place. Fixed a bug which prevented the ForceUnsubscribeTable method from working. This method was provided only as a help for particular cases of error recovery. 1.0.4517.18303
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
Fixed a memory leak that could have caused a zombie thread to be left after an unsuccessful attempt of connecting to the Server; if the Server had been unreachable for long time for any reason and a loop of attempts had been performed, the leak could have become significant. 1.0.4279.18303
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
Released on 6 Apr 2012
Fixed a potential bug that may have occurred after a SendMessage call, causing an ObjectDisposedException to be internally issued. 1.0.4168.21541
(Compatible with Server since 4.0)
Released on 7 Jun 2011
Included in Lightstreamer distribution. Following changelog entries for this SDK refer to the version released as a preview inside the Silverlight SDK version 1.3 build 4049.30377. Fixed a memory leak. The leak was generated by a side effect on the use of Exceptions made by the library. Changed the default for the ProbeTimeoutMillis property of the ConnectionInfo class from 15000 to 3000 ms. Improved the notification of closing sessions to the Server, so that unused sessions are discarded as soon as possible. |
SDK for Java ME Clients |
3.1.1 build 146.4
(Compatible with Server since 4.1)
(Compatible with code developed with the previous version)
Released on 9 Aug 2012
Introduced the setMaxFrequency and setFrequencyUnlimited methods, which allow
for modification of the maximum frequency settings for currently subscribed items;
unless in single connection mode, the changes will take place immediately,
with no need for a resubscription. 3.1 build 146.2
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
Released on 6 Apr 2012
Changed the default for the setIdleTimeout method of the ConnectionPolicy class from 30000 to 19000 ms. Fixed a bug that sometimes caused HandyTableListener instances to receive updates carrying the wrong old values. 3.1 build 145
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
Released on 7 Jun 2011
Renamed the SDK folder under DOCS-SDKs, from sdk_client_blackberry_(and_java_me) to sdk_client_java_me. The BlackBerry version of the library has now its own SDK. Changed the default for the setTimeoutForReconnect method of the ConnectionPolicy class from 15000 to 3000 ms. 3.1 build 135
(Compatible with Server since 4.0 a4)
(May not be compatible with code developed with the previous version;
see compatibility notes below)
Made available as a prerelease on 4 Feb 2011
Renamed the SDK folder under DOCS-SDKs, from sdk_client_java_me to sdk_client_blackberry_(and_java_me). Introduced a new "sendMessage" method supporting:
The new overload also supports an optional timeout to override the server side
<missing_message_timeout_millis> setting. Removed the old LSClient.sendMessage method and the associated
ConnectionListener.onSendMessageError interface method. Dropped MIDP 1.0 support and removed the LSClient.isMidp2 property COMPATIBILITY NOTE: existing applications using this property must be rewritten to not check it. Introduced a new useSocketConnection method to enable/disable usage of SocketConnection instances. Introduced new getters isUsingSocketConnection, isUsingReusableItemUpdates and isUsingSingleConnection. Introduced the new ConnectionProvider interface and related getter/setter (setConnectionProvider/getConnectionProvider). This new approach should simplify development for BlackBerry devices. Changed the default pollingInterval value from 500 to 0 Added an example of a midlet that demonstrates how to connect to Lightstreamer from a BlackBerry device. Added missing documentation of the NumberedLogger class 3.0 build 121
(Compatible with Server since 3.5)
(May not be compatible with code developed with the previous version;
see compatibility notes below)
Released on 16 Feb 2010
Extended setRequestedMaxFrequency in SimpleTableInfo, so that an argument
of type double can be supplied. Extended onServerError in the ConnectionListener interface in order to
fully report the error details. Added onConnectionEnd in the ConnectionListener interface,
to provide support for the Server notification for sessions forcibly closed
on the Server side. No automatic reconnection attempt is performed. Discontinued the automatic reconnection in case of a connection attempt
failure because of a Server explicit refusal (the case is notified by a
call to onServerError). Fixed a bug that caused a request for an unlimited buffer size to be ignored for items in MERGE mode. Fixed a mistake in the documentation of the "throws" clauses of the
"subscribeTable" method. Clarified the documentation for what concerns the thread model. Added support for mocking the library for custom code testing purpose. Added public constructors for all the other objects that are created by library code and supplied to custom code. Added getter methods for the various settings in ConnectionInfo (but for the connection password), ConnectionPolicy, SimpleTableInfo and ExtendedTableInfo. Revised and clarified the deployment structure of the example demo. Revised the deployment of the API documentation; see the "doc" directory. 2.1 build 110
(Compatible with Server since 3.5)
Released on 23 Sep 2008
Extended the SimpleTableInfo interface in order to take advantage of the support for multiple Data Adapters on the same session, introduced in Lightstreamer Server with version 3.5. Introduced the new HandyTableListener and added subscription methods
based on it. The new listener gets rid of the special UNCHANGED values
and supports COMMAND logic. Revised the connection error management. Fixed an error in the javadocs; the closeConnectionInternal method
on LSClient is not public. Fixed the deployment of the demo example. The provided jad file was supposed to reference to the provided jar file rather than the online demo jar, available in Lightstreamer website. Ported the included examples to the new preconfigured Adapters deployment. 2.0.2 build 101.10
(Compatible with Server since 3.3.1)
Released on 6 Mar 2008
Ensured that any operation on the connection state (e.g. disconnections and new connections) can be performed while handling any event, without conflicts. 2.0.2 build 101.8
(Compatible with Server since 3.3.1)
Released on 11 Feb 2008
Added the setRetryTimeout method on the ConnectionPolicy class. This helps avoid connection attempt loops. Allowed the modification of the "isMidp2" flag on the LSClient class, but just for testing purpose. Improved the performances of the library. Fixed a bug which caused the setKeepAliveInterval method of the ConnectionPolicy class to be ineffective. 2.0.1 build 101.3
(Compatible with Server since 3.3.1)
Released on 4 Jan 2008
Revised the reconnection attempt loop after an unsuccessful connection
attempt. A protection timeout after each connection failure has been added. 2.0.1 build 101.2
(Compatible with Server since 3.3.1)
Fixed a bug which prevented the notifications for lost events from being correctly forwarded to client code. Fixed a bug which prevented error responses upon stream or control requests
from being correctly notified to client code. Changed the format of the included build.number file. 2.0 build 101
(Compatible with Server since 3.3.1)
Released on 3 Sep 2007
2.0 build 100
(Compatible with Server since 3.3.1)
Changed the default for the suggested response Content-Length for the
streaming connections. Now, the size is no longer left as the server
default, but is set to 1000000. Added a check to transparently split a batch of control requests
if it would exceed the limit for the length of a request HTTP body
configured for the Server. Changed the package name of the supplied example source code. 2.0 build 88
(Compatible with Server since 3.3.1)
Included in Lightstreamer distribution. |
SDK for Java SE Clients |
2.5.2 build 1107
(Compatible with Server since 4.1)
(Compatible with code developed with the previous version)
Released on 9 Aug 2012
Introduced the changeSubscription method (LSClient interface), which allows for
modification of the maximum frequency settings for currently subscribed items,
with no need for a resubscription; this also introduces a new error code in
PushServerException. Fixed the handling of mocked calls to unsubscribeTable when a batch is in place. Fixed a bug which prevented the forceUnsubscribeTable method from working. This method was provided only as a help for particular cases of error recovery. 2.5.1 build 1105
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
Released on 6 Apr 2012
Introduced the new ExtendedConnectionListener interface that extends the still available ConnectionListener. When the new interface is implemented, the new onSessionStarted overload is invoked carrying extra information about the current server host. , which, however, is not useful for the Moderato case. Improved the robustness against unexpected issues during I/O operations. 2.5 build 1103
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
Released on 7 Jun 2011
Changed the default for the probeTimeoutMillis property of the ConnectionInfo class from 15000 to 3000 ms. Improved the notification of closing sessions to the Server, so that unused sessions are discarded as soon as possible. 2.5 build 1101
(Compatible with Server since 4.0 a4)
(May not be compatible with code developed with the previous version; see the compatibility notes below)
Made available as a prerelease on 4 Feb 2011
Fixed a harmless bug, introduced in build 1074, that could cause an uncaught exception to be logged upon a failed connection attempt. Added a fully functional demo based on the Swing framework provided by the JDK. Introduced a new "sendMessage" overload (lsclient interface) which supports:
The new overload also supports an optional timeout to override the server side
<missing_message_timeout_millis> setting. Introduced a new "enableControlLinkHandling" property to the ConnectionInfo class that can be used to disable the use of the server-sent <control_link_address> / <control_link_machine_name> setting. This allows for using internal addresses to access the Server. Fixed a bug that may lead the openConnection method, in case "Stream-sense" is enabled (by default true), to exit before the library is ready to accept "subscribeTable" calls. In that case, a call to subscribeTable will throw an unexpected exception. Fixed a bug that prevented a closeConnection/openConnection call to be executed until a previous call to openConnection was returned. Removed ExtendedTableListener, SimpleTableListener and FastItemListener classes and LSClient.subscribeItems
and LSClient.subscribeTable overloads using those classes (all of them were previously deprecated) Changed the type of the "contentLength" property of the ConnectionInfo
class form int to long. 2.4 build 1074
(Compatible with Server since 3.5)
(May not be compatible with code developed with the previous version;
see compatibility notes below)
Released on 16 Feb 2010
Dropped the support for java 1.4. Java 1.5 or later is now required. Introduced the Stream-sense feature in both interfaces; see the new
enableStreamSense and streamingTimeoutMillis properties in the ConnectionInfo
class. This feature is enabled by default. Extended the onSessionStarted method on the ConnectionListener to notify
whether streaming or polling mode is in use; when the Stream-sense has been
exploited, this may no longer correspond with the requested mode. Removed the "topMaxFrequency" and "slowingFactor" members of
ConnectionConstraints (previously deprecated), used in both interfaces. Extended the PushUserException in order to report the error code and message
supplied by the Server upon refusal of a connection or subscription request. Added onEnd in ConnectionListener ("lsclient" interface) and onClosedConnection
in PushErrorListener ("lsproxy" interface) to provide support for the Server
notification for sessions forcibly closed on the Server side. Serialized the calls to the ConnectionListener, by using a dedicated thread. Fixed a bug that caused a polling session to be interrupted after a few
seconds with no data activity, in case a pollingIdleMillis setting greater
than the reconnectionTimeoutMillis setting were supplied. Fixed a bug that might cause a batch not to be closed after an obsolete unsubscription request ("lsclient" interface). Changed the default setting for reconnectionTimeoutMillis from 30000 to 5000 ms. Clarified the documentation for what concerns the thread model. Added support for mocking the library for custom code testing purpose,
in both interfaces. Added getter methods for the various settings in SimpleTableInfo and ExtendedTableInfo. Revised the deployment of the API documentation; see the "doc" directory. 2.3 build 1063
(Compatible with Server since 3.5)
Released on 24 Feb 2009
Revised the usage and default value of the probeTimeoutMillis and
probeWarningMillis attributes of the ConnectionInfo class (used by both
"lsclient" and "lsproxy" interfaces) in order to conform with the Web
Client Library. 2.3 build 1062
(Compatible with Server since 3.5)
Released on 23 Sep 2008
Extended SimpleTableInfo ("lsclient" interface) and Item ("lsproxy" interface) in order to take advantage of the support for multiple Data Adapters on the same session, introduced in Lightstreamer Server with version 3.5. In case a nonexistent Data Adapter is specified, a PushServerException with the PushServerException.SERVER_REFUSAL error code will be returned upon subscription. Introduced the new HandyTableListener for the "lsclient" interface and added
subscription methods based on it. The new listener gets rid of the special
UNCHANGED values and supports COMMAND logic. Deprecated the "topMaxFrequency" and "slowingFactor" members of ConnectionConstraints, used in both interfaces. Added a missing documentation for setRange, which is ignored for ExtendedTableInfo ("lsclient" interface). Ported the included examples to the new preconfigured Adapters deployment. 2.2.2 build 1054.3
(Compatible with Server since 3.3.1)
Released on 11 Feb 2008
Fixed bugs about the notifications to the ConnectionListener ("lsclient"
interface). Added a check for an empty array passed to unsubscribeTables in "lsclient" interface. This prevents an error issued by the Server. Changed the format of the included build.number file. 2.2.2 build 1054
(Compatible with Server since 3.3.1)
Released on 3 Sep 2007
2.2.2 build 1052
(Compatible with Server since 3.3.1)
Fixed a bug on the bandwidth estimate feature of the "lsproxy" interface. 2.2.2 build 1051
(Compatible with Server since 3.3.1)
Fixed some bugs which prevented the correct working of the library when used by an applet. 2.2.2 build 1050
(Compatible with Server since 3.3.1)
Added a check that makes a trailing "/" in the "pushServerUrl" and "pushServerControlUrl" connection properties be managed. 2.2.2 build 1049
(Compatible with Server since 3.3.1)
Changed the default for the suggested response Content-Length for the streaming connections. Now, the size is no longer left as the server default, but it is set to a very long value (50000000). 2.2.2 build 1044
(Compatible with Server since 3.3.1)
Added a check to transparently split a batch of control requests
if it would exceed the limit for the length of a request HTTP body
configured for the Server. 2.2.2 build 1045
(Compatible with Server since 3.3.1)
Restored the documentation, which, on the previous build, was corrupted. 2.2.2 build 1044
(Compatible with Server since 3.3.1)
Removed an outdated note on the SimpleTableInfo constructor documentation. 2.2.2 build 1038
(Compatible with Server since 3.3.1)
Current version upon introduction of Server 3.4 - Web Client 4.1 release. |
SDK for .NET Clients |
2.1.4527.25568
(Compatible with Server since 4.1)
(Compatible with code developed with the previous version)
Released on 9 Aug 2012
Introduced the ChangeSubscription method, which allows for modification of the
maximum frequency settings for currently subscribed items, with no need for
a resubscription; this also introduces a new error code in PushServerException. Fixed the handling of mocked calls to UnsubscribeTable when a batch is in place. Fixed a bug which prevented the ForceUnsubscribeTable method from working. This method was provided only as a help for particular cases of error recovery. 2.0.4517.22542
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
Fixed a memory leak that could have caused a zombie thread to be left after an unsuccessful attempt of connecting to the Server; if the Server had been unreachable for long time for any reason and a loop of attempts had been performed, the leak could have become significant. 2.0.4279.18196
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
Released on 6 Apr 2012
Fixed a potential bug that may have occurred after a SendMessage call, causing an ObjectDisposedException to be internally issued. 2.0.4168.21411
(Compatible with Server since 4.0)
(Compatible with code developed with the previous version)
(No longer compatible with configuration files for the previous version;
see the compatibility notes below)
Released on 7 Jun 2011
Introduced compatibility with the ".NET Framework Client Profile". Removed log4net dependency from the client library; the new interfaces ILogger and ILoggerProvider, together with the new static
method setLoggerProvider on LSClient, have to be used to receive the library logging. Introduced automatic reconnection and connection status indicator to the Stock-List demo provided as example. Changed the default for the ProbeTimeoutMillis property of the ConnectionInfo class from 15000 to 3000 ms. Improved the notification of closing sessions to the Server, so that unused sessions are discarded as soon as possible. 1.5.4049.30448
(Compatible with Server since 4.0 a4)
(May not be compatible with code developed with the previous version; see the compatibility notes below)
Made available as a prerelease on 4 Feb 2011
Introduced a new "SendMessage" overload supporting:
The new overload also supports an optional timeout to override the server side
<missing_message_timeout_millis> setting. Fixed a bug that may lead the OpenConnection method, in case "Stream-sense" is enabled (by default true), to exit before the library is ready to accept "SubscribeTable" calls. In that case a call to SubscribeTable will throw an unexpected exception. Fixed a bug that prevented a closeConnection/openConnection call to be executed until a previous call to openConnection was returned. Removed ExtendedTableListener, SimpleTableListener and FastItemListener classes and LSClient.subscribeItems
and LSClient.subscribeTable overloads using those classes (all of them were previously deprecated) Changed the type of the "contentLength" property of the ConnectionInfo
class form int to long. Removed deprecated properties from ConnectionConstraints, ConnectionInfo, ExtendedTableInfo,
SimpleTableInfo and UpdateInfo public classes. Enabled cookie handling; cookies are cleared, no matter their expiry date, each time a new session request is sent. Made the library CLS Compliant. 1.4.3624.20922
(Compatible with Server since 3.5)
(Compatible with code developed with the previous version)
Released on 16 Feb 2010
Introduced properties in place of fields in the ConnectionInfo
and ConnectionConstraints bean classes; using the fields is now deprecated. Restored the reuse of HTTP connections, which was suppressed because of a known limitation in .NET 2.0 HTTP implementation, eventually fixed in 2007. Changed the API documentation format. Now HTML documentation is provided. Introduced a common base class for the various Exception classes defined. 1.3.3537.25767
(Compatible with Server since 3.5)
(May not be compatible with code developed with the previous version;
see compatibility notes below)
Introduced the Stream-sense feature; see the new enableStreamSense and
streamingTimeoutMillis properties in the ConnectionInfo class. Extended the OnSessionStarted method on the IConnectionListener to notify
whether streaming or polling mode is in use; when the Stream-sense has been
exploited, this may no longer correspond with the requested mode. 1.2.3524.20331
(Compatible with Server since 3.5)
(May not be compatible with code developed with the previous version;
see compatibility notes below)
Discontinued the support for .NET version 1.1; version 2.0 or greater is now
required. All 1.1 related resources have been removed and the deployment tree
has been simplified. Discontinued the support for the utility classes in the
Lightstreamer.DotNet.Client.Support namespace. Removed the "topMaxFrequency" and "slowingFactor" members of
ConnectionConstraints (previously deprecated). Extended the PushUserException in order to report the error code and message
supplied by the Server upon refusal of a connection or subscription request. Added OnEnd in IConnectionListener to provide support for the Server
notification for sessions forcibly closed on the Server side. Fixed a bug that caused a polling session to be interrupted after a few
seconds with no data activity, in case a pollingIdleMillis setting greater
than the reconnectionTimeoutMillis setting were supplied. Fixed a bug that might cause a batch not to be closed after an obsolete unsubscription request. Changed the default setting for reconnectionTimeoutMillis from 30000 to 5000 ms. Fixed the missing wrapping of a WebException occurring during a connection attempt. Fixed SetRange in ExtendedTableInfo, which should have been ignored; it should not be used, though. Serialized the calls to the IConnectionListener, by using a dedicated thread. Clarified the documentation for what concerns the thread model. Added support for mocking the library for custom code testing purpose. Added getter methods for the various settings in SimpleTableInfo and ExtendedTableInfo. Fixed the obsolete version number stored in the "strong name" library version. 1.1.3323.32539
(Compatible with Server since 3.5)
Released on 24 Feb 2009
Revised the usage and default value of the probeTimeoutMillis and
probeWarningMillis attributes of the ConnectionInfo class, in order to
conform with the Web Client Library. 1.1.3169.20524
(Compatible with Server since 3.5)
Released on 23 Sep 2008
Extended the SimpleTableInfo class in order to take advantage of the support for multiple Data Adapters on the same session, introduced in Lightstreamer Server with version 3.5. In case a nonexistent Data Adapter is specified, a PushServerException with the PushServerException.SERVER_REFUSAL error code will be returned upon subscription. Introduced the new IHandyTableListener and added subscription methods
based on it. The new listener gets rid of the special
UNCHANGED values and supports COMMAND logic. Deprecated the "topMaxFrequency" and "slowingFactor" members of ConnectionConstraints. Fixed the documentation of PushConnException, whose constructors are not
public. Ported the included examples to the new preconfigured Adapters deployment. 1.0.2958.28575
(Compatible with Server since 3.3.1)
Released on 11 Feb 2008
Fixed bugs about the notifications to the ConnectionListener. Added a check for an empty array passed to UnsubscribeTables. This prevents an error issued by the Server. Fixed a bug, which caused the default Adapter name to be "STOCKLISTDEMO" instead of null (which means the Server default). Fixed an issue in the API documentation, which suppressed all notifications about exceptions that can be thrown by API calls. Changed the default connection URL in the included demo. 1.0.2837.23804
(Compatible with Server since 3.3.1)
Released on 9 Oct 2007
1.0.2749.29308
(Compatible with Server since 3.3.1)
Added a check that makes a trailing "/" in the "pushServerUrl" and "pushServerControlUrl" connection properties be managed. 1.0.2747.29135
(Compatible with Server since 3.3.1)
Added a version of the library identified with a "strong name". 1.0.2739.27446
(Compatible with Server since 3.3.1)
Changed the default for the suggested response Content-Length for the streaming connections. Now, the size is no longer left as the server default, but is set to a very long value (50000000). 1.0.2735.20708
(Compatible with Server since 3.3.1)
Fixed a bug which might cause undesired delays while reading the updates from the socket stream. The delays only consisted in an unnecessary wait for the next packet; therefore, such delays were small and could be significant only with a low overall update rate, though still limited by the keepalive rate. 1.0.2721.23222
(Compatible with Server since 3.3.1)
Added a check to transparently split a batch of control requests
if it would exceed the limit for the length of a request HTTP body
configured for the Server. Extended the PushConnException to include the origin exception. 1.0.2692.31072
(Compatible with Server since 3.3.1)
Temporarily disabled the reuse of HTTP connections in the .NET 2.0 library, as a workaround for a known limitation in .NET 2.0 HTTP implementation, which issues a connection error when an underlying attempt to reuse a kept-alive connection fails. 1.0.2657.23049
(Compatible with Server since 3.3.1)
Removed an outdated note on the SimpleTableInfo constructor documentation. 1.0.2547.16940
(Compatible with Server since 3.3.1)
Fixed a bug in the example StockListDemo client. Until now, the client did not consider the host and port command line parameters. 1.0.2453.20102
(Compatible with Server since 3.3.1)
Current version upon introduction of Server 3.4 - Web Client 4.1 release. |
SDK for Generic Clients |
4.1.1 build 1513.1.15
(Compatible with Server since 4.1)
(Compatible with custom clients for the previous version)
Released on 10 Jan 2013
Clarified the encoding of values in regard to UTF-16 surrogate pairs. 4.1 build 1513.1.14
(Compatible with Server since 4.1)
(Compatible with custom clients for the previous version)
Released on 9 Aug 2012
4.1 build 1513.1.12
(Compatible with Server since 4.1)
(Compatible with custom clients for the previous version)
Introduced the "reconf" operation, which allows for dinamically reconfiguring the maximum frequency of currently subscribed items; see the Network Protocol Tutorial document for details. 4.0.3 build 1513.1.11
(Compatible with Server since 4.0)
(Compatible with custom clients for the previous version)
Released on 6 Apr 2012
4.0.2 build 1513.1.8
(Compatible with Server since 4.0)
(Compatible with custom clients for the previous version)
Released on 6 Dec 2011
4.0.1 build 1513.1.3
(Compatible with Server since 4.0)
(Compatible with custom clients for the previous version)
Released on 20 Jul 2011
4.0 build 1513.1.1
(Compatible with Server since 4.0)
(Compatible with custom clients for the previous version)
Released on 8 Jul 2011
4.0 build 1513
(Compatible with Server since 4.0)
(Compatible with custom clients for the previous version)
Released on 7 Jun 2011
4.0 a4 build 1495
(Compatible with Server since 4.0 a3)
(May not be compatible with custom clients for the previous version;
see compatibility notes below)
Made available as a prerelease on 4 Feb 2011
Introduced possible padding lines at the end of a response.
COMPATIBILITY NOTE: padding lines were already
compatible with the streaming response protocol, though the protocol
documentation was unclear on response termination aspects. It is expected that
a client which successfully handled the protocol can also support the new
padding. Introduced the "force_rebind" control connection subtype, to force an active streaming connection to be closed with the request for a client rebind to the related session. 3.6.1 build 1470
(Compatible with Server since 3.6.1)
(Compatible with custom clients for the previous version)
Extended the send_message request to behave asynchronously. If a progressive
number is specified in the request, the message is enqueued and processed
asynchronously and the ordering of the progressive numbers in ensured. 3.6 build 1463.2
(Compatible with Server since 3.5.1)
(Compatible with custom clients for the previous version)
Released on 16 Apr 2010
3.6 build 1463.1
(Compatible with Server since 3.5.1)
(Compatible with custom clients for the previous version)
Released on 14 Apr 2010
3.6 build 1463
(Compatible with Server since 3.5.1; note that the new protocol features were
already supported by the previous version of the Server)
(May not be compatible with custom clients for the previous version;
see compatibility notes below)
Released on 16 Feb 2010
Thoroughly revised the way subscriptions are expressed. Changed the LS_adapter argument of create_session.txt into LS_adapter_set. Introduced the END command among the possible messages in the push contents. Added the "destroy" case to the available control connections. It allows for asynchronous session closure to be forced on the server side. Removed the "kill" request, used to close all the sessions owned by a user
across a Server instance. Fixed an error in the send_message documentation, whereby the SYNC_ERROR response case got dropped. 3.5.1 build 1436
(Compatible with Server since 3.5)
(Compatible with custom clients for the previous version)
3.5 build 1428.4
(Compatible with Server since 3.5)
Released on 28 Jan 2009
3.5 build 1427
(Compatible with Server since 3.5)
Extended the protocol documentation, by including the reference to the possible error codes in Server responses. Extended the protocol documentation, by clarifying when the http GET method cannot be used. 3.5 build 1422
(Compatible with Server since 3.5)
Released on 23 Sep 2008
Extended the Control Connection protocol to the basic support for multiple Data Adapters introduced in the Server. A new request argument, "LS_data_adapter" allows the client to specify the name of the Data Adapter that supplies all the items in the requested table. Added an error case for streaming/polling connections in which the requested
Adapter Set is not found (previously, an HTTP 500 error was returned). Discontinued the LS_top_max_frequency and LS_slowing_factor request parameters
and the related TopMaxFrequency and SlowingFactor return headers. Modified the meaning of the MaxBandwidth return header on the streaming and
polling connection, which was not useful at all. The header is now always
sent and it reports the server-side constraint (see the protocol documentation
for details). Fixed an error in the protocol documentation in paragraph 4.1: the Server answer does not contain space characters. Changed the examples included in the protocol documentation document. Now they are based on a local installation of Lightstreamer Server, rather than the installation running on Lightstreamer site. 3.4.8 build 1398
(Compatible with Server since 3.4.6)
Released on 6 Mar 2008
3.4.7 build 1395
(Compatible with Server since 3.4.6)
Released on 11 Feb 2008
Added an error case for attempts to rebind to a session that was created by the Web Client Library (previously, it was a SYNC ERROR case). Added an error case for control connections which fail because of some
unexpected precondition (e.g. a delete of a nonexistent subscription). 3.4.6 build 1393
(Compatible with Server since 3.4.6)
Released on 4 Jan 2008
3.4.6 build 1391
(Compatible with Server since 3.4.6)
Released on 6 Dec 2007
Fixed an error in the protocol documentation, in paragraph 4.6.3 The keyword for the "overflow" message, reported as "O", is actually "OV". Fixed an out-of-date reference in the protocol documentation, in paragraph 2.1.3 Removed spurious lines in the protocol documentation, in paragraph 4.1 3.4.6 build 1389
(Compatible with Server since 3.4.6)
Released on 22 Nov 2007
3.4.6 build 1385
(Compatible with Server since 3.4.6)
Released on 15 Nov 2007
Introduced the notification, upon session start, of the name of the server socket which handles a session request (the name is the one assigned through the <http_server> or <https_server> configuration element). 3.4.5 build 1376
(Compatible with Server since 3.4)
Fixed an error in the protocol documentation. The LS_requested_buffer_size,
LS_requested_max_frequency and LS_snapshot parameter names for the "Multiple
Window Mode" (paragraph 4.3.2) should be followed by a window counter. 3.4.4 build 1362
(Compatible with Server since 3.4)
Created a dedicated directory within Lightstreamer distribution (previously the documentation was at DOCs/SDKs root level). |