Browse source

Changelog

Query
From:
To:
Branch:
Path:
Message:
BugID:
User: +
Format:
: 6 checkins (+164/-6) by 3 people : 5 checkins (+206/-48) by 3 people : 13 checkins (+561/-99) by 3 people : 1 checkin (+4/-1) by Henrik Grubbström (Grubba) <grubba@grubba.org> : 1 checkin (+17/-21) by Henrik Grubbström (Grubba) <grubba@grubba.org> : 1 checkin (+15/-6) by Henrik Grubbström (Grubba) <grubba@grubba.org> : 9 checkins (+96/-20) by 4 people : 1 checkin (+20/-10) by Henrik Grubbström (Grubba) <grubba@grubba.org> : 3 checkins (+37/-24) by 2 people : 1 checkin (+2/-1) by Henrik Grubbström (Grubba) <grubba@grubba.org> : 5 checkins (+19/-4) by 3 people : 10 checkins (+255/-35) by 4 people : 12 checkins (+53/-23) by 6 people : 1 checkin (+9/-0) by Henrik Grubbström (Grubba) <grubba@grubba.org> : 1 checkin (+12/-0) by Henrik Grubbström (Grubba) <grubba@grubba.org> : 6 checkins (+228/-32) by 2 people : 5 checkins (+41/-65) by 2 people : 3 checkins (+7/-6) by 2 people : 3 checkins (+9/-3) by 2 people : 4 checkins (+9/-3) by 2 people : 11 checkins (+528/-494) by 3 people : 4 checkins (+102/-31) by 2 people : 8 checkins (+35/-18) by 3 people : 2 checkins (+50/-1) by Henrik Grubbström (Grubba) <grubba@grubba.org> : 8 checkins (+134/-77) by 2 people : 7 checkins (+85/-21) by 2 people : 34 checkins (+1280/-1163) by 3 people : 1 checkin (+5/-5) by Henrik Grubbström (Grubba) <grubba@grubba.org> : 3 checkins (+152/-12) by 2 people : 4 checkins (+158/-56) by Henrik Grubbström (Grubba) <grubba@grubba.org> : 30 checkins (+1113/-380) by 2 people : 2 checkins (+4/-2) by Henrik Grubbström (Grubba) <grubba@grubba.org> : 5 checkins (+76/-64) by 3 people : 5 checkins (+475/-681) by 2 people : 4 checkins (+10/-2) by 2 people : 12 checkins (+94/-20) by Henrik Grubbström (Grubba) <grubba@grubba.org> : 9 checkins (+94/-53) by 2 people : 2 checkins (+4/-0) by Henrik Grubbström (Grubba) <grubba@grubba.org> : 1 checkin (+3/-0) by Henrik Grubbström (Grubba) <grubba@grubba.org> : 5 checkins (+12/-7) by 2 people : 1 checkin (+2/-1) by Henrik Grubbström (Grubba) <grubba@grubba.org> Lines added/removed recently

Today; Tuesday 28 June 2016

2016-06-28 12:58:43 (10 hours ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Build: Fixed broken prototype.

Should fix configure failing on non-gcc/x86 platforms.

Yesterday; Monday 27 June 2016

2016-06-27 19:07:19 (1 day ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Mappings: Fixed hash table lookup on 64-bit system.

Now that hashmem() returns a 64-bit value on 64-bit systems,
it needs the corresponding space in struct keypair otherwise
stuff won't be found...

2016-06-27 17:29:06 (1 day ago) by Jonas Wallden <jonasw@roxen.com>

release number bumped to 8.0.266 by export.pike
release number bumped to 8.0.267 by export.pike

2016-06-27 17:00:20 (1 day ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

System [NT]: Fixed resolver recursion.

Fixes various obscure failures with modules randomly failing to compile.

2016-06-27 16:57:30 (1 day ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

System [NT]: Fixed resolver recursion.

Fixes various obscure failures with modules randomly failing to compile.

Sunday 26 June 2016

2016-06-26 10:18:37 (3 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Build [Configure]: Added some compatibility notes.

Saturday 25 June 2016

2016-06-25 09:10:08 (4 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Added some files to ignore.

Friday 24 June 2016

2016-06-24 18:51:13 (4 days ago) by Per Hedbor <ph@opera.com>

Added a new hash() function using siphash.

2016-06-24 11:49:17 (4 days ago) by Per Hedbor <ph@opera.com>

Simplified hash_svalue somewhat

o The return value is now 64bit on 64bit systems
o Utilize the already-existing union if sizeof(float)==sizeof(int)
o Remove check that checks if apply_* works correctly. (debug only, but rather un-needed)
Renamed 'hash' to 'hash_7_8'

Hopefully it will not be used now (this is triggered by yet another
person thinking it's a good string hashing function).

The function is not really suitable for use. The returned values are
higly likely to be the same for similar strings, something that is not
optimal for hashing.

Also added comments about what to use instead (hash_value or one of
the cryptographic hash functions).

It might make sense to add a hash() that actually works, perhaps
siphash?

2016-06-24 11:40:51 (4 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Gmp: Support mpfr 2.x again.

The symbol mpfr_get_z_exp was renamed to mpfr_get_z_2exp during
development of mpfr 3.0.

Thursday 23 June 2016

2016-06-23 15:22:26 (5 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

release number bumped to 8.0.264 by export.pike
release number bumped to 8.0.265 by export.pike

2016-06-23 12:55:45 (5 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Build [Postgres]: Some more path search diagnostics improvements.
Build [Postgres]: Some more path search diagnostics improvements.

2016-06-23 12:45:18 (5 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

release number bumped to 8.0.263 by export.pike
release number bumped to 8.0.262 by export.pike

2016-06-23 12:23:55 (5 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Build [Configure]: Hide some irrelevant output.

Hides the output from type when it fails to find binaries.
Build [Configure]: Hide some irrelevant output.

Hides the output from type when it fails to find binaries.

2016-06-23 12:18:56 (5 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Build [Postgres]: Improved diagnostics for the path search.

Adds a bit of logging to config.log. This should make it easier to
find out why it sometimes doesn't find the include files.

2016-06-23 12:14:57 (5 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Build [Postgres]: Improved diagnostics for the path search.

Adds a bit of logging to config.log. This should make it easier to
find out why it sometimes doesn't find the include files.

2016-06-23 11:01:17 (5 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

GTK2: Set the program id as early as possible.

This fixes the compiler recursing (due to not finding the
corresponding program) when attempting to describe GTK2
object types.

2016-06-23 10:57:41 (5 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

GTK2: Fixed return types for LFUNs create() and destroy().

destroy() having the wrong return type sometimes caused the compiler
to recurse and abort when reporting the error.

Wednesday 22 June 2016

2016-06-22 23:49:35 (6 days ago) by Martin Nilsson <nilsson@fastmail.com>

Silence warning

2016-06-22 16:37:59 (6 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Oracle: Support Oracle 12.
Oracle: Support Oracle 12.

2016-06-22 12:07:16 (6 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Build: Removed redundant anonymous union.

Anonymous unions aren't supported in older C-compilers.

Tuesday 21 June 2016

2016-06-21 19:14:43 (1 week ago) by Per Hedbor <ph@opera.com>

Simplifying and unifying the operator code.

This is only the first step, it is not yet done.

I am just getting somewhat nervous keeping it uncommited.

Some operators are currently not 100% functional on this branch.

But:

o LFUN calling now uses unified functions, so it will most likely tend
to work the same way all the time.

o Overloaded operators are only called with one argument.

Currently it varies if <obj> + a + b is supported.

o f_add is now significantly less special. It's still somewhat
special, but..

+ Removed float sorting. If you want that, do it. As an example
Array.sum did not do it, so it did not work if that fuction is
used, anyway. Just sort before doing addition, especially if you
process the input array in chunks the sorting in `+ is pointless.

'+( 10k floats) now takes 500x less time. Even with the
optimizations for floats-only in f_add disabled.

+ The handling of UNDEFINED + X is unified, it varied before..

Currently all UNDEFINED in the argument list to + are simply
removed. This is incompatible, but not all _that_ likely to lead to
errors.

One example:
UNDEFINED + ({1}) + ({}) + object-with-`+-returning-undefined + ({2})
would return ({1,2}) while UNDEFINED + ({1}) + ({}) + UNDEFINED +
({2}) returned an error.

2016-06-21 19:03:50 (1 week ago) by Per Hedbor <ph@opera.com>

Changed svalues to use an enum for the normal types.

This makes debugging easier.

2016-06-21 18:51:21 (1 week ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Standards.PKCS.PFX: Added minimal AutoDoc markup.

Monday 20 June 2016

2016-06-20 17:03:32 (1 week ago) by Per Hedbor <ph@opera.com>

Use enums for lfun:s for more convenient debug

2016-06-20 12:24:25 (1 week ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

decode_value: Temporarily added some more diagnostics.

This is an attempt to hunt down the cause for some machines in
Pikefarm failing the testsuite with (paths truncated somewhat):

| .../src/post_modules/BSON/testsuite.in:18: Test 4 (shift 1) (CRNL) produced warning.
| .../build/linux-4.6.2-00001-g875e9b9-x86_64/test-install/pike/8.1.4/lib/modules/Crypto.pmod/Random.pmod.o:0: Decode failed: Error while decoding program(.../build/linux-4.6.2-00001-g875e9b9-x86_64/test-install/pike/8.1.4/lib/modules/Crypto.pmod/Random.pmod:23):
| Bad function identifier offset for random_string:function(int(0..2147483647) : string(8bit)): 3 != 0
| 1: mixed a() { return Standards.BSON.decode("\5\0\0\0\0"); }
| 2: mixed b() { return ([]); }

2016-06-20 10:41:27 (1 week ago) by Anders Johansson <anders@roxen.com>

release number bumped to 8.0.261 by export.pike
release number bumped to 8.0.260 by export.pike

Sunday 19 June 2016

2016-06-19 12:38:30 (1 week ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Calendar.Timezone: Increase INF_YEAR from 2050 to 2100.

The timezone definitions have started containing years beyond 2050
(eg the Egypt rule set has rules up to year 2055).

Fixes testsuite failures.

2016-06-19 12:34:27 (1 week ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Calendar.Timezone: Increase INF_YEAR from 2050 to 2100.

The timezone definitions have started containing years beyond 2050
(eg the Egypt rule set has rules up to year 2055).

Fixes testsuite failures.

Saturday 18 June 2016

2016-06-18 23:03:27 (1 week ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Updated to tzdata2016e.
Updated to tzdata2016e.

2016-06-18 17:06:18 (1 week ago) by Martin Nilsson <nilsson@fastmail.com>

FakeFile supports set_nonblocking and set_read_callback
Last two arguments are optional to set_nonblocking.

Friday 17 June 2016

2016-06-17 17:39:06 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

combine_path: Survive string_builder without NUL-terminations.

The string_builder API no longer maintains NUL-termination of the
buffer. This caused combine_path_nt() et al to fail intermittently
due to reading past the buffer end.

Also adds a corresponding test.

Fixes [bug 7723].

2016-06-17 17:34:34 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

combine_path: Survive string_builder without NUL-terminations.

The string_builder API no longer maintains NUL-termination of the
buffer. This caused combine_path_nt() et al to fail intermittently
due to reading past the buffer end.

Also adds a corresponding test.

Fixes [bug 7723].

Thursday 16 June 2016

2016-06-16 19:26:28 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Crypto.NTLM: Added some primitives from [MS-NLMP].

2016-06-16 09:38:40 (2 weeks ago) by Arne Goedeke <el@laramies.com>

Protocols.HTTP.Server: fixed handling of range requests

- The content-length header must contain the length of the
entity body, not the full length of the resource
- The instance-length part of the content-range header should be the
full length of the resource, if known, or '*'

Wednesday 15 June 2016

2016-06-15 16:11:12 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Concurrent.Promise: Fixed potential backtrace in destroy().

destroy() now uses unlocked_failure() to avoid potential recursive
mutex locks.

Also converted some comments to AutoDoc.

Tuesday 14 June 2016

2016-06-14 15:41:54 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Gmp.mpz: Simplify `**().

Let ``**() convert its argument to a bignum and call `**() in it.

Also adds some special cases.

This fixes some remaining testsuite failures.

2016-06-14 15:35:40 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Runtime: Make apply_lfun() support fake lfuns.

2016-06-14 11:20:16 (2 weeks ago) by Arne Goedeke <el@laramies.com>

Compiler: reimplement F_PROTECT_STACK

2016-06-14 11:13:37 (2 weeks ago) by Arne Goedeke <el@laramies.com>

Interpreter: fix potential ref leak in frame_setup_from_fun
Interpreter: cleanup
F_FILL_STACK: check stack margins
low_automat: call frame_return()

frame_return will pop all locals off the stack and make sure that
frames with more than 1 reference are replaced.
Interpret: free locals once during return
Interpreter: suppress warning
Interpreter: added more debug checks
Interpreter: seperate apply functions into several steps
Interpreter: remove mark_sp_base from frame

mark_sp_base was always identical to save_mark_sp and never used.

2016-06-14 11:13:37 (2 weeks ago) by Martin Karlgren <marty@roxen.com>

Use new frame API in low_automap.

2016-06-14 11:13:37 (2 weeks ago) by Arne Goedeke <el@laramies.com>

Interpreter: FALL_THROUGH marker
Interpreter: fix unlink_previous_frame
Interpreter: store save_sp and expandibles as offsets
Interpreter: simplified object initializers
f_map: reuse frame
Interpreter: reset catching_eval_jmpbuf before calling pike code
Interpreter: do not fall through

Monday 13 June 2016

2016-06-13 19:24:55 (2 weeks ago) by Per Hedbor <ph@opera.com>

Made object struct 4 bytes smaller, live with only 32 flags (one current used)
Made array struct 8 bytes smaller on 64 bit machines by decreasing padding.

2016-06-13 17:26:07 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Compiler [Variables]: Fixed integer range check for complex integer types.

Fixes eg the Filesystem.Zip (which uses typedefed integers) tests on
32-bit systems.

2016-06-13 14:55:22 (2 weeks ago) by Per Hedbor <ph@opera.com>

Unused version of mov_imm_mem16 for fast calls branch.

Sunday 12 June 2016

2016-06-12 17:15:29 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Testsuite [Gmp]: Division by float gives float now...

Fixes remaining testsuite failures.

2016-06-12 14:47:18 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Gmp.mpz: Division of bignums with ints should now work again.

Also adds a testsuite test for division by negative integers.

FIXME: Division with negative integers that require rounding
is not tested as the rounding direction differs from
that of corresponding native integers.

2016-06-12 10:35:52 (2 weeks ago) by Arne Goedeke <el@laramies.com>

Interpreter: store save_sp and expandibles as offsets

Saturday 11 June 2016

2016-06-11 15:07:03 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Bignums: Added C-API function low_int64_from_bignum().

This function returns the lowest 64 bits of a bignum without any
clamping.

Also adds some documentation of int64_from_bignum() and protection
against it being called with the wrong type of object.

Friday 10 June 2016

2016-06-10 19:39:06 (3 weeks ago) by Martin Nilsson <nilsson@fastmail.com>

Fix.
Reorder bullet point.
Documentation.

2016-06-10 15:41:00 (3 weeks ago) by Arne Goedeke <el@laramies.com>

Interpreter: remove mark_sp_base from frame

mark_sp_base was always identical to save_mark_sp and never used.

2016-06-10 12:25:00 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Tools.Standalone.precompile: Improved support for older Parser.Pike.

Fixes multiple declarations of f_mpq_cq__backtick_2A_2A_fun_num in Gmp.mpq.

Thursday 09 June 2016

2016-06-09 21:19:41 (3 weeks ago) by Per Hedbor <ph@opera.com>

Handle <bignum> / <float-thingie> (promote to float/rational).

Now mpz(4) / 3.0; is the same as 4 / 3.0.

This is not handled in the other operators yes.

Some cases are handled by the float_promote function in operators.c,
but it is far from complete.

Left to do:

[r]add, [r]subtract, and [r]multiply.

Also, mpf does not handle modulo at all.
Fewer crashed when using libmpmfr

2016-06-09 20:21:30 (3 weeks ago) by Per Hedbor <ph@opera.com>

Also support MPFR in mpq

2016-06-09 18:06:48 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Stdio.Buffer: Support some bignums in add_int32().

FIXME: Ought not to care about the high order bits of the bignum.

FIXME: Add similar support to the other add_int*() as well.

Thanks to Per Cederqvist <ceder@lysator.liu.se> for the report.

Fixes [bug 7712].

Wednesday 08 June 2016

2016-06-08 21:38:24 (3 weeks ago) by Per Hedbor <ph@opera.com>

The quest for operation completeness in mpq continues.

Also fixed % (or (1/3) % (1/3) is perhaps (-2/3) in some universe?)

Now supported:
mq + <whatever> = mpq
mq - <whatever> = mpq
mq * <whatever> = mpq
<float> * mpq = mpq
mq / <whatever> = mpq
mq % <whatever> = mpq

mq ** mq = mpq (unlikely) or float (likely)
mq ** mf = mpq (unlikely) or float (likely)
mq ** f = mpq (unlikely) or float (likely)

mq ** i = mpq
mq ** bi = mpq

<whatever> = int, float, bigint, mpq or mpf

Spot the deviating case?

The issue is that it's rather easy to generate irrational numbers when
doing roots.

Also, floats and mpf types are represented as <mantissa> / <2^exponent>

Since the mantissa can get .. sort of big .. the exponentiation is
stopped by the failsafe in ** (more than 1Gb memory use).

Since floats and mpf are not _really_ the numbers that the conversion
indicates, albeit they sort of are, it might be more reasonable to
change the other operators to also return floats for the float operand
cases.

Whenever somebody really uses mpq we might want to consider that. It
makes most sense for them to work like integers, and do the type
conversion, in my opinon, but that's for another day. :)

This commit unfortunately also includes reindentations.

2016-06-08 19:56:54 (3 weeks ago) by Jonas Wallden <jonasw@roxen.com>

release number bumped to 8.0.259 by export.pike
release number bumped to 8.0.258 by export.pike

2016-06-08 15:47:17 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Testsuite [Standards.URI]: Added some more tests.

2016-06-08 15:44:52 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Standards.URI: Improved handling of non-paths in combine_uri_path().

This avoids prefixing the path with a slash in eg:

Standards.URI("<foo@example.com>", "mailto:<bar@example.com>");
Standards.URI: Avoid triggering the DWIM...
Testsuite [Standards.URI]: Added some more tests.
Standards.URI: Improved handling of non-paths in combine_uri_path().

This avoids prefixing the path with a slash in eg:

Standards.URI("<foo@example.com>", "mailto:<bar@example.com>");

2016-06-08 15:30:45 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Standards.URI: Avoid triggering the DWIM...

2016-06-08 15:17:58 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Standards.URI: Survive base URI's without authority sections.

Fixes "Bad argument 1 to sizeof()." for eg

Standards.URI("<foo@example.com>", "mailto:<bar@example.com>");

2016-06-08 15:14:22 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Standards.URI: Survive base URI's without authority sections.

Fixes "Bad argument 1 to sizeof()." for eg

Standards.URI("<foo@example.com>", "mailto:<bar@example.com>");

Tuesday 07 June 2016

2016-06-07 14:38:22 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Strings: Fixed offset error for ranges of substringed wide strings.

Fixes [LysLysKOM 21761300]/[Pike mailinglist 14546].

2016-06-07 13:38:46 (3 weeks ago) by Anders Johansson <anders@roxen.com>

release number bumped to 8.0.257 by export.pike
release number bumped to 8.0.256 by export.pike

Monday 06 June 2016

2016-06-06 22:38:58 (3 weeks ago) by Peter Bortas <bortas@gmail.com>

release number bumped to 8.0.255 by export.pike
release number bumped to 8.0.254 by export.pike

2016-06-06 20:23:20 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

AutoDoc.PikeParser: Restored some compat with older versions of Pike.

Sunday 05 June 2016

2016-06-05 18:15:55 (3 weeks ago) by Martin Nilsson <nilsson@fastmail.com>

At least this silences warnings on my machine.

2016-06-05 18:09:45 (3 weeks ago) by Martin Nilsson <nilsson@fastmail.com>

Fix error with parsing (nbit) types.

2016-06-05 07:57:32 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

CHANGES: Minor fix.

Saturday 04 June 2016

2016-06-04 16:11:16 (3 weeks ago) by Martin Nilsson <nilsson@fastmail.com>

Silence one (erroneous) warning.
Nicer help.

2016-06-04 14:56:02 (3 weeks ago) by Martin Nilsson <nilsson@fastmail.com>

At least Caudium is inactive since 2012.

2016-06-04 09:07:37 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Gmp.mpq: Allow initialization with Gmp.mpz objects.

Friday 03 June 2016

2016-06-03 18:19:21 (4 weeks ago) by Per Hedbor <ph@opera.com>

Mention ** operator in changes.

2016-06-03 18:15:32 (4 weeks ago) by Per Hedbor <ph@opera.com>

Several more ** cases implemented:

int ** mpq -> mpq or float
float ** mpq -> float
mpq ** int -> mpq
mpq ** float -> mpq or float
mpq ** mpq -> mpq or float
mpz ** mpf -> float

I am open for suggestions on whether or not the type promoting going
on is sane or not.

It's at least slightly logical.

2016-06-03 16:13:59 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

CHANGES: Updated with some changes since Pike 8.0.240 (release 3).

2016-06-03 16:05:20 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

_Roxen.HeaderParser: Inverted meaning of last argument to feed().

This makes the default value follow the usual calling conventions
where UNDEFINED is equivalent to a left out value.

2016-06-03 16:02:45 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

_Roxen.HeaderParser: Inverted meaning of last argument to feed().

This makes the default value follow the usual calling conventions
where UNDEFINED is equivalent to a left out value.

Thursday 02 June 2016

2016-06-02 17:33:45 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Concurrent.Future: Added timeout().

Wednesday 01 June 2016

2016-06-01 15:51:09 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Concurrent.Promise: Added maybe_failure().

Tuesday 31 May 2016

2016-05-31 18:58:21 (4 weeks ago) by Per Hedbor <ph@opera.com>

Modified Placeholder.Expr to not include non-argument arguments.

2016-05-31 18:06:52 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Concurrent.Promise: Added unlocked variants of success() and failure().

2016-05-31 15:11:15 (4 weeks ago) by Build system <distmaker@roxen.com>

release number bumped to 946 by export.pike
release number bumped to 947 by export.pike

2016-05-31 11:17:20 (4 weeks ago) by Jonas Wallden <jonasw@roxen.com>

release number bumped to 8.0.253 by export.pike
release number bumped to 8.0.252 by export.pike

2016-05-31 10:54:21 (4 weeks ago) by Magnus Holmgren <holmgren@lysator.liu.se>

Documentation breakage

When preparing a new Debian package of 8.0.240, I noticed that some
documentation disappeared, apparently due to the following. The error
in Nettle.Sign is already corrected but not the others, AFAICT, and
I'm guessing that @exp should be @expr. Patch below, which I home
someone can apply right away.

ERROR: <Invalid error container: Tools.AutoDoc.AutoDocError(SourcePosition(File: /build/pike8.0-8.0.240/src/modules/Gmp/mpz_glue.c, lines: 668..668), "DocParser", "@exp cannot be used like this: @exp{ ... @}")>

ERROR: <Invalid error container: Tools.AutoDoc.AutoDocError(SourcePosition(File: /build/pike8.0-8.0.240/lib/modules/__builtin.pmod/Nettle.pmod/Sign.pike, lines: 102..102), "DocParser", "@item is not allowed inside @array (allowed children are: @elem)")>

ERROR: <Invalid error container: Tools.AutoDoc.AutoDocError(SourcePosition(File: /build/pike8.0-8.0.240/lib/modules/Crypto.pmod/ECC.pmod, lines: 286..286), "DocParser", "@item is not allowed inside @array (allowed children are: @elem)")>

ERROR: <Invalid error container: Tools.AutoDoc.AutoDocError(SourcePosition(File: /build/pike8.0-8.0.240/lib/modules/Crypto.pmod/RSA.pmod, lines: 368..368), "DocParser", "@item is not allowed inside @array (allowed children are: @elem)")>
Documentation breakage

When preparing a new Debian package of 8.0.240, I noticed that some
documentation disappeared, apparently due to the following. The error
in Nettle.Sign is already corrected but not the others, AFAICT, and
I'm guessing that @exp should be @expr. Patch below, which I home
someone can apply right away.

ERROR: <Invalid error container: Tools.AutoDoc.AutoDocError(SourcePosition(File: /build/pike8.0-8.0.240/src/modules/Gmp/mpz_glue.c, lines: 668..668), "DocParser", "@exp cannot be used like this: @exp{ ... @}")>

ERROR: <Invalid error container: Tools.AutoDoc.AutoDocError(SourcePosition(File: /build/pike8.0-8.0.240/lib/modules/__builtin.pmod/Nettle.pmod/Sign.pike, lines: 102..102), "DocParser", "@item is not allowed inside @array (allowed children are: @elem)")>

ERROR: <Invalid error container: Tools.AutoDoc.AutoDocError(SourcePosition(File: /build/pike8.0-8.0.240/lib/modules/Crypto.pmod/ECC.pmod, lines: 286..286), "DocParser", "@item is not allowed inside @array (allowed children are: @elem)")>

ERROR: <Invalid error container: Tools.AutoDoc.AutoDocError(SourcePosition(File: /build/pike8.0-8.0.240/lib/modules/Crypto.pmod/RSA.pmod, lines: 368..368), "DocParser", "@item is not allowed inside @array (allowed children are: @elem)")>

2016-05-31 07:36:12 (4 weeks ago) by Martin Nilsson <nilsson@fastmail.com>

Fixed a warning.
Fixed a warning.

Monday 30 May 2016

2016-05-30 20:37:45 (4 weeks ago) by Per Hedbor <ph@opera.com>

Added C++11-alike Function.bind functionality.

This is somewhat similar to Function.curry, but more dynamic.

However, the usage is somewhat cumbersome, you have to use
placeholders if you want anything except static arguments.

As an example:

import Function.Placeholder;
function add_6 = Function.bind( `+, arg0, 6 );

This returns a function that adds 6 to it's only argument (in that
order, unlike curry which would be the other way around)

Function.Placeholder has these useful indices:

o argN -- takes argument N from the call
o rest -- All unused arguments (by argN, Arg(N) or Splice)
o Splice(start[,end]) arguments from start (if end is not specified, all arguments)
o Arg(N) similar to argN, but N can be negative
o Expr(func[,splice]) Call func with arguments, use return value
if splice is true, returns an array to be @:ed.

Things to do:

The syntax is rather horrid, really.
Is there a way to get a more reasonable one?
Handle 8bit being returned as a single token.
Added `** knowledge to the autodoc parser.

2016-05-30 20:03:40 (4 weeks ago) by Jonas Wallden <jonasw@roxen.com>

release number bumped to 8.0.251 by export.pike
release number bumped to 8.0.250 by export.pike

2016-05-30 17:56:48 (4 weeks ago) by Grzegorz Malachowski <gmalachowski@opera.com>

Allow preservation of case in headers in HeaderParser.

This is needed when acting as a proxy sine some servers treat headers
as case-sensitive.
Allow preservation of case in headers in HeaderParser.

This is needed when acting as a proxy sine some servers treat headers
as case-sensitive.

2016-05-30 17:39:14 (4 weeks ago) by Per Hedbor <ph@opera.com>

Significantly faster reduce and int64_from_bignum when sizeof long == sizeof int_type

2016-05-30 17:08:17 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Runtime [Multisets]: Fixed assertion failure.

Lookup with objects with lfun::`<() et al in non-empty multisets
containing non-comparable items (not objects or functions) could
cause assertion failures.
Runtime [Multisets]: Fixed assertion failure.

Lookup with objects with lfun::`<() et al in non-empty multisets
containing non-comparable items (not objects or functions) could
cause assertion failures.

Sunday 29 May 2016

2016-05-29 20:41:55 (4 weeks ago) by Martin Nilsson <nilsson@fastmail.com>

More compilable.

2016-05-29 16:10:32 (4 weeks ago) by Pontus Östlund <ponost@roxen.com>

Just some Pike doc fixes.
Added "pragma" as known #macro

2016-05-29 14:48:51 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Gmp.mpz: Restored the 1GB memory cut off in pow().

Gmp does NOT handle out of memory gracefully (GNU MP 6.1.0 manual):

There's currently no defined way for the allocation functions to
recover from an error such as out of memory, they must terminate
program execution. A longjmp or throwing a C++ exception will have
undefined results. This may change in the future.

Fixes multiple testsuite failures.

Saturday 28 May 2016

2016-05-28 15:08:37 (1 month ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Stdio.File: Fixed NULL-dereference in set_buffer_mode().

Friday 27 May 2016

2016-05-27 16:02:27 (1 month ago) by Per Hedbor <ph@opera.com>

(0..255) -> 8bit and similar changes

This means that buffer.cmod now needs a pike 8.0 (or newer)
precompiler.

2016-05-27 15:58:50 (1 month ago) by Per Hedbor <ph@opera.com>

int(range) is now stored in a native integer if the range will fit.

Since "large" is stored as INT32 max/min it tends to always fit if the
range is not unbound.

This means that a variable set as int(0..255) will no longer be able
to store values bigger than or smaller than the size of the native
integer, which is an incomatible change, albeit a fairly logical one.

2016-05-27 14:06:02 (1 month ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Tools.Standalone.precompile: Support non-beeding edge Parser.Pike.

Thursday 26 May 2016

2016-05-26 17:27:35 (1 month ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Diagnostics [Sockets]: Added macro SOCKWERR().

SOCKWERR() is enabled via SOCK_DEBUG.

Converted quite a few disabled debug outputs to using SOCKWERR().

Wednesday 25 May 2016

2016-05-25 19:19:19 (1 month ago) by Per Hedbor <ph@opera.com>

Updated Parser.Pike.tokenize

It now supports <x>bit, `** and the "new" getter/setter syntax.
Added knowledge about the new lfuns to the precompiler.
The precompiler now surives 8bit being parsed as a single token.

Also write a syntax error instead of throwing an error if parsing fails.

We might want to fix this in more locations..

Getting a huge backtrace from the internals of the precompiler is
usually not that helpful.

2016-05-25 19:07:07 (1 month ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Stdio.File: Support non-empty buffers in set_buffer_mode().

Stdio.File()->set_buffer_mode() now has a defined behaviour for
adding and removing buffers that aren't empty.

The behaviour is the same as for set_buffer_mode() in SSL.File.

2016-05-25 16:25:57 (1 month ago) by Anders Johansson <anders@roxen.com>

release number bumped to 8.0.249 by export.pike
release number bumped to 8.0.248 by export.pike

2016-05-25 15:53:36 (1 month ago) by Pontus Östlund <ponost@roxen.com>

Tools.Standalone.pike_to_html: Better handling of macros. Added the keyword auto and added some new root modules

2016-05-25 10:36:31 (1 month ago) by Anders Johansson <anders@roxen.com>

release number bumped to 8.0.247 by export.pike
release number bumped to 8.0.246 by export.pike

Tuesday 24 May 2016

2016-05-24 12:30:58 (1 month ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

SSL.File: Handle non-empty buffers in set_buffer_mode().

Monday 23 May 2016

2016-05-23 17:05:57 (1 month ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Stdio.Buffer: Some cosmetic changes.

Sunday 22 May 2016

2016-05-22 22:42:18 (1 month ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Documentation [SSL.File]: Document get_server_name().

Also fixes a documentation typo.

Saturday 21 May 2016

2016-05-21 19:33:08 (1 month ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

SSL.File: Added support for set_buffer_mode().

Adds support for user provided buffers in both directions.

Updates the {read,write,close}_callbacks to the current conventions of
Stdio.File (this includes defaulting the callback_id to this_object()).

Also adds some corresponding tests to the testsuite.

2016-05-21 12:37:55 (1 month ago) by Marcus Agehall <agehall@gmail.com>

Let's use variants for the callbacks to avoid having different names for them.

2016-05-21 12:28:31 (1 month ago) by Marcus Agehall <agehall@gmail.com>

More verbose %O formatting.
Run SSLPort connections without buffer mode.

2016-05-21 11:49:57 (1 month ago) by Marcus Agehall <agehall@gmail.com>

Better typing in functionn signatures.

Patch from frigolit@frigolit.net

2016-05-21 10:37:38 (1 month ago) by Marcus Agehall <agehall@gmail.com>

Don't use arrays in funny ways - just output the headers.
Added client mode to Websockets.
Removed unused class.
Make full use of buffers when parsing incoming frames.

2016-05-21 08:54:02 (1 month ago) by Martin Nilsson <nilsson@fastmail.com>

Compat and test for glob changes.

Friday 20 May 2016

2016-05-20 22:04:28 (1 month ago) by Pontus Östlund <ponost@roxen.com>

Protocols.HTTP.Promise: The arguments are now passes as an object of class Arguments for better type cheking and more coherent method signatures for the request methods.
Also some refactoring.

Web.Api.Api: Using Protocols.HTTP.Promise for the requests if available and applicable.

2016-05-20 17:57:55 (1 month ago) by Marcus Agehall <agehall@gmail.com>

Added WebSocket ports to the known port numbers.

2016-05-20 16:17:21 (1 month ago) by Pontus Östlund <ponost@roxen.com>

Protocols.HTTP.Session: Added the port to the host header if the port isn't the standard port. Redirects on non-standard ports broke.

2016-05-20 15:49:18 (1 month ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Standards.IIM: Fixed typo.

Also adds some minor documentation.

Thursday 19 May 2016

2016-05-19 17:37:32 (1 month ago) by Marcus Agehall <agehall@gmail.com>

Added client mode for WebSocket module.
Added WebSocket ports to the known port numbers.

2016-05-19 15:45:30 (1 month ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Math: Fixed typo.

2016-05-19 15:31:10 (1 month ago) by Martin Nilsson <nilsson@fastmail.com>

Only allow pow on int|float|object. CID 1362005

2016-05-19 14:51:08 (1 month ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

release number bumped to 8.0.244 by export.pike
release number bumped to 8.0.245 by export.pike

[permalink]

Bugs mentioned

  2012RESOLVEDShared arg-cache failed
  2050RESOLVED2.1.265 - Install Fails
  2055RESOLVEDconfigurations/server_version not updated upon server update
  2100ASSIGNEDPath normalization needed for Mac OS X
  7712RESOLVEDStdio.Buffer()->add_int32(0xffffffff) does not work on 32-bit systems
  946RESOLVEDstack_size macro conflicts with system defined macro on MacOSX.
  947RESOLVEDgtext doesn't support taget
Bugs? Suggestions?