Appweb Changelog

What's new in Appweb 6.2.1

Apr 27, 2016
  • Fix JSON line number tracking for error reporting
  • Fix openssl support not clearing the buffered read data flag - causing high CPU usage

New in Appweb 6.0.2 (Aug 17, 2015)

  • Upgrade MPR, HTTP and ESP with fixes and enhancements

New in Appweb 5.1.0 (Aug 4, 2014)

  • Minor Features:
  • Simplify log and trace output to the console via --trace and --log switches [issue 371].
  • Add unit tests using TestMe [issue 372].
  • Fixes:
  • Fix race condition with mprWaitForEvent [issue 373].
  • Fix JSON config file parsing [issue 374].
  • The fixes from version 4.6.2 are applied.

New in Appweb 5.0.0 (Aug 4, 2014)

  • Major Changes:
  • Deprecated APIs and Legacy code in Appweb 4 has been removed. [issue 341]
  • The ESP web framework has been extracted as a stand-alone product, but Appweb still includes the full ESP framework. [issue 342]
  • Appweb uses the MakeMe build tool. This was previously called Bit. [issue 343]
  • Convert Appweb dependencies into Pak packages [issue 344]
  • Split error log and request log [issue 352]
  • Minor Changes:
  • Generated Makefiles are more configurable. [issue 345]
  • Fixes and changes since rc1:
  • Parsing corrupted cookies of the form "name=" and mulitple cookie handling [issue 366]
  • Improve bit packing in Mpr and Http structures [issue 367]
  • Update Ejscript JSON parsing to detect missing commas [issue 368]
  • Fix for ESP to load fix.css when using all.less [issue 369]
  • Fix httpAuthenticate being run multiple times [issue 370]
  • Fixes and changes since rc0:
  • Fix testing of XSRF token. Only re-create in views. [issue 346]
  • Update ESP to fix client.mappings timeouts [issue 353]
  • ESP upgrade should not overwrite overwrite files by default. [issue 354]
  • ESP command updated to create users and roles. [issue 355]
  • The fixes from version 4.6.0 are applied in release candidate rc1
  • The fixes from version 4.6.1 are applied in release candidate rc2
  • Incompatible Changes:
  • Configuring for Ejscript now requires "--with ejs" instead of "--with ejscript"
  • Since Bit is rebranded as MakeMe, conditional definitions are using the "ME_" prefix instead of "BIT_"
  • Also, configured components are described using "ME_COM_" instead of "BIT_PACK"
  • APIs previously nominated in 4.X as deprecated are now removed. This includes the ESP legacy mvc framework
  • ESP Package.json format is changed for many properties. Regenerate the application to get a new package.json file
  • ESP applications have a different package.json property layout. Upgrade all relevant paks. See ESP Configuration Sample for details
  • With separating the error log and request log, the mprLog, mprTrace, mprError APIs, and the MprLogHandler type have revised signatures. The mprLog API is the primary error logging API and mprError should not be used. The mprLog API takes a tag words argument that can specify severity levels and classification tags for filtering the error log

New in Appweb 4.6.2 (Jul 31, 2014)

  • Fixes:
  • Client initiated disconnect not setting HttpTx.responded. [issue 365].
  • Add OpenSSL SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER option [issue 375].
  • Require MakeMe 0.8.2 [issue 376].
  • Negative timeouts in httpWait for client HTTP requests causing delays. [issue 377].

New in Appweb 4.6.1 (Jun 25, 2014)

  • Fixes:
  • Fix old reference to bit in package/service.es [issue 356].
  • Fix esp -V to display just a pure version number [issue 357].
  • Fix ESP package.json "app.http.keep" property [issue 358].
  • Fix exporting ESP paks to have version numbers that match Appweb [issue 356].
  • Fix finding appweb.conf when executing outside the Appweb installation directory. [issue 361].
  • Fix loading the esp module when appesp is run inside /etc/appweb or appweb binary installation directory. [issue 362].
  • Fix EST write blocking [issue 363].
  • Fix printf format strings. Enable compiler printf format checking. [issue 364].

