Branch: Tag:


2022-03-09 11:02:38 by Henrik Grubbström (Grubba) <>

GC: Support remaining types in Pike.count_memory().

Users of Pike.count_memory() typically do not want to bother
filtering its arguments, so perform filtering in count_memory()
rather than throwing errors.

Also adds support for counting memory for objects referenced
via functions.


2021-07-02 20:27:26 by Tobias S. Josefowitz <>

decode_value(): Allow to restrict decoding to simple types

The encoded value has quite a bit of control over our process. Allow to
restrict decoding to primitive types by passing coding as -1.


2020-02-07 12:15:19 by Henrik Grubbström (Grubba) <>

Stdio: Some pty-handling cleanup.

Add wrappers emulating missing libc functions.


2019-09-26 11:03:48 by Henrik Grubbström (Grubba) <>

Sprintf: Cleanup linebreak mode.

The sprintf "%/s" and "%=s" modes now break at the column width
(defaulting it to the field width) and not the field width. This
makes it possible to use formats like eg "%;*-=s" (instead of
"%*-=s") to not get every line padded to the full column width.


2019-09-23 14:10:28 by Kevin O'Rourke <>

TURBO2-1398: Allow disabling of wrapping of describe_backtrace output.

The wrapping can add lots of spaces to the end of lines to pad
them, resulting in enormous backtrace files in some circumstances.


2019-06-23 21:56:56 by Tobias S. Josefowitz <>

Tools.Standalone.precompile: Fix storage offset handling

Programs using their parent may store parent information in the
beginning of ->storage, thus we need to add
p->inherits[0].storage_offset when trying to reach an object's storage.
The compiler/runtime correctly takes care of this in THIS, but the OBJ2_
and GET_..._STORAGE macros did not take this into account.


2019-03-19 12:33:55 by Henrik Grubbström (Grubba) <>

Merge commit '722771973bd' into patches/lyslyskom22891031

* commit '722771973bd': (6177 commits)
Verify that callablep responses are aligned with reality.

2019-03-19 09:50:30 by Henrik Grubbström (Grubba) <>

Thread.Farm: Added ResultWrapper.

This is a wrapper for the Result class to detect when the user
loses its reference to it, in order to not lose reports of any
errors from the worker threads.


2019-03-14 10:39:03 by Henrik Grubbström (Grubba) <>

Merge commit '2470270f500c728d10b8895314d8d8b07016e37b' into grubba/typechecker-automap

* commit '2470270f500c728d10b8895314d8d8b07016e37b': (18681 commits)
Removed the old typechecker.


2019-02-02 15:25:44 by Marcus Comstedt <>

Image.Dims: Revert EXIF flipping of dimensions in get_JPEG

Like for JPEG._decode, add a specific exif_get_JPEG which does the
flipping instead.


2018-05-24 09:40:32 by Henrik Grubbström (Grubba) <>

EFUNs: Support encoding to UTF-8 encoded UTF-16 in string_to_utf8().

string_to_utf8() now supports the same extensions as utf8_to_string().

Fixes PIKE-111 (#8111).


2018-04-26 17:18:28 by Henrik Grubbström (Grubba) <>

I/O [NT]: Use new low-level functions from Process.


2018-04-11 09:58:08 by Henrik Grubbström (Grubba) <>

Merge into patches/pike89

* (64 commits)


2018-02-15 15:54:26 by Henrik Grubbström (Grubba) <>

Merge commit '75c9d1806f1a69ca21c27a2c2fe1b4a6ea38e77e' into patches/pike63

* commit '75c9d1806f1a69ca21c27a2c2fe1b4a6ea38e77e': (19587 commits)


2017-08-28 21:19:33 by Per Cederqvist <>

Add extensible error handling in Protocols.DNS.server

Some servers might want to report errors during other mechanisms than
werror. By moving the error reporting to the new
report_decode_error() method, it is easy to override that method and
do something else.

Likewise, some servers might want to not reply to malformed requests.
Move that code to the new handle_decode_error() method.


2016-12-05 13:42:16 by Martin Nilsson <>

Added Nettle.version()


2014-11-13 11:24:37 by Henrik Grubbström (Grubba) <>

Process.spawn_pike: Added launcher argument.


2014-08-22 18:02:24 by Arne Goedeke <>

Merge remote-tracking branch 'origin/8.0' into string_alloc


2013-12-10 10:55:22 by Markus Ottensmann <>

Add class Standards.JSON.Validator which can be used to validate json with a schema

The Standards.JSON.Validator class does not yet implement the full set of
schema validations. It does not yet handle dependencies nor references.
The regular expressions (for pattern properties) are limited to those that
can be handled by Regexp.SimpleRegexp.

To use the validator, load and decode a JSON schema and create a validator:

mixed schema = Standards.JSON.decode(schema_string);
Standards.JSON.Validator validator = Standards.JSON.Validator(schema);

Then load and decode some JSON data and pass it to the function

mixed json_data = Standards.JSON.decode(data_string);
if (string error = validator->validate(json_data))
werror("Error: %s\n", error);
write("JSON matches the schema\n");

For more information of JSON schema look at
- "The home of JSON Schema"