Hello everyone,
Here's a beta of a new stable release:
http://pike.ida.liu.se/download/pub/pike/beta/7.8.526/
Windows build included.
Take it for a spin and report regressions.
Changes since Pike 7.8.352 (third 7.8 release): ----------------------------------------------------------------------
Extensions and New Functions ----------------------------
o Added module Search.
o has_prefix now works on objects.
o Standards.JSON
New module for encoding and decoding JSON data. Implemented in C.
o Protocols.HTTP.Session will no longer override an existing content-type header in async_do_method_url.
o Protocols.HTTP
Allow directly specifying the body of a POST request (needed for the Google Apps API).
o Updated timezone data to tzdata2010l.
o String.normalize_space
New and efficient C implementation; sanitises whitespace, even in wide strings.
o String.trim_all_whites
Extended to the entire range of Unicode white spaces. (And is faster.)
o Tools.PV and pike -x pv now works with GTK2 as well as GTK.
o Integer constants exported by modules can now be used in cpp expressions.
o Modules/programs that have the constant "dont_dump_program" will not be dumped on installation. This is used to prevent dumping of programs that check for external dependencies at compile time such as the MySQL module.
o Added Thread.Queue.peek_array.
o Fixed stack overrun bug in Nettle.CBC and Nettle.Proxy. This is not belived to be a security issue.
o Added System.getloadavg() on platforms that support the getloadavg() call.
o SSL
Added support for AES to SSL3, and fixed bug that prevented some handshake failure alers to be sent to the client.
o ADT.Heap->values and ->num_values can now be overloaded.
Optimizations -------------
o MIME should now use 1/3 less memory when decoding big messages.
o Improved performance of Process.run.
o Nettle.hash
Disallow threads during hashing of small strings (current threshold is 1 MB). This change improves ApacheBench numbers ~20% for a Roxen benchmark on a quad-core Core i5.
Deprecations ------------
o The libpq based old Postgres driver is now deprecated. The new pgsql driver is faster, better tested, more stable, maintained, has more features, does not depend on external libraries and is less filling.
Incompatible changes --------------------
o Signal handlers in GTK2 do no longer get their arguments in the form of an array. The prototype for a signal handler which was previously e.g.
int query_tooltip(GTK2.Widget w, array(mixed) params, mixed callback_arg)
now becomes
int query_tooltip(GTK2.Widget w, int x, int y, int keyboard_tooltip, GTK2.GObject tooltip, mixed callback_arg)
Bug fixes ---------
o Fixed backtraces when Protocols.HTTP.Query objects where garbage collected. [bug 5730]
o Fixed problem with Calendar.month_from_yday() when applied on week 53. [bug 5303]
o Fixed leak in the PNG decoder for images with tRNS chunk.
o System.normalize_path no long fails for files with 8-bit chars in their names.
o Support undocumented OS behaviour on out-of-band data returning EOPNOTSUPP and ECONNRESET when a stream is half closed. The undocumented behaviour is found on (at least) 2.6.x Linux and FreeBSD 7.x and 8.x.
o Use nanosleep() when available instead of poll or select hacks for the Pike-level sleep() function.
o Fixed dangling cache reference in prepared statements when using CREATE statements via Sql.pgsql.
o Fixed broken (autore)connect logic in Sql.pgsql.
o Improved widestring support for Parser.Tabular.
o Fixed segfault in combine_path_nt on windows when the first char of an appended path is wide.
o Fixed fatal error in the constant expression evaluator of the compiler for certain code.
o Fixed a problem in "pike -x module" that prevented auto tools from running in the correct directory.
o Fixed memory leak on out of memory in Mysql.fetch_json_result().
o Fixed locking problem in Mysql.
o Fixed NULL-deref for compilation errors in range expressions.
o Fixes a segfault occuring if exit() is used from a thread when cleanup-on-exit is compiled in.
o Fixed so than an existing content-type is not overriden in async_do_method_url.
o Fixed issue where GTK objects weren't destroyed properly. http://pike.ida.liu.se/docs/tutorial/hello/window.xml now works again.
o Fixed several issues related to lables on the X and Y axises and the calculation of xmaxvalue for the bars/line/linear case in Graphics.Graph.
o Fixed encoding/decoding bug in "pike -x httpserver" that prevented files with space in the name for being accessable.
o Fixed bug that prevented literal zero to be considered a constant.
Building and installing -----------------------
o Fixed som library searchpath issues.
o Some potential fixes for --enable-pikelib mode on platforms had problems with the final linking.
And now a corresponding ebuild is available from the Gentoo pike-overlay.
Hi again,
Here's another beta:
http://pike.ida.liu.se/download/pub/pike/beta/7.8.530/
Windows build included.
Changes from the last beta are only cosmetic (Documentation) except for av update of the Timezone definitions to tzdata2010o.
As far as I'm concerned the only thing stopping this from being the final release is this entry in the changelog:
"o Added module Search. FIXME: Needs a couple of paragraphs of description."
I really know nothing about Search, so someone else will need to fix that.
pike-devel@lists.lysator.liu.se