New in Appweb 4.6.0 (Jun 3, 2014)

  • Fixes:
  • Switch to use MakeMe, previously called Bit. See the GitHub issue for details of the change. [issue 343].
  • UploadFilter with packet-spanning boundary in the last packet. [issue 348].
  • Redirection for virtual hosts to HTTPS [issue 349].
  • Static linking on linux [issue 350].
  • MprJoinPaths fails on windows [issue 351].

New in Appweb 5.0.0 RC0 (May 17, 2014)

  • Notes:
  • The Appweb 5 API is substantially backwards compatible with Appweb 4 applications. If Legacy Appweb 4 APIs are not being used, there should be minimal code change to migrate to Appweb 5 from Appweb 4.
  • Major Changes:
  • Deprecated APIs and Legacy code in Appweb 4 has been removed. [issue NN].
  • The ESP web framework has been extracted as a stand-alone product, but Appweb still includes the full ESP framework. [issue NN].
  • Appweb uses the MakeMe build tool. This was previously called Bit. [issue NN].
  • Appweb is more modular by using the Pak package manager tool . [issue NN].
  • Minor Changes:
  • Generated Makefiles are more configurable. [issue NN].
  • Incompatible Changes:
  • Configuring for Ejscript now requires "--with ejs" instead of "--with ejscript"
  • Since Bit is rebranded as MakeMe, conditional definitions are using the "ME_" prefix instead of "BIT_"
  • Also, configured components are described using "ME_COM_" instead of "BIT_PACK"
  • APIs previously nominated in 4.X as deprecated are now removed. This includes the ESP legacy mvc framework.
  • ESP Package.json format is changed for many properties. Regenerate the application to get a new package.json file.
  • ESP Angular applications have a different Esp.config property layout. Upgrade all relevant paks.

New in Appweb 4.5.6 (May 17, 2014)

  • Fixes:
  • Remove unwanted assert for WebSockets Ping requests in httpSendBlock [issue 328].
  • Supplemental group membership on Unix when using UserAccount [issue 329].
  • Add mp4 mime type [issue 330].
  • Fix hang on exit [issue 334].
  • Add "mov" mime type to defaults. [issue 335].
  • XP compilation fails [issue 336].
  • Must flush session state earlier [issue 338].
  • Range filter not handling bad range values [issue 339].
  • CgiProgram content length overflow [issue 333].

New in Appweb 4.5.2 (Mar 28, 2014)

  • Fixes: httpDigestParse incorrect parsing [issue 320].

New in Appweb 4.5.1 (Mar 13, 2014)

  • Minor Features:
  • Add esp --debug and --release switches to control compilation mode for symbols or optimization
  • Fixes:
  • WebSockets default request timeout. [issue 310].
  • Preserve HttpRx.originalUri when using ErrorDoc responses. [issue 311].
  • ESP package.json esp.redirectSecure property to apply only to ESP application. [issue 312].
  • httpCheckSecurityToken when token is defined but empty. [issue 313].
  • ESP package.json esp.login.name for auto-login in dev mode. [issue 314].
  • ESP scripts() and stylesheets() to emit cleaner relative URIs. [issue 315].
  • Revert naming of httpUri to previous httpLink. httpUri deprecated but supported. [issue 316].
  • httpGetCookie with multiple cookies of intersecting names. [issue 317].

New in Appweb 4.5.0 (Mar 13, 2014)

  • Major Features:
  • Big upgrade for ESP application frameworks. [issue 237]. Changes include:
  • Complete support for ESP AngularJS MVC applications.
  • New simplified support for server-side ESP MVC (esp-html-mvc) applications.
  • Add support for Pak extension packages
  • Enhanced ESP application generator with install, uninstall and upgrade options.
  • Universal configuration file for ESP applications in "package.json".
  • Updated and extended samples.
  • Simplify generated client-side controllers
  • Add routePrefix to package.json and update esp.js to automatically parse and include in all routes
  • Add esp-click attribute for elements without hrefs
  • Add esp-resource to communicate with ESP server-side controllers
  • Add esp-confirm for modal confirmations
  • New JSON parser
  • Minor Features:
  • VirtualHost directives can now take multiple endpoints
  • Windows 8.1 support
  • Add CgiPrefix directive to use in front of URI parameters and form variables in CGI programs. [issue 282]
  • Add CgiEscape directive to escape shell special characters [issue 283]
  • Make DigestData struct public [issue 275]
  • MprStealConn - need more flexibility [issue 278]
  • Add more session hijack protection [issue 283]
  • Add IPv6 conditional directive IPv6 [issue 284]
  • Shutdown Issues [issue 285]
  • Change SessionCookie to allow defining the cookie name [issue 291]
  • Add support for single-login enforcement. [issue 292]
  • Add MakeDir directive [issue 293]
  • Add httpBorrowConn and httpReleaseConn to make it easier to use mprCreateEventOutside
  • issue 302]
  • Increase default WebSockets inactivity timeout to five minutes [issue 307]
  • Add mprGetKey and mprSetKey APIs for generic object reference storage [issue 308]
  • Fixes:
  • Missing sendfile64 on on Linux 2.4 systems [issue 244]
  • Add Reroute directive. Revert Route directive to not open previously defined routes. [issue 238]
  • Add BIT_MPR_SSL_RENEGOTIATE option (config: mpr.ssl.renegotiate) to control SSL renegotiation. Renegotiation is enabled by default. [issue 240]
  • JSON parser handling of embedded quotes and backslashes
  • Mdb database saving of field values in JSON with embedded quotes and backslashes
  • Improve XSRF security token handling adding transparent regeneration if possible.
  • Early detection of bad characters in URIs. This tightens request URI validation of invalid URIs that were previously permitted.
  • Add missing bower.json [issue 253]
  • Return 401 for bad authentication scheme [issue 254]
  • Add documentation on new httpWriteBlock behavior [issue 255]
  • Update conn->lastActivity in readEvent [issue 256]
  • Use 401 when user fails authorization [issue 257]
  • Return valid authentication domain [issue 258]
  • Fix off-by-one in httpFilterChunkData [issue 259]
  • Free Win32 resources on shutdown and error [issue 260]
  • Fixing crash on disconnect [issue 261]
  • Allow module-defined AuthStores [issue 262]
  • Reject unknown methods in fileHandler with 405 [issue 263]
  • Use original URI to build trailing slash redirects [issue 264]
  • Don't chunk HTTP/1.0 responses [issue 265]
  • Use full URI path in dirHandler index titles [issue 266]
  • Send 404 from the errorHandler instead of 501 [issue 267]
  • Always increment module refcount when loading [issue 268]
  • Use case-insensitive keys for the MIME types table [issue 269]
  • Fix arithmetic error in mprGetTicks (windows) [issue 270]
  • Fix mprWaitForCond with no timeout [issue 271]
  • Remove extra httpError format specifie [issue 272]
  • Fixing WNDPROC declaration [issue 273]
  • Windows mprWaitForSingleIO not returning event mask [issue 274]
  • Make DigestData struct public [issue 275]
  • Remove accesses to CRITICAL_SECTION's SpinCount [issue 276]
  • Document when and where mprYield will occur [issue 277]
  • Delay LimitRequestBody test after routing [issue 279]
  • Enable serving files outside document root [issue 280]
  • mprCreateEventOutside needs to work when MPR is shutting down [issue 281]
  • Fixes since RC3:
  • Fix httpSetCookie for IPv6 addresses. Also add option to suppress domain by setting cookieDomain parameter to an empty string. [issue 287]
  • Redirection for numerical IPv6 addresses broken [issue 288]
  • Fix the ESP package.json timeout.session property. [issue 289]
  • Fix and update samples [issue 290]
  • Fix signal handling for default and ignored signals [issue 294]
  • Fix ErrorDocument response request packet creation. [issue 295]
  • Fix mprWarn to say warning instead of error [issue 296]
  • Fix memory exception handling [issue 297]
  • CONNECT verb IP address parsing [issue 299]
  • Compiling SDB with va_list [issue 300]
  • Fixes since RC4:
  • Remove duplicate zlib code in ejsLib.c [issue 303]
  • Command line mode without an appweb.conf file. [issue 304]
  • Compiler unreachable code warnings. [issue 305]
  • mprGetPathFiles on Linux was sorting files in the wrong order. [issue 306]
  • Disable Secure-Transport as default for "Redirect secure" [issue 309]
  • Incompatible Changes:
  • Rename libsqlite3 to libsql to avoid clashing with existing SQLite libraries. [issue 242]
  • Rename readRecsWhere to readWhere to be consistent with EDI API. [issue 236]
  • Add body argument to mprRunCmd to write data to spawned command. [issue 239]
  • Rename config.json to package.json
  • Deprecate the prior ESP MVC skeleton. It is renamed to esp-legacy-mvc.
  • Move views by default under client/app. The EspDir directive can be used to modify the views directory.
  • Move layouts under client/layouts. The Espdir directive can be used to modify the layouts directory.
  • Renamed the old ESP pack from angular-mvc to esp-angular-mvc. All ESP packs now take an "esp-" prefix.
  • Changed default generated application skeleton from "esp-legacy-mvc" to "server". This permits the generation of non-MVC applications that consist only of server-side controllers.
  • Fix calls to renderFlash with incorrect arg count
  • Change ESP server-side controller entry point from esp_module_NAME, to esp_controller_APP_CONTROLLER. Also, ESP application source modules include the app name in the entry point. This is to resolve init entry point name clashes when hosting multiple applications.
  • Rename APIs that send JSON from renderResult, renderGrid, renderRec to use a send prefix instead of render. This is to clarify which APIs send HTML and which send JSON. The render* APIs send HTML and raw data. The send* APIs send JSON.
  • The ESP compilation mode is renamed from "flat" to "combined". The two modes are: discrete and combined. When esp compiles applications it automatically reads the esp.combined property from the application's package.json file to determine the compilation mode. The esp --flat switch is removed.
  • The MprTerminator type has an additional parameter: MPR state. The terminators are invoked twice to notify when the a shutdown is commenced and when the MPR is being destroyed. Terminators should test the state argument against MPR_STOPPING and MPR_STOPPED.
  • Support for Windows XP and Vista deprecated. Contact [email protected] if you require XP or Vista support.
  • Refactor mprDestroy, mprShutdown. The old mprTerminate has been replaced by mprShutdown. MprDestroy now has zero args. mprShutdown gains a timeout arg. The defines MPR_EXIT_IMMEDIATE and MPR_EXIT_GRACEFUL are now removed as all shutdowns are graceful depending on the exit timeout. [issue 301]
  • The HttpHost structure no longer contains an IP or Port fields. See the appropriate HttpEndpoint structure
  • Removed the Protocol directive to define HTTP/1.0 vs HTTP/1.1. This is now sensed from the client. Removed the httpSetHostProtocol API.
  • Reinstated httpFlush behaviour to only initiate flushing and not wait for completion. Use httpFlushAll to flush and wait for completion.

New in Appweb 4.4.0 (Oct 2, 2013)

  • Major Features:
  • Major performance optimizations. [issue 224]
  • Added security defensive counter measures. Added Monitor and Defense directives. [issue 213]
  • Add Angularjs support in ESP. [issue 196]
  • Enhance "esp" generator application to generate application components including Angular applications. [issue 197]
  • Change password hashing algorithm to use Blowfish encryption [issue 198]
  • Minor Features:
  • Update ESP jquery support [issue 179]
  • Update EspApp directive with new syntax. [issue 180]
  • Add ESP src/app.c. This is invoked at Appweb startup. [issue 181]
  • Add lessjs support for ESP. Replace old layout/theme style sheets with a theme.less. [issue 182]
  • Add ESP html5shiv for generated apps [issue 183]
  • Add support for multi-line strings in ESP templates via back-tick. [issue 185]
  • Add StreamInput directive to control request body input streaming or buffering. [issue 199]
  • Add Map directive for transparent content extension mapping. Deprecate Compress directive. [issue 200]
  • Add httpLogout API. [issue 201]
  • Add httpAddAuthStore and HttpAddAuthType APIs to permit overriding the password verification scheme. [issue 202]
  • Add httpAddParamsFromJsonBody API. [issue 203]
  • Enhanced MPR APIs for: mprGetRandomString, mprGetCacheStats, mprCryptPassword, mprMakeSalt, mprAddKeyWithType, mprQueryJsonString, mprQueryJsonValue, stitle, mprGlobPathFiles. [issue 204]
  • Replace Method, PutMethod and TraceMethod directives with AddMethods, RemoveMethods and SetMethods. [issue 208]
  • Add SessionCookie directive to control the visibility of the session cookie. Default now is "httponly". [issue 210]
  • Rename EspShowErrors as ShowErrors to make available to all handlers. [issue 211]
  • Added Stealth directive to control stealth mode. Stealth mode hides the Server header in responses. [issue 212]
  • Added Header directive to define response headers. [issue 215]
  • Used "Header set" to define important security directives to the default appweb.conf. [issue 216]
  • Optimized file upload. [issue 218]
  • Tightened WebSockets compliance. Passing Autobahn test suite. [issue 217]
  • Add palloc APIs for permanent memory allocations [issue 226]
  • Add JSON query API [issue 230]
  • Enhance esp generator to generate applications using different client-side frameworks. [issue 231]
  • Fixes:
  • Fixes for ESP controls. [issue 184]
  • Update ESP tabs to fix tab order [issue 186]
  • Update ESP flash messages - were not clearing. [issue 187]
  • Remove EspLoad directive. Now integrated into EspApp. [issue 188]
  • Remove leading "-" from all ESP CSS classes. [issue 189]
  • Fix HTTP streaming request body input in http core engine. [issue 205]
  • Fix Http sessions. Aggregate all session state data in one object. [issue 206]
  • Make loading SSL provider thread-safe. [issue 207]
  • Make loading SSL provider thread-safe. [issue 207]
  • Fix Socket and SSL return codes when socket is full. [issue 214]
  • Fix Source directive to be relative to route home rather than route documents. [issue 219]
  • Fix for windows when time goes backwards [issue 227]
  • Fix esp recompiling on windows [issue 228]
  • Modify ESP cache module naming to include the appname as an ingredient into the MD5 name. This is necessary to support multiple applications with controllers of the same name. [issue 234]
  • Incompatible Changes:
  • The ESP HTML control generators are deprecated. The recommended approach is to use a client-side framework like Angular for HTML controls.
  • The EspApp directive now has a new format. See the ESP documentation for details. The old format is enabled but deprecated.
  • The ESP flash mechanism now preserves flash messages into the next controller and they are then erased before the view after that. Flash should not be used for feedback into the view.
  • The ESP setFlash() function is now renamed flash().
  • The ESP flash() function is renamed renderFlash(). This is to be consistent with other render methods.
  • The ESP espGetFlashMessage() function is renamed espGetFlash()
  • ESP controller module initialization functions have a new naming convention: esp_controller_APP_NAME instead of esp_module_NAME. This permits multiple applications with controllers of the same name.
  • The ESP src/*.c files must now be named src/app.c
  • ESP cache modules names are different and now include the app name as an ingredient in the MD5 name.
  • The ESP function stylesheet() now generates by default a reference to "static/css/all.css" instead of "layout.css" and "theme/default.css". This is to support the use of Less and SCCS which aggregate style sheets.
  • If a Route directive uses the same pattern as a previously created route, it will open and modify the previous route.
  • The Header directive is renamed RequestHeader. Use SetHeader to set response headers.
  • The Compress directive is present but deprecated. Use "Map compressed" instead. Map is a more generalized facility that embraces compression.
  • The httpHandleOptionsTrace() function is deprecated. The API is present but deprecated.
  • LimitRequestBody does not file upload size. Use LimitUpload to limit file upload size.
  • Changed the field HttpRoute.dir to HttpRoute.documents. This is to avoid confusion with HttpRoute.home.
  • The Appweb default configuration is now secure-by-default. The security sandbox limits are set fairly low and the default responses now include headers to limit cross-site-scripting vulnerabilities. See Security Defaults for more information.
  • The httpAddResourceGroup, httpAddResource, httpAddClientRoute and httpAddRouteSet have changed signatures to accommodate a URI prefix for server-side controller URIs.

New in Appweb 4.3.6 (Oct 2, 2013)

  • Fixes"
  • Add yield points to reduce memory footprint for back-to-back requests. [issue 232]
  • Fix route templates if a route has a trailing $. [issue 233]

New in Appweb 4.3.5 (Oct 2, 2013)

  • Fixes:
  • Fix recalculating MDB index after deleting items. [issue 194]
  • Fix SSL write blocking with OpenSSL. Caused increased memory consumption for large file downloads over SSL. [issue 195]
  • Content-Range end byte is one too big. [issue 178]
  • Fix parsing range header. [issue 209]
  • Fix WebSocket compliance with continuation frames [issue 223]
  • Fix mprYield and GC deadlock [issue 221]
  • Update License.md [issue 222]

New in Appweb 4.3.4 (Oct 2, 2013)

  • Fixes:
  • Fix incorrect http session max exceeded limit message [issue 191]
  • Fix static compilation error in espHandler. [issue 192]
  • Update jquery and jquery.esp to support jQuery 1.9 [issue 193]

New in Appweb 4.3.3 (Oct 2, 2013)

  • Minor Features:
  • Add ESP template directive @! to access C variables [issue 190]
  • Fixes:
  • Fix ESP MVC apps serving static/*.esp [issue 164]
  • ESP generate with SDB fails [issue 165]
  • Fix resolving appweb.conf relative to the appweb.conf file [issue 166]
  • Fix client HTTP Host header. Should not include :443. [issue 167]
  • Fix esp generate table | migration [issue 168]
  • Improve esp generated appweb.conf [issue 169]
  • Fix EspApp to reuse suitable existing routes if possible [issue 170]
  • Fix ESP setting {controller} parameter for singleton resource routes [issue 171]
  • Generate dummy data favicon for error pages and ESP icon(0, 0) [issue 172]
  • Fix missing EspControl documentation and add ESP API stability classifications [issue 173]
  • Update to jQuery 1.9 for ESP [issue 174]
  • Use HTML5 data-esp prefix for ESP data attributes [issue 175]
  • Add SO_REUSEADDR for VxWorks [issue 176]
  • Fix the ESP text password attributes [issue 177]

New in Appweb 4.3.2 (Oct 2, 2013)

  • Minor Features:
  • Add self-signed cert and enable SSL by default [issue 150]
  • Improve generated makefiles using top level CFLAGS, LDFLAGS [issue 151]
  • Improve and extend samples [issue 152]
  • Improve portability of compiled ESP modules. Change MD5 encoding to be based on route relative paths. [issue 153]
  • Change _default_ to APPWEB for UserAccount and GroupAccount directives. The old _default_ is still implemented. [issue 161]
  • Fixes:
  • Fix esp --platform vxworks compile [issue 154]
  • Fix CPU setting in "configure --platform os-arch:CPU" [issue 155]
  • Fix compiling ESP pages with DOS end-of-line terminators (CR/LF) [issue 156]
  • Fix "EspUpdate off" to permit one-time loading of ESP modules [issue 157]
  • Fix location of error.log and default to the current directory. [issue 158]
  • Rename AuthStore pam => system, internal => file. Pam|internal deprecated but still implemented. [issue 159]
  • Fix compiling C++ samples on windows by removing TSZ define [issue 160]
  • Fix "esp can't find platform" [issue 162]
  • Cookie fixes: Fix httpSetCookie to only allow one header per cookie. httpCreateSession to always re-create a session. httpDestroySession to erase the client cookie (API change). [issue 163]

New in Appweb 4.3.1 (Oct 2, 2013)

  • Minor Features:
  • Add MPR palloc/pfree APIs to allocate and free permanent memory [issue 139]
  • Update API stability classifications [issue 140]
  • Update JQuery to 1.9.1 [issue 141]
  • Update SQLite to 3.7.15.1 [issue 142]
  • Improve conditional makefiles to support SSL and PHP [issue 143]
  • Add make deploy [issue 144]
  • Lots of documentation updates [issue 145]
  • Add static makefiles [issue 146]
  • Fixes:
  • Only change user/group for UserAccount/GroupAccount if root/administrator [issue 147]
  • Define default stack size for VxWorks [issue 148]
  • Fix make/bit install for non-root installations [issue 125]
  • Add "public" to cookies over SSL for firefox [issue 149]
  • Fix C++ compilation [issue 127]

New in Appweb 4.3.0 (Oct 2, 2013)

  • Minor Features:
  • Fixed listening on Windows 64 with IPv6 and IPv4 on a single socket. [issue 98]
  • Change tunable defines to be override via configure. These are now all named: BIT_*. [issue 99]
  • Update to PHP5.4 [issue 100]
  • Add support for the Mocana NanoSSL stack: [issue 102]
  • Add prototype support for the EST SSL stack: [issue 101]
  • Add main.bit settings "logging". This is enabled by default for debug and release builds. If disabled, calls to mprLog() will be optimized out. Calls to mprError will always be enabled. Similarly, added main.bit settings "tracing". This is enabled by default for only for debug builds. If disabled, calls to assert() and mprTrace() will be optimized out. [issue 107]
  • Added esp --genlink, to generate a static link file for loading esp applications. Added "bit genapp" sample target to generate slink.c based on esp applications under src/server/web. [issue 114]
  • Added Ejscript as an integrated component instead of requiring a separate download. Use "configure --with ejscript" to enable. [issue 117]
  • Added support for HSTS (HTTP Strict Transport Security). [issue 120]
  • Enhance makefiles to support targets: install, uninstall [issue 121]
  • Support building on windows without cygwin [issue 122]
  • Add full text search (FTS3) in SQLite [issue 128]
  • Optimize memory allocation for large form requests [issue 131]
  • Optimize memory garbage collection when appweb is idle [issue 132]
  • Fixes:
  • The mpr.h header has been split into a cross platform operating system layer called bitos.h. The mpr.h header includes this, so there should be no API impact. [issue 103]
  • Remove compiler switch -mtune when not required [issue 104]
  • Fix generated makefiles determining the system CPU architecture [issue 105]
  • Main.bit settings are grouped into collections: http, esp, mpr. Use configure --set NAME.FIELD=value where NAME is the collection name. [issue 108]
  • Update licenses. Remove licenses for SSL stacks that are not included in the product. [issue 109]
  • Fix test if IPv6 is supported on a system [issue 110]
  • Fix creating browser cookies for localhost [issue 112]
  • Fix esp --flat, to compile esp applications into a single library [issue 113]
  • Building with ROM fs support. Added configure --rom, and the sample target "bit rom" [issue 115]
  • Using static linking with esp applications. [issue 116]
  • Esp command without a database (mdb or sdb) [issue 119]
  • Appweb now installed under /usr/local rather than 1/2 under /usr. [issue 124]
  • ESP now uses the file handler to serve static content. [issue 126]
  • Form request with Content-Length of zero. [issue 129]
  • Improve CGI response header parsing [issue 130]
  • Fix esp run [issue 133]
  • Change esp @@variables and