pike.git
/
CHANGES
version
»
Context lines:
10
20
40
80
file
none
3
pike.git/CHANGES:157:
| constant name = "transcoder:requests"; | constant type = Float; | constant format = PerSecond; | constant aggregate = Summarize; | | float value() { | return floating_average_diff(requests); | } | }
+
Optimizations
-
=============
+
-------------
o New significantly faster block allocator The free in the old one was O(n^2), which means that as an example creating a lot of objects and then free:ing them mainly used CPU in the block allocator. This fix changed the ordo of one of the tests that did that very thing (binarytrees) from O(n^2) to O(n), and as such is more than a simple percentual speedup.
pike.git/CHANGES:232:
So, two new opcodes, fast_branch_if_zero and fast_branch_if_non_zero were added that map directly to three x86-64 opcodes, there is no need to check the types, do a real pop_stack etc. o Faster hash-function for strings + Also siphash24 was added and is used in case the string hash table becomes inefficient
-
Removed features and modules
-
============================
+
-
+
Deprecated features and modules
+
-------------------------------
+
o Removed facets The optional (and not enabled by default) support for facet classes has been removed, since it was only partially done and not really used. o It is no longer possible to compile pike without libgmp. Bignums are now a required language feature o The old low-level 'files' module has been renamed to _Stdio o 'GTK' is now GTK2, not GTK1 unless the system has no GTK2 support.
-
-
Deprecations
-
------------
-
+
o Locale.Charset The charset module is now available on the toplevel as 'Charset' o Tools.PEM and Tools.X409 deprecated Use the corresponding modules in Standards. o The built in sandbox is now deprecated Unless somebody wants to take ownership of the feature and keep it up to date the security system will be removed in the next stable release.
pike.git/CHANGES:371:
This module contains special values used by various modules, e.g. a Val.null value used both by Sql and Standards.JSON. In many ways these values should be considered constant, but it is possible for a program to replace them with extended versions, provided they don't break the behavior of the base classes defined here. Since there is no good mechanism to handle such extending in several steps, pike libraries should preferably ensure that the base classes defined here provide required functionality directly.
+
Extensions and new functions ---------------------------- o Bz2.File Bz2.File now supports the same iterator API as Stdio.File, allowing for convenient line iterations over BZ2 compressed files. foreach( Bz2.File("log.bz2")->line_iterator(); int n; string line )
pike.git/CHANGES:406:
String.Buffer can now add the storage from a different String.Buffer object with the add() method. It is possible to add sprintf-formatted data to a String.Buffer object by claling the sprintf() method. This function works just as the normal sprintf(), but writes to the buffer instead. The new method addat() allows for writing into the buffer at any position.
-
o SDL.Music added to SDL.
-
Allows the playback of audio/music files.
-
Requires the SDL_mixed library.
-
+
o System.TM Low-level wrapper for struct tm. This can be used to do (very) simple calendar operations. It is, as it stands, not 100% correct unless the local time is set to GMT, and does mirror functionality already available in gmtime() and localtime() and friends, but in a (perhaps) easier to use API.
-
+
+
--- UNSORTED
+
+
o SDL.Music added to SDL.
+
Allows the playback of audio/music files.
+
Requires the SDL_mixed library.
+
o decode_value now throws the error object Error.DecodeError. Useful to catch format errors in the decode string. o Debug.pp_object_usage() Pretty print debug information, useful to get debug information about object counts and memory usage in pike applications. Uses the new _object_size lfun, if present in objects, to account for RAM-usage in C-objects that allocate their own memory.