pike.git
/
CHANGES
version
»
Context lines:
10
20
40
80
file
none
3
pike.git/CHANGES:188:
This makes the ‘##’ token paste operator have a special meaning when placed between a comma and a variable argument. If you write | #define err(format, ...) f(debug)werror("ERROR: "+format, ##__VA_ARGS__) and the variable argument is left out when the err macro is used, then the comma before the ‘##’ will be deleted. This does not happen if you pass an empty argument, nor does it happen if the token preceding ‘##’ is anything other than a comma.
+
o The define __COUNTER__ has been added. It is a unique integer
+
value, the first time the macro is expaded it will be 1, the next time
+
2 etc.
+
o The preprocessor can now be run with a cpp prefix feature. This is currently used by the precompiler to avoid two levels of preprocessing, one using "#cmod_" as the prefix and the other "#". o Dynamic macros You can now add programatic macros. There is currently no syntax that can be used to define these while compiling code, but you can add them from one program before compiling plug-ins/modules.
pike.git/CHANGES:414:
o 'GTK' is now GTK2, not GTK1 unless the system has no GTK2 support. o Locale.Charset The charset module is now available on the top level as 'Charset' o The ancient syntax for arrays (string * was an alias for array(string)) has now been removed completely.
-
o Compatibility for pike versions before 7.
2
is no longer available.
+
o Compatibility for pike versions before 7.
4
is no longer available.
o decode_value can no longer decode programs using the 'old style' program encoding. Since the format has been deprecated since feb 2003, and those programs could not be decoded anyway due to other issues it is not much of a loss. New modules
pike.git/CHANGES:602:
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 calling 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.
+
It is possible to address (and update) single characters in a Buffer
+
using [].
+
It is possible to extract a new Buffer (copy) from an existing Buffer
+
using the [..] range operator.
+
It is possible to compare two Buffers or a Buffer and a string
+
directly using the ==, <, >, >= and <= operators.
+
A new method cut() allows you to cut and copy, or simply delete and
+
contract data from an existing Buffer.
+
o String.range(str) This returns the minimum and maximum character value in the string. The precision is only 8 bits, so for wide strings only character blocks are known. o String.filter_non_unicode(str) This function replaces all non-unicode characters in a pike string
pike.git/CHANGES:713:
In this case, if any of the given patterns match the function will return true, or, if the second argument is also an array, all entries that match any glob in the first array. o Stdio.UDP(): + added IPv6 multicast support + added set_buffer
+
o Added client and server support for TCP_FASTCONNECT
+
+
To connect using this TCP extension simply pass the data as the
+
fifth argument to connect.
+
+
The server support is automatically enabled if possible when a
+
Stdio.Port object is bound to a port.
+
o Stdio.File(): + send_fd and receive_fd These functions can be used to send and receive an open file-descriptor over another file-descriptor. The functions are only available on some systems, and they generally only work when the file the descriptors are sent over is a UNIX domain socket or a pipe. + Changed internally to remove one level of indirection.