Forum OpenACS Development: ANNOUNCE: NaviServer 4.99.13 available
I am pleased to announce the availability of NaviServer 4.99.13 (see [1] and [2]). NaviServer 4.99.13 was tested with OpenACS 5.9.0 and the newest version on the oacs-5-9 branch. See below for the changes between NaviServer 4.99.12 and 4.99.13.
all the best
-gustaf neumann
[1] https://sourceforge.net/projects/naviserver/
[2]
https://bitbucket.org/naviserver/naviserver/
=======================================
NaviServer 4.99.13, released 2016-10-15
=======================================
143 files changed, 3051 insertions(+), 2091 deletions(-)
New Features:
- New Tcl functions:
* ns_parseurl /url/
Parse the provided URL into its parts and
returns these in the form of a Tcl dict. The function supports
IP-literal notation as specified in RFC 3986.
* ns_absoluteurl /incompleteurl/ /baseurl/
Construct a completed URL from a incomplete (e.g. relative)
URL by taking as many parts as possible from the provided base
URL.
- ns_striphtml: The function honors now numeric entities between 33
and 255 instead of ignoring it.
- New configure option for error.log: "logrollfmt", which can be
specified in (section ns/parameters). This option has the same
interpretation as already provided for access log and provides
timestamp based log file naming. This option can reduce back-up
demands for large error.logs significantly (since the names are
stable) and increases the orthogonality of options (in respect to
access.logs).
- Ns_ParseUrl(): add support for protocol agnostic URLs (starting
with two slashes as defined in RFC 3986).
- ns_deletecookie: mark deleted cookie as non-scriptable to improve
ratings on security scanners.
Bug Fixes:
- Fix for [naviserver:bugs] #76: ns_configsections returned
only one section (bug introduced in 4.99.12).
- Fix URL parser in Ns_ParseUrl(), could return incorrect results
when it received an URL in IP-literal notation (bug introduced in
4.99.11).
- Fix for potentially incorrect mime-types in fastpath, when static
gzip is activated. The mime type was incorrectly set to
application/gzip, when the static gzipped file was returned. This
bug was introduced in 4.99.12, many thanks to David Osborne for
reporting).
Documentation improvements:
- Documenting new functions
- Several small cleanups
- Improved sample config files
C API Changes:
- using unsigned int for ports
Ns_SockListenUnix(), Ns_SockBindUnix()
- using "long" for secs
Ns_SockSetDeferAccept(), ns_poll(), Ns_DiffTime()
- makeing argument types more precise
NsPoll(), Ns_SockBinderListen(), Ns_GetNameForGid(), Ns_ThreadStackSize()
Code Changes:
- Extended regression test
- Improved source code documentation
- C-Code cleanup:
* Removed all implicit type-conversions, signed/unsigned comparisons
as flagged by the following gcc/clang flags (ensure cleanness on 64bit)
-Wconversion -Wsign-conversion -Wfloat-conversion -Wsign-compare
* Reduced number of return statement before end of function
* Reduced variable scopes
* added types for uid_t, gid_t if not defined
* Remove calls to Tcl functions which are deprecated/ going to be
deprecated by Tcl. Code can be compiled now with -DTCL_NO_DEPRECATED
* Converted all remaining Tcl_CmdProc to Tcl_ObjCmdProc
NsTclAdpStatsCmd -> NsTclAdpStatsObjCmd
NsTclCrashCmd -> NsTclCrashObjCmd
NsTclHrefsCmd -> NsTclHrefsObjCmd
NsTclLibraryCmd -> NsTclLibraryObjCmd
NsTclMkTempCmd -> NsTclMkTempObjCmd
NsTclParseHeaderCmd -> NsTclParseHeaderObjCmd
NsTclQuoteHtmlCmd -> NsTclQuoteHtmlObjCmd
NsTclStripHtmlCmd -> NsTclStripHtmlObjCmd
- Tcl-Code
* tcl/aolserver-openacs.tcl:
Register delete trace to run nsf::finalize in a safe state (before
any other c-based finalize handler are fired)
* regression test: Replaced Tcl "eval" by expand operator