pike.git/
CHANGES
Branch:
Tag:
Non-build tags
All tags
No tags
2013-11-03
2013-11-03 16:24:02 by Per Hedbor <ph@opera.com>
049242074d55e45f74060b23f71bf2fd5f86716b (
171
lines) (+
111
/-
60
)
[
Show
|
Annotate
]
Branch:
7.9
Even more changes to changes
22:
Both Test()->b() and Test2()->b() will return 1, but Test2()->a() will return 42.
+
+
o Added new syntax that can be used to return the current object as if
+
it was a class it is inheriting
+
+
The syntax is X::this, where X is the inherited class.
+
+
The returned object will not include any symbols not available in
+
the class X, but your overloaded methods (and other identifiers)
+
will be the ones returned when the object is indexed.
+
o Added a way to easily inherit the implementation of a subclass in an inheriting class.
78:
Mainly it is now much better at finding type errors, and most error messages are more readable.
-
o Allow '.' to be used as an index operator in the few places
id
did
+
o Allow '.' to be used as an index operator in the few places
it
did
not work before. o "Safe" index
97:
| && request_id->user->misc->x o Added the '?:' operator for compatibility with other C-like
-
languages. It is identical to '||' in pike
, and this is not /really/
-
needed
.
+
languages. It is identical to '||' in pike.
o The && operator changed, when doing A && B, and A is false, keep A instead of returning 0.
106:
This is especially useful then A is not actually 0, but an object that evaluates to false, or UNDEFINED.
-
o
Added
new syntax that can be used to return an object as if it was a
-
class you are inheriting, X::this where X is the inherited class.
+
New
preprocessor
features
+
-------------------------
-
o Support for ", ##__VA_ARGS__" cpp feature.
+
o Support for
the
", ##__VA_ARGS__" cpp feature.
+
This makes the ‘##’ token paste operator have a special meaning
+
when placed between a comma and a variable argument. If you write
-
o
The
preprocessor
can
now
be
run
with
a
cpp prefix feature.
+
|
#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 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 "#".
395:
iterations over BZ2 compressed files. | foreach( Bz2.File("log.bz2")->line_iterator(); int n; string line )
-
o Image.JPEG
.decode
-
Now
supports basic CMYK/YCCK support
+
o Image.JPEG
+
+
decode
now
supports basic CMYK/YCCK support
+
+ exif_decode is a new function that will rotate the image
+
according to exif information
-
o Image.JPEG.exif_decode
-
Will rotate the image according to exif information
-
+
o String.Buffer String.Buffer can now add the storage from a different String.Buffer object with the add() method.
495:
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. The Stdio.File object no longer has a _Stdio.Fd_ref in _fd. They are instead directly inheriting _Stdio.FD.
599:
program and include path to the spawned pike, in addition to the module path.
-
o
lots
of autodoc fixes
-
o
predef::types
(seems
somewhat
broken,
or
is
it
intended
at
types(({1
,
2,3}))
returns
({
mixed,mixed,mixed})?)
+
o
Lots
of autodoc fixes
+
A
lot
more
of
the
previously
existing,
but broken
,
documentation
is
+
now readable.
-
+
o predef::types
+
This is equivalent to values and indices, but instead gives the
+
types for each value.
+
+
Basically only useful for objects.
+
o Builtin._get_setter This function returns a setter for a variable in an object. The setter, when called, will set the variable value to the passed
619:
189 (TCVN 5712:1993, aka VSCII) 167, 166 (aka TIS 620-2533 (1990)), 164, 160, 151 (NC 99-10:81), 68 (APL), 59 (CODAR-U), 202 (KPS 9566-97). Fixed CSA_Z242.4
-
o Fixes to the HTTP client in Protocols.HTTP.
-
o dtrace support (on macosX at least?)
+
-
+
o Several fixes to Protocols.HTTP
+
+ Improved Protocols.HTTP.Query.PseudoFile
+
(significantly better Stdio.Stream simulation)
+
+ Do not use hardcoded Linux errno:s
+
+ Case insensitive handling of header overrides in do_method
+
+ Fixed broken check for URL passwords when querying
+
+ Add more descriptive HTTP responses along with a mostly complete
+
list of codes
+
+ Handle non-standards compliant relative redirects
+
+ Cleaner handling of async DNS failures
+
+ Handle chunked transfer encoding correctly when doing async
+
queries
+
+ Fixes for the proxy client support
+
+ Several keep-alive handling fixes
+
+ Server:
+
- More forgiving MIME parsing for MSIE
+
- Fixed range header handling
+
- Fixed parsing of broken multipart/form-data data
+
- Added optional error_callback to attach_fd
+
- The response processor (response_and_finish) now treats the
+
reply mapping as read-only.
+
- Support if-none-match (etag:s)
+
- Ignore errors in close when destroying the object
-
+
o dtrace support (on macosX)
+
Pike now supports dtrace events on function enter and leaving (and
+
when stack frames are notionally popped, for functions doing
+
tailrecursion).
+
Crypto and SSL --------------