Browse source

Changelog

Query
From:
To:
Branch:
Path:
Message:
BugID:
User: +
Format:
: 4 checkins (+69/-4) by 2 people : 50 checkins (+2577/-2444) by 2 people : 127 checkins (+728/-587) by 4 people : 67 checkins (+2296/-1341) by 3 people : 1 checkin (+37/-0) by Henrik Grubbström (Grubba) <grubba@grubba.org> : 171 checkins (+6981/-7588) by 5 people : 4 checkins (+27/-20) by 2 people : 11 checkins (+83/-45) by 3 people : 67 checkins (+255/-170) by 5 people : 218 checkins (+390/-270) by 3 people : 25 checkins (+172/-167) by 4 people : 42 checkins (+249/-3017) by 3 people : 114 checkins (+1775/-821) by 3 people : 64 checkins (+804/-411) by 4 people : 33 checkins (+1089/-225) by 4 people : 66 checkins (+1916/-951) by 5 people : 3 checkins (+12/-6) by 2 people : 3 checkins (+28/-25) by Henrik Grubbström (Grubba) <grubba@grubba.org> : 21 checkins (+741/-148) by 3 people : 25 checkins (+1547/-208) by 4 people : 84 checkins (+2615/-479) by 4 people : 326 checkins (+1568/-2014) by 3 people : 456 checkins (+11081/-2411) by 5 people : 107 checkins (+1334/-144) by 6 people : 5 checkins (+54/-29) by 2 people : 4 checkins (+32/-23) by 2 people : 16 checkins (+1198/-364) by 2 people : 17 checkins (+2212/-514) by 2 people : 23 checkins (+365/-260) by 3 people : 22 checkins (+671/-2669) by 5 people : 8 checkins (+113/-65) by 4 people : 8 checkins (+63/-97) by 2 people : 11 checkins (+292/-156) by 4 people : 10 checkins (+146/-66) by 3 people : 3 checkins (+7/-9) by 2 people : 5 checkins (+98/-20) by 2 people : 63 checkins (+214/-3983) by 4 people : 2 checkins (+9/-10) by 2 people : 1 checkin (+3/-2) by Henrik Grubbström (Grubba) <grubba@grubba.org> : 1 checkin (+59/-56) by Henrik Grubbström (Grubba) <grubba@grubba.org> Lines added/removed recently

Yesterday; Sunday 21 September 2014

2014-09-21 14:20:55 (22 hours ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

SSL.Constants: Converted list of RFCs into a checklist.

This is to make it easier to keep track of what has been
implemented or not.

FIXME: Should we move this to a separate file
(eg implementation-notes.txt)?

Saturday 20 September 2014

2014-09-20 15:54:16 (2 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Gdbm: Fixed some documentation typos.

Friday 19 September 2014

2014-09-19 19:18:23 (3 days ago) by Martin Nilsson <nilsson@opera.com>

&x[0] -> x

2014-09-19 09:29:20 (3 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

SSL.File: Use an IOBuffer as read_buffer too.

Switches from using a String.Buffer to an Stdio.IOBuffer for
read_buffer.

Thursday 18 September 2014

2014-09-18 19:01:45 (4 days ago) by Per Hedbor <ph@opera.com>

Added read_sint for read signed integer.

The reverse might be more obvious (read_int for signed, read_uint for
unsigned), but at least it exists now.

Also fixed so that add_int works for all negative numbers, and
optimized it rather significantly for bignums (it no longer creates a
string copy of the bignum value).

Also added a simple add_padding() function to add a few bytes of data
set to a specific value (basically memset)

2014-09-18 17:39:41 (4 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

IOBuffer: Use add_ref().

2014-09-18 11:29:47 (4 days ago) by Build system <distmaker@roxen.com>

release number bumped to 881 by export.pike
release number bumped to 880 by export.pike

2014-09-18 07:11:48 (4 days ago) by Martin Nilsson <nilsson@opera.com>

Removed compat support for Pike 7.4.

Wednesday 17 September 2014

2014-09-17 16:00:35 (5 days ago) by Tobias S. Josefowitz <tobij@tobij.de>

signal_handler: don't "randomly" change errno in receive_sigchild()

2014-09-17 15:51:22 (5 days ago) by Tobias S. Josefowitz <tobij@tobij.de>

signal_handler: don't "randomly" change errno in receive_sigchild()

2014-09-17 14:37:00 (5 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Parser.HTML: Added mode quote_stapling().

This is a compatibility mode with the Pike 7.8 and earlier Parser.HTML.

Do not use if you can avoid it.

2014-09-17 14:29:29 (5 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Parser.HTML: Reduce pushing of empty strings.

The empty string was pushed before and after every quoted attribute.

This delays pushing of the empty string until after the attribute
value has been parsed and it was empty. This avoids having to call
f_add() for every quoted attribute to concatenate the strings.

2014-09-17 10:29:22 (5 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

SSL.Constants: Encrypt-then-MAC is now RFC 7366.

Updated reference. Also adds a note about the "Prohibit RC4" draft.

Tuesday 16 September 2014

2014-09-16 14:47:22 (6 days ago) by Build system <distmaker@roxen.com>

release number bumped to 878 by export.pike
release number bumped to 879 by export.pike

2014-09-16 09:39:25 (6 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

SSL.File: Use only nonblocking operations internally.

Always keep the internal stream in nonblocking mode to
eliminate any risk of hanging in eg IOBuffer()->output_to().

Monday 15 September 2014

2014-09-15 19:44:04 (7 days ago) by Per Hedbor <ph@opera.com>

Do not show compile errors for tests testing compile errors.
Updated the Parser.HTML testsuite

It now assumes that ending a quote also ends the argument (or attribute name).

We are still very far from a true HTML5 parser, but at least this makes
parsing live websites somewhat possible (as an example, yandex.ru had

<tag style=...id=...>)

2014-09-15 18:30:36 (7 days ago) by Per Hedbor <ph@opera.com>

Fixed signed/unsigned warning
Allow adding chunks bigger than 2^32 at a time using add() and friends.

Also, instead of saying you are trying to read too much when reading -<whatever> bytes
using read or try_read you will now get an error indicating you are reading a negative number of bytes, which is hard.

I guess it might unread(), but that would be highly unexpected.

2014-09-15 18:27:53 (7 days ago) by Per Hedbor <ph@opera.com>

Fixed the read and write callback types.

This makes them more usable in strict_types mode.

Since the types are now so long they use a typedef.

2014-09-15 15:46:56 (7 days ago) by Per Hedbor <ph@opera.com>

No, actually, it is not reached.

This saves a few bytes of binary size. :)
Do not trigger the write callback again when nothing is written

This saves the user from checking sizeof(buffer) before doing buffer->output_to(...)

2014-09-15 12:43:34 (7 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

IOBuffer: Added try_read().

This is an analogue to Stdio.File()->read().

2014-09-15 12:31:51 (7 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

mkpeep: Fixed warning.

2014-09-15 10:07:06 (1 week ago) by Martin Karlgren <marty@roxen.com>

Win32: Map ERROR_DIRECTORY to ENOTDIR. Fixes [Bug 7271].

Sunday 14 September 2014

2014-09-14 15:40:56 (1 week ago) by Stephen R. van den Berg <srb@cuci.nl>

Simplify code, speed up fast path.
Eliminate add_short from testsuite.

2014-09-14 13:55:51 (1 week ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

IOBuffer: Fixed fatal "Invalid io_rewind_on_error nesting".

The value in io->locked_move was off by one.

2014-09-14 11:25:51 (1 week ago) by Per Hedbor <ph@opera.com>

Revert "IOBuffer: Optimise and fix range checks."

This reverts commit 91460a41b2b68b9d745827a07b6762adc99e3ed9.

This introduced several errors, including some that causes buffer overruns.
It also made the code biger on average (just check using size).

Please do not change the math unless you are very certain it will
work.

Also, please trust the compiler, both to unroll loops even if it does
not make sense and to optimize obvious comparisons, yes?

Obvious example: check_avail_mul suddenly is pointless.

The whole idea with that function is to _safely_ check if A*B is bigger than the buffer.

Consider A*B >being > NATIVE_INT_MAX.

2014-09-14 11:16:55 (1 week ago) by Stephen R. van den Berg <srb@cuci.nl>

IOBuffer: Optimise and fix range checks.

Eliminates some of the recursions.
We object to objekt.
IOBuffer.cstring to parse \0 terminated C-strings.

2014-09-14 10:41:35 (1 week ago) by Per Hedbor <ph@opera.com>

Also removed add_short
Added a few more amd64 opcodes, the comparisons.

This adds support for F_EQ, F_NE, F_LE, F_GE, G_LT and F_GT.

They could be better, it would be simple to add floats, as an example,
especially in F_EQ and F_NE (they /almost/ work for floats, nan
complicates things however).

2014-09-14 02:48:26 (1 week ago) by Martin Nilsson <nilsson@opera.com>

Removed add_byte. We have add_int8.

2014-09-14 00:27:05 (1 week ago) by Martin Nilsson <nilsson@opera.com>

Fixed the decoder callback prototype and the Sequence decode_primitive (is this every called?)

2014-09-14 00:25:03 (1 week ago) by Martin Nilsson <nilsson@opera.com>

Better debug.

Saturday 13 September 2014

2014-09-13 23:56:59 (1 week ago) by Martin Nilsson <nilsson@opera.com>

Added some __deprecated__

2014-09-13 23:51:48 (1 week ago) by Martin Nilsson <nilsson@opera.com>

Remove redundant check.

2014-09-13 12:06:25 (1 week ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

SSL.File: Use an IOBuffer to buffer write()'s.

This changes the write_buffer implementation from using an array(string)
to using IOBuffer.

Caveat: It is unknown whether this is dead-lock free in
threaded blocking mode.

2014-09-13 02:15:33 (1 week ago) by Martin Nilsson <nilsson@opera.com>

We apparently don't need the end_decode_constructed callback.

2014-09-13 02:08:48 (1 week ago) by Martin Nilsson <nilsson@opera.com>

Use Stdio.IOBuffer instead of ADT.struct

2014-09-13 01:52:21 (1 week ago) by Martin Nilsson <nilsson@opera.com>

Unused local variable.

Friday 12 September 2014

2014-09-12 15:09:59 (1 week ago) by Marcus Cromnow <marcusc@opera.com>

Workaround for precompiler issue in IOBuffer.

The precompiler generates invalid code and fails to compile
when PRECOMPILE_API_VERSION < 5. Generated code ends up inside
the #ifdef-clause.

2014-09-12 13:48:38 (1 week ago) by Per Hedbor <ph@opera.com>

Improved performance in output_to noticeably

Also, do not crash if other threads use the buffer while output_to has
been called.

It was very very intentionally not threaded. If we _need_ thread
support (say, we want to support writing to blocking files in the
background) the buffer class has to be rewritten quite a lot.

Most importantly it can not allow anyone to touch it while the other
thread is using the memory, which in turn means that it has to be
refcounted, and operations on it while refs > 1 will have to be a big
no-no, or copy all data.

It is rather hard to use the buffer if it behaves like that, mainly
when it is used as an output buffer for a file (it is assumed that the
add functions are called to add output then, and if the writing is
done in a thread it will be likely to cause issues)

Hence the total lack of THREADS_ALLOW in the buffer object. The
alternative is to locking to all buffer functions.

Or, I guess, we could just leave it as is and hope nobody does
antything "mean".

Alternatively, use the kernel async_write code on linux, that would
make output_to nonblocking even for blocking files on that platform,
and hopefully the memory will be copied when the system call returns,
and it is thus safe to change it.

The main issue with output_to + write + threads is that the threads
are enabled before the system call has copied the data, and you will
thus get a spurious error if the buffer is reallocated in another
thread.

2014-09-12 13:42:43 (1 week ago) by Per Hedbor <ph@opera.com>

Make compile errors in tests display the correct line.
When we know the types we can optimize pop and friends. Use that.
Since IOBuffer::_size_object now show the actual memory used a test had to be changed

2014-09-12 13:40:32 (1 week ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

IOBuffer: Improved support for threading in output_to().

2014-09-12 07:26:17 (1 week ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Precompiler: Make the object subtype available.

For object arguments the subtype (ie inherit number) is now
made available as <name>_inh_num.

Piggy-backs on the recent format version bump.

2014-09-12 00:04:32 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

Don't allow the GNU TLS workaround to remove all certificates.

Thursday 11 September 2014

2014-09-11 18:26:15 (2 weeks ago) by Per Hedbor <ph@opera.com>

As it turns out io_trigger_output is inlined in every location using io_append.

Fixed that.

2014-09-11 18:18:39 (2 weeks ago) by Per Hedbor <ph@opera.com>

Saved 200 bytes binary size and made the code faster.

One lesson learned: pop_n_elems is rather big.

2014-09-11 17:59:07 (2 weeks ago) by Per Hedbor <ph@opera.com>

Use the get-memobj-pointer function and some other cleanups.

The compiled code is now 20% smaller.

2014-09-11 17:47:36 (2 weeks ago) by Per Hedbor <ph@opera.com>

Added the function 'get_memory_object_memory'.

It is used to get the length, address and size shift of a memory/buffer
object storage.

2014-09-11 15:51:28 (2 weeks ago) by Per Hedbor <ph@opera.com>

Removed unused function

That does not compile with a C++ compiler, incidentally

2014-09-11 15:38:00 (2 weeks ago) by Per Hedbor <ph@opera.com>

Let end quotes actually end arguments.

This disallows the somewhat strange concatenation of arguments by using different quote
character that was allowed before, but is HTML compatible.

<a href="test"foo=bar> is to be considered two arguments.

2014-09-11 10:49:30 (2 weeks ago) by Arne Goedeke <el@laramies.com>

Stdio.IOBuffer: wrong return type of read_int32

2014-09-11 10:30:14 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

IOBuffer: Support file objects with overloaded write().

FIXME: Support subtyped file objects?

2014-09-11 09:56:31 (2 weeks ago) by Stephen R. van den Berg <srb@cuci.nl>

Remove String.Buffer.addat().
Revert to String.Buffer simplex.

Lost functionality needs to be found in IOBuffer.

2014-09-11 09:49:27 (2 weeks ago) by Stephen R. van den Berg <srb@cuci.nl>

Compilerhints.
The compiler will do this implicitly.
Fix typos.

2014-09-11 09:35:55 (2 weeks ago) by Stephen R. van den Berg <srb@cuci.nl>

Fixed, so drop note.

2014-09-11 09:33:10 (2 weeks ago) by Stephen R. van den Berg <srb@cuci.nl>

Improve glue with libpq.

2014-09-11 09:25:25 (2 weeks ago) by Stephen R. van den Berg <srb@cuci.nl>

Improve glue with libpq.

2014-09-11 00:22:22 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

IOBuffer: Use ptrdiff_t instead of ssize_t.

ptrdiff_t is C89, while ssize_t is POSIX. As we support some
non-POSIX architectures, use the more portable type.

Wednesday 10 September 2014

2014-09-10 23:21:15 (2 weeks ago) by Tobias S. Josefowitz <tobij@tobij.de>

Revert "precompile: new nonstatic flag"

That sort of breaks with older precompiles...

This reverts commit f7f9f93cb2ea4d1ba6cd429eb111844b54a347d9.

2014-09-10 23:09:47 (2 weeks ago) by Tobias S. Josefowitz <tobij@tobij.de>

precompile: new nonstatic flag

2014-09-10 22:58:02 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Build: More precompiler DEFAULT_CMOD_STORAGE fixes.

Some symbols that need to not be static:

backend.cmod:Backend_program
builin.cmod:f_backtrace()
iterators.cmod: f_get_iterator()

Some symbols that were forward declared:

post_modules/Nettle/cipher.cmod:f_Nettle_DES3_fix_parity()
post_modules/Shuffler/shuffler.cmod:Shuffler_program

2014-09-10 22:35:35 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Gmp: Fix compilation issue with the new precompiler.

The DEFAULT_CMOD_STORAGE macro defaults to "static" with
the new precompiler, but in Gmp eg the *_program constants
are cross-referenced between different cmod files, and so
must not be declared static.

2014-09-10 22:03:17 (2 weeks ago) by Per Hedbor <ph@opera.com>

Added a few read_int<size>() functions for common int sizes.

2014-09-10 18:27:02 (2 weeks ago) by Per Hedbor <ph@opera.com>

Moved some common code to functions.

Also use the new "map variable from structures" support to remove
two getters.
Allow the mapping of variables from inside structures added using CVAR.

This is done by simply writing the name of the structure followed by
"." and then the member name.

Bumped PRECOMPILE_API_VERSION by one.

This shows a somewhat irritating shortcomong of api_version, however:
This kind of variables are supported even when cpp prefix support is
not.

2014-09-10 10:24:00 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Revert "Store new malloced value instead."

This reverts commit a9693064380ac62005cdd28f22b447902644a72f.

As mentioned in [LysLysKOM 20949405] (which probably hasn't been
exported correctly to the mailinglist yet):

The old code looks correct to me.

* Restore s->s->len to the value it had when s->s was allocated
(aka s->malloced).

* Reallocate s->s with the new (now known) final length.

The question does however arise whether the code is correct on
realloc failure.

2014-09-10 10:14:20 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

IOBuffer: Fixed string leak.

Also fixes some potential related leaks.

Tuesday 09 September 2014

2014-09-09 21:49:32 (2 weeks ago) by Stephen R. van den Berg <srb@cuci.nl>

Shuffle elements around so that IOBuffer can access it easier.

2014-09-09 21:11:04 (2 weeks ago) by Stephen R. van den Berg <srb@cuci.nl>

Export unlink_pike_string.
Silence warnings.
Resistance is futile, ye shall be assimilated.

String.Buffer on steroids; embraces and extends IOBuffer.
Giant kludge to support 2^32-1 unsigned values.
Nobody needs this function.
NUL terminate shared strings in just a single spot.
Store new malloced value instead.
Faster code.
Correct calculation for string sizes.

2014-09-09 10:15:37 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

IOBuffer: Propagate errno to the file object on error.

2014-09-09 09:58:33 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

IOBuffer: Return -1 from output_to() on write error.

Monday 08 September 2014

2014-09-08 18:24:17 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

IOBuffer: Fixed some AutoDoc markup issues.

2014-09-08 18:20:37 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

IOBuffer: Survive cyclic arrays.
IOBuffer: Fixed warning.

2014-09-08 18:17:51 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

IOBuffer: Fixed compilation error --with-rtldebug.

2014-09-08 17:53:42 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

SSL: Fixed typo in comment.

2014-09-08 17:11:53 (2 weeks ago) by Per Hedbor <ph@opera.com>

Fixed autodoc error

2014-09-08 16:46:40 (2 weeks ago) by Per Hedbor <ph@opera.com>

IOBuffer: Added some more tests and fixed errors found

At least almost all functions in IOBuffer have some basic tests now..

2014-09-08 16:25:38 (2 weeks ago) by Per Hedbor <ph@opera.com>

Fixed IOBuffer.add_int

2014-09-08 16:13:27 (2 weeks ago) by Per Hedbor <ph@opera.com>

Fixed tests for IOBuffer to actually do something
IOBuffer: Cleanup of some code.

2014-09-08 14:30:17 (2 weeks ago) by Per Hedbor <ph@opera.com>

Some IOBuffer work

o Made all (I think) functions atomic. Either they work or they do
nothing (except throw an error or return 0).

o One minor optimization to avoid copies when strings/system.memory
object etc are added to an empty buffer. Unless you add more data
the buffer is just moved to point to the object that was just added.
The malloced buffer is still kept around, however.

o Added a very very basic testsuite for IOBuffer. More to come.
This sleep does not seem to be needed on modern linuxes.

This makes the socktest about 20x faster.

2014-09-08 14:07:54 (2 weeks ago) by Per Hedbor <ph@opera.com>

Ignore response_and_finish if the FD has been closed

Sunday 07 September 2014

2014-09-07 21:59:23 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

Make the code a bit smaller.
Fail signatures with the wrong size. This may be a compatibility issue.

2014-09-07 21:41:38 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

Tests for the RSA-padding bug in pkcs_verify.

2014-09-07 15:58:03 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

IOBuffer: Some documentation fixes.

Saturday 06 September 2014

2014-09-06 13:58:05 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

Added some references to PKCS#1

2014-09-06 09:19:20 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Optimizer: Syntax cleanup of some rules.

2014-09-06 09:16:06 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Optimizer: Added more rules for negation and complement.

2014-09-06 02:55:09 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

Signatures needs to be padded to the full size.

2014-09-06 02:05:51 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

Always make the certificate the default certificate.

Friday 05 September 2014

2014-09-05 17:13:57 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

IOBuffer: Improved error recovery for read_h{string,buffer}().

Don't advance the buffer pointers if there's not enough data.

NB: Not a 100% robust. It will fail if io_avail() throws errors,
or if the holerith length is negative or too large.

2014-09-05 13:43:43 (2 weeks ago) by Per Hedbor <ph@opera.com>

Disable the "new" constants for now. These seem to be Gnome1 only.

2014-09-05 12:37:13 (2 weeks ago) by Per Hedbor <ph@opera.com>

Some documentation tweaks

2014-09-05 12:22:10 (2 weeks ago) by Build system <distmaker@roxen.com>

release number bumped to 877 by export.pike
release number bumped to 876 by export.pike

2014-09-05 12:16:04 (2 weeks ago) by Arne Goedeke <el@laramies.com>

Valgrind: suppress some warnings
strings: make efun names static
strings: make simple constants static
strings: create static strings in more places

2014-09-05 12:12:52 (2 weeks ago) by Arne Goedeke <el@laramies.com>

Valgrind: suppress some warnings
block_allocator: do not keep empty pages around

In certain cases the block allocator kept around free pages. This
happened with markers used by the gc.

2014-09-05 11:40:16 (2 weeks ago) by Chris Angelico <rosuav@gmail.com>

Fix the documented inheritance for GTK2.CellRendererSpin
Enable more GTK2 constants
GTK2 docs: Add a space to the warning messages to make the output easier to parse
Fix warnings on GTK2 docs generation
Add property list for GTK2.CellRendererSpin

2014-09-05 04:39:29 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Typechecker: Fix indexing of this_program.

Program types are often converted to the corresponding function
type. Make sure to allow indexing of such types if they look
like program types.

Thanks to Chris Angelico <rosuav@gmail.com> for the report.

Fixes [LysLysKOM 20764345]/[Pike mailinglist 13967].

2014-09-05 04:38:15 (2 weeks ago) by Per Hedbor <ph@opera.com>

Removed stray '1' from the get_all_args format
(cherry picked from commit eee075e0b10187bef49a72bec04e1de0048ed66b)

2014-09-05 04:07:05 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Typechecker: Fix indexing of this_program.

Program types are often converted to the corresponding function
type. Make sure to allow indexing of such types if they look
like program types.

Thanks to Chris Angelico <rosuav@gmail.com> for the report.

Fixes [LysLysKOM 20764345]/[Pike mailinglist 13967].

2014-09-05 02:34:55 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

Added get_certificates().

Thursday 04 September 2014

2014-09-04 21:45:39 (3 weeks ago) by Arne Goedeke <el@laramies.com>

block_allocator: do not keep empty pages around

In certain cases the block allocator kept around free pages. This
happened with markers used by the gc.

2014-09-04 20:57:10 (3 weeks ago) by Arne Goedeke <el@laramies.com>

benchmark: disable gc during benchmark runs

2014-09-04 18:50:40 (3 weeks ago) by Per Hedbor <ph@opera.com>

Fixed call_out test

2014-09-04 18:13:23 (3 weeks ago) by Chris Angelico <rosuav@gmail.com>

Check in the two new images created by 127f45

2014-09-04 17:57:43 (3 weeks ago) by Arne Goedeke <el@laramies.com>

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

Conflicts:
src/stralloc.c

2014-09-04 17:41:34 (3 weeks ago) by Per Hedbor <ph@opera.com>

Allow "read only once" more for input_from in IOBuffer.
The id in callbacks now defaults to the Stdio.File object

Note that this is never saved anywehere in this case,
it is just that if the id is 0 the object is used.

inputbuffering in blocking mode now mostly works.
The line_iterator now works (but is highly inefficient) in buffered mode.
Removed stdin/stderr/stdout variables in the 7.8 compat stdio.

Keeping them generates about 100 lines of warnings when the file is compiled due to
incompatible types for everything different between Fd_ref and Fd, more or less
Fixed autodoc syntax error

2014-09-04 17:18:26 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

Only generate keys when none are supplied. Call add_cert on the correct object.

2014-09-04 17:00:26 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

Don't crash on missing certificates.
buffer isn't a member of the new ADT.struct

2014-09-04 16:32:35 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

expf, expl, floorf and floorl are C89, so assume they exists.
Allow add_cert private key to be a DER encoded string.
perror test is not used.
Check that key in CertificatePair is set.
Improved non-crashing abilities.

2014-09-04 15:39:53 (3 weeks ago) by Per Hedbor <ph@opera.com>

Include a constant in Stdio.Port for reuseport and fastopen support.

Especially SO_REUSEPORT needs different code if it is supported than when it is not.

2014-09-04 15:19:51 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

signal is C89, so assume it exists.
strerror is C89 , so assume it exists.

2014-09-04 14:43:31 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Updated to tzdata2014g.

2014-09-04 14:39:59 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Updated to tzdata2014g.

2014-09-04 02:57:49 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

setlocale is C89, so assume it exists.

2014-09-04 02:22:38 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

setbuf and setvbuf are C89, so assume they exists.

2014-09-04 02:20:22 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

perror is C89 and 4.3BSD (and the result of this test isn't used).

2014-09-04 02:11:38 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

localtime, gmtime and mktime are C89 and 4.3BSD, so assume they exists

2014-09-04 01:45:01 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

getenv is C89 and 4.3BSD, so assume it exists

2014-09-04 01:34:21 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

isgraph is C89 and 4.3BSD, so assume it exists.

2014-09-04 01:19:20 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

strcoll is C89 and 4.3BSD, so assume it exists.

2014-09-04 00:52:12 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

clock is C89, so assume it exists.
Fixed warnings.

2014-09-04 00:42:10 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

Fixed a few warnings.

2014-09-04 00:13:57 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

port.h is included by global.h

2014-09-04 00:06:50 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

Complete reversal. Give all the port macros arguments.

Wednesday 03 September 2014

2014-09-03 23:42:16 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

Compile fix.

2014-09-03 23:35:30 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

Rearrange a bit.

2014-09-03 23:32:45 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

Moved the WIDE_* macros to stralloc since they have nothing to do with portability.

2014-09-03 23:29:00 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

ldexp is C89 and 4.3BSD

2014-09-03 23:22:40 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

frexp is C89 and 4.3BSD

2014-09-03 23:15:47 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

vsnprintf is C89

2014-09-03 23:11:21 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

strchr is C89 and 4.3BSD

2014-09-03 23:04:38 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

memchr is C89 and 4.3BSD

2014-09-03 22:58:11 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

Don't cast memcmp void* arguments.
Deduplication.
Tiny optimization.

2014-09-03 22:51:16 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

memcmp is C89 and 4.3BSD

2014-09-03 20:59:36 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

memmem isn't used.
memmove is C89 and 4.3BSD
Don't cast memmove void* arguments.

2014-09-03 20:45:49 (3 weeks ago) by Per Hedbor <ph@opera.com>

Allow setting and unsetting buffers for each direction

2014-09-03 20:41:39 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

Don't cast memcpy void* arguments.
Don't cast memset void* argument.

2014-09-03 20:32:40 (3 weeks ago) by Per Hedbor <ph@opera.com>

Fixed return type of Function.uncurry.

2014-09-03 20:30:32 (3 weeks ago) by Per Hedbor <ph@opera.com>

Added buffered asynchronous I/O mode to Stdio.File

In this mode the input and output is kept in buffers in the file object.
Adding data to the output buffer will write it to the filedescriptor, and
the read callback will receive the input buffer as its argument.

The write callback will have the output buffer as a second argument,
but most of the time this can be ignored since you keep the buffer
object around.

The write callback will only be called if the buffer needs more data,
so if you implement a range_error function in the buffer that refills
the buffer it will only be called once that callback returns 0.
Added Function.uncurry. It is sort of the reverse of Function.curry.

2014-09-03 20:14:04 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

memcpy is C89 and 4.3BSD

2014-09-03 19:58:22 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

bcopy was deprecated 2001.

2014-09-03 19:53:37 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

memset is C89 and 4.3BSD

2014-09-03 19:33:17 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

STRNLEN fallback isn't used anywhere.

2014-09-03 19:29:03 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

This fallback never worked.

2014-09-03 19:24:21 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

strtod is C89

2014-09-03 19:16:59 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

strtol is C89 and 4.3BSD

2014-09-03 19:08:41 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

We are not actually using HAVE_WORKING_STRTOL anywhere anymore.

2014-09-03 18:53:45 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

time is C89 and 4.3BSD

2014-09-03 18:31:46 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

Actually use VSNPRINTF.

2014-09-03 17:53:46 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

BSD function index is deprecated from 2001, removed 2008.
Removed remaining isspace

2014-09-03 17:45:13 (3 weeks ago) by Per Hedbor <ph@opera.com>

Slightly bigger reads from the source file.
Avoid reading too much when doing range requests
Correctly update the box events when reading/writing from files

2014-09-03 17:13:29 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

encode_value: Simplify the handling of the variant dispatcher.

Removed special case code in two places that compensated for each other.

2014-09-03 17:09:09 (3 weeks ago) by Per Hedbor <ph@opera.com>

Fixed the type for bind
Forward the share argument to bind
Stdio.IOBuffer.intput/output from fd can now take the amount to process

This is better for SSL files, where you can write any amount of data.
Use Stdio.IOBuffer for output.
Added share option to SSLPort as well
Added a one-entry cache for http_date
Forward the share option to _Stdio.Port.bind from Stdio.Port.bind
Allow port sharing when the OS support it.

This allows several processes to bind to the same port.
When doing so connections will be assigned evenly to them.

2014-09-03 16:20:16 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

Robustness.

2014-09-03 16:03:21 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

Building without issapce has not worked since 1999

2014-09-03 15:55:01 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

Building without vfprintf has not worked since 2003.

Tuesday 02 September 2014

2014-09-02 16:56:44 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

Silence warnings.
Removed some unused tests.

2014-09-02 16:38:58 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Build: Support other make(1) than GNU-make.

This also helps when building source dists.

2014-09-02 16:33:07 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

IOBuffer: Use apply_current() to call range_error().

This gets rid of a dynamic lookup and a reference on the
string "range_error".

It also improves the odds that IOBuffer will support being
inherited multiple times, as well as private inherit.

2014-09-02 16:02:08 (3 weeks ago) by Per Hedbor <ph@opera.com>

Exploit the newest features of IOBuffer
Added add_ints() method to IOBuffer.

2014-09-02 15:17:20 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

It hasn't been possible to compile Pike without strncmp since 2003. Remove port code for it.

2014-09-02 15:05:50 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

Call rint instead of RINT.

2014-09-02 15:05:49 (3 weeks ago) by Per Hedbor <ph@opera.com>

Added support for SO_REUSEPORT when available
Some tweaks to Stdio.IOBuffer:

o The various functions that add data now return the buffer
o It is now possible to overload the range_error method.
This can be used to fill the buffer on demand.

2014-09-02 07:44:54 (3 weeks ago) by Chris Angelico <rosuav@gmail.com>

Change the GTK2.Toolbar example images to use non-deprecated (and actually implemented) APIs
Partly fix GTK2 image generation

2014-09-02 06:39:13 (3 weeks ago) by Chris Angelico <rosuav@gmail.com>

Fix inverted condition resulting in spurious warnings

2014-09-02 05:44:57 (3 weeks ago) by Chris Angelico <rosuav@gmail.com>

Update GTK2 docs based on source files (including the additional options)
Add more options for GTK2 doc generation.

This causes docs to be generated for every possible class, whether it's
available on your system or not. This seems preferable to having some
classes arbitrarily left undocumented.

2014-09-02 04:27:32 (3 weeks ago) by Chris Angelico <rosuav@gmail.com>

Add more GTK2 versions to configure.in and friends

Monday 01 September 2014

2014-09-01 19:16:22 (3 weeks ago) by Per Hedbor <ph@opera.com>

ADT.struct removal, stage 1: Use Stdio.IOBuffer internally

2014-09-01 19:02:43 (3 weeks ago) by Per Hedbor <ph@opera.com>

Added _encode and _decode to Stdio.IOBuffer

2014-09-01 18:52:12 (3 weeks ago) by Per Hedbor <ph@opera.com>

Some changes to Stdio.IOBuffer:

o Set error mode now accepts a program to throw on error
o Relaxed argument types (for now)

2014-09-01 17:48:34 (3 weeks ago) by Per Hedbor <ph@opera.com>

Correctly throw buffer error in error mode

2014-09-01 17:19:37 (3 weeks ago) by Per Hedbor <ph@opera.com>

Added some more functionality to Stdio.IOBuffer

o input_from(file), output_to(file) -- async or sync file-IO.
o add and crete now supports the other buffer objects

2014-09-01 17:08:31 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Debug: Added Debug.describe_encoded_value().

This is a tool to describe encode_value()ed datastructures,
and especially dumped programs/objects. It does not need
(or use) a codec.

2014-09-01 16:04:35 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

release number bumped to 8.0.4 by export.pike
release number bumped to 8.0.5 by export.pike
Fixed doc inherit.

2014-09-01 15:51:50 (3 weeks ago) by Build system <distmaker@roxen.com>

release number bumped to 874 by export.pike
release number bumped to 875 by export.pike

2014-09-01 15:37:19 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

Subgroup order is calculated in Parameters if left out as an argument.

2014-09-01 15:31:00 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

Reference .Cipher without prefix.

2014-09-01 15:04:14 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

Select DH group based on symmetric key strength.

2014-09-01 14:32:25 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

Allow the precision of probably_prime_p to be variable.

2014-09-01 14:25:56 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

Fixed tests.

2014-09-01 13:48:39 (3 weeks ago) by Per Hedbor <ph@opera.com>

Only do pop_n_elems when there are more than 2 pop_value in a row.
For now -- Give up entirely doing / and % with negative integers

x86 is round-to-0, and pike expects round-to-negative-infinity.

This can be fixed in the opcodes, but it is somewhat harder than simply ignoring it for now. :)

2014-09-01 13:25:40 (3 weeks ago) by Per Hedbor <ph@opera.com>

Do not remove *_int pop_n_elems if the number of elements to pop is 0.

2014-09-01 12:23:43 (3 weeks ago) by Per Hedbor <ph@opera.com>

Added Stdio.IOBuffer.write_to(Stdio.Stream).
Fixed some issues with +/- int and re-enabled F_MOD_INT.

Sunday 31 August 2014

2014-08-31 21:10:52 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Compiler [amd64]: Fixed code generator for F_RSH_INT.

The wrong label was used.

2014-08-31 19:33:14 (3 weeks ago) by Per Hedbor <ph@opera.com>

Added a few more x86-64 opcodes

F_XOR / F_XOR_INT
F_DIVIDE_INT / F_MOD_INT
and a partial implementation of F_POP_N_ELEMS.

2014-08-31 18:34:16 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

Corrected name of MODPGroup23

2014-08-31 17:55:36 (3 weeks ago) by Per Hedbor <ph@opera.com>

Added F_DIVIDE
Added x86_64 support for F_MOD

The divide instruciton also does mod.
But for negative numbers pike is somewhat different.
So, be rather restrictive.

2014-08-31 17:05:27 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Compiler: Added a few more peep-engine rules.

2014-08-31 16:14:10 (3 weeks ago) by Per Hedbor <ph@opera.com>

Unified some code. Added F_MULTIPLY. Fixed an issue in F_LSH_INT.
Added F_COMPL. Fixed F_AND_INT

2014-08-31 15:38:31 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Testsuite: Some notes about the sprintf() type tests.

Also changes the expected return type for

sprintf("%c\n", Stdio)

from string to sprintf_result. This is due to

(string & sprintf_result) == sprintf_result

2014-08-31 15:16:23 (3 weeks ago) by Per Hedbor <ph@opera.com>

Also generate *_INT for -1, 0, 1 and 0x7ffffffff
Do the negative shift check first in <<.

It was somewhat confusing to get bignum errors.
Fixed F_LSH_INT.
More simple LSH_OVERFLOW.

2014-08-31 14:53:05 (3 weeks ago) by Per Hedbor <ph@opera.com>

Added x86-64 version of R_LHS_INT

2014-08-31 13:50:48 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Builtin: Stricter type for int2char().

Fixes the testsuite test:

sprintf("%O", typeof(sprintf("%c", 1023))) == "string(1023..1023)"

2014-08-31 12:57:20 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Debug: Changed trace flag for check_call_svalue().

This moves tracing of check_call_svalue() from using l_flag (aka
optimizer_debug()) to using trace_level (aka predef::trace()).

The rationale for this is that check_call_svalue() is used by the
runtime (via the variant dispatcher), and not by the compiler.

Tracing of check_call_svalue() is (as before) enabled at level 3.

2014-08-31 12:43:28 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Optimizer: Added some integer overflow paranoia.

2014-08-31 12:17:33 (3 weeks ago) by Per Hedbor <ph@opera.com>

Fixed non-int f_negate case

2014-08-31 12:14:33 (3 weeks ago) by Per Hedbor <ph@opera.com>

Added a few more opcodes

F_NEGATE F_LSH F_AND_INT F_OR_INT F_RSH_INT F_SUBTRACT_INT
Added a few more opcodes to do constant integer arithmentcs.

Saturday 30 August 2014

2014-08-30 09:46:05 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Bin: Fixed a few warnings.

Converted from using static to using protected.

Friday 29 August 2014

2014-08-29 14:35:15 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Search.Database.MySQL: Don't used DELAYED queries.

The DELAYED query modifier is:

* Not supported with InnoDB tables. This causes failures with
MySQL versions (eg 5.5) where InnoDB (and not MyISAM) is default.

* Ignored in MySQL 5.6.

* Deprecated in MySQL 5.6.6.

Fixes [bug 7255].
Search.Database.MySQL: Don't used DELAYED queries.

The DELAYED query modifier is:

* Not supported with InnoDB tables. This causes failures with
MySQL versions (eg 5.5) where InnoDB (and not MyISAM) is default.

* Ignored in MySQL 5.6.

* Deprecated in MySQL 5.6.6.

Fixes [bug 7255].

2014-08-29 07:24:08 (3 weeks ago) by Per Hedbor <ph@opera.com>

Reset the result types, clearing zero_type

Thursday 28 August 2014

2014-08-28 23:10:47 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

One more RUNPIKE to silence.

2014-08-28 23:02:45 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Silenced depend target override warning and some other chattiness.

2014-08-28 22:38:22 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

No need to print out the RUNPIKE args.

2014-08-28 22:14:35 (4 weeks ago) by Per Hedbor <ph@opera.com>

Slightly shorter F_RSH

It is uncommon enough to do >> with values >= 64 to use the C version.
Silence type warning when Crypto.ECC.Curve is missing (old nettle)

filter() seems to get the return type wrong.

2014-08-28 21:21:09 (4 weeks ago) by Per Hedbor <ph@opera.com>

Added F_AND, F_OR and F_RSH opcodes

2014-08-28 18:52:34 (4 weeks ago) by Chris Angelico <rosuav@gmail.com>

Add set_nodelay() function to Stdio.File objects to control Nagling

2014-08-28 18:47:20 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

filter tests.

2014-08-28 18:46:46 (4 weeks ago) by Chris Angelico <rosuav@gmail.com>

Document the link between set_keepalive and setsockopt

2014-08-28 18:46:17 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Fixed direct cast calls.

2014-08-28 18:44:12 (4 weeks ago) by Chris Angelico <rosuav@gmail.com>

Implement Stdio.File()->setsockopt()

2014-08-28 18:26:52 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

On second thought, this is so obscure that we shouldn't probably do it at all.

2014-08-28 17:52:47 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Calendar: Improved dwim_time() for ISO-8601 dates.

Also adds some corresponding testsuite tests.

FIXME: Ought to have tests for all the patterns in dwim_{day,time}().

2014-08-28 17:51:59 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Fixed the indexing-fallback-code of map on objects.

2014-08-28 17:39:48 (4 weeks ago) by Build system <distmaker@roxen.com>

release number bumped to 873 by export.pike
release number bumped to 872 by export.pike

2014-08-28 17:14:14 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Use pike_sizeof instead if _sizeof.

2014-08-28 17:05:15 (4 weeks ago) by Per Hedbor <ph@opera.com>

Ignore the generated file

2014-08-28 17:01:10 (4 weeks ago) by Per Hedbor <ph@opera.com>

Added a PCHARP version of the json parser.

Also added a new flag: JSON_FIRST_VALUE.
If this is set data after a value is ignored.
Added read_json method.

It will read the first json value on the stream and return it.

2014-08-28 15:54:23 (4 weeks ago) by Chris Angelico <rosuav@gmail.com>

GTK2: Update Scale docs based on source file
Represent G_TYPE_POINTER as an integer to prevent segfaults
Ensure something's pushed for every argument to a GTK2 signal callback
GTK2 docs formatting fix

2014-08-28 15:30:28 (4 weeks ago) by Chris Angelico <rosuav@gmail.com>

GTK2: Introduce Pango.Layout()->xy_to_char(), parallel to xy_to_index()

2014-08-28 15:20:22 (4 weeks ago) by Chris Angelico <rosuav@gmail.com>

GTK2 docs formatting fix
GTK2: Update Scale docs based on source file

2014-08-28 15:16:08 (4 weeks ago) by Chris Angelico <rosuav@gmail.com>

GTK2: Introduce Pango.Layout()->xy_to_char(), parallel to xy_to_index()
Ensure something's pushed for every argument to a GTK2 signal callback
Represent G_TYPE_POINTER as an integer to prevent segfaults

2014-08-28 15:10:19 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Fixed direct calls to cast.

2014-08-28 15:03:26 (4 weeks ago) by Chris Angelico <rosuav@gmail.com>

Add nodelay() function to Stdio.File objects to control Nagling

2014-08-28 15:00:40 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Fixed direct call of cast.
Fixed direct call of cast.

2014-08-28 14:08:51 (4 weeks ago) by Per Hedbor <ph@opera.com>

The IOBuffer documentation now extracts

2014-08-28 14:03:12 (4 weeks ago) by Per Hedbor <ph@opera.com>

Moved __builtin.IOBuffer to Stdio.IOBuffer (for now)
Changed PCHARP ptr to be a void*.
Added a new sscanf low-level API: It is now possible to sscanf using pcharp formats/strings.

This makes it possible to call sscanf on partial strings and similar tricks.

2014-08-28 13:59:58 (4 weeks ago) by Per Hedbor <ph@opera.com>

[autodoc] Some toplevel documentatioon for Cache.

2014-08-28 02:37:37 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

IOBuffer documentation fixes.

2014-08-28 00:28:28 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Hook xmalloc, xrealloc and xstrdup up to the wrapper function. This makes dmalloc compile again.

Wednesday 27 August 2014

2014-08-27 21:06:41 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Cyclic: Change to a power of two hash table.

The hash table used by BEGIN_CYCLIC() et al now has a size that
is a power of 2, so that we can avoid the modulo operation.

The hash function is also modified somewhat to improve its entropy.

2014-08-27 20:55:31 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

SSL: Fix lost close packets.

Removed some erroneous code.

2014-08-27 20:06:31 (4 weeks ago) by Per Hedbor <ph@opera.com>

Let pike_sizeof return INT_TYPE, not INT32.
Do not crash if the argument list is malformed
Added a simple I/O buffer.

This is a work in progress.

It is intended to be used as a buffer while reading and writing from files.

It is also intended as a replacement for ADT.struct (note, lowercase struct).

2014-08-27 19:54:10 (4 weeks ago) by Stephen R. van den Berg <srb@cuci.nl>

Use [..] lfun instead.

2014-08-27 18:51:25 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Charset: Minor adjustment of the ISO-IR-129 table.

According to Appendix I.7 of T.101, the characters MG 63 (aka 5/15)
and MG 64 (aka 7/15) are equivalent:

Either of the two equivalent codings established in Recommendation
T.101 (code table position 5/15 or 7/15) for the Filled Mosaic
character is acceptable in a string of characters from Repertoire 5.

Also later in the same appendix:

MG63 Filled Mosaic 1,2,3,4,5,6 (also equivalent to MG64 T.101 DSIII)

Presumably the character MG 63 is intended for use in GR 0 (where
7/15 is reserved for DEL).

2014-08-27 16:53:22 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Serialize TBSCertificate by storing the Sequence and regenerate the other fields.

2014-08-27 16:35:21 (4 weeks ago) by Stephen R. van den Berg <srb@cuci.nl>

Update doc.

2014-08-27 16:29:23 (4 weeks ago) by Stephen R. van den Berg <srb@cuci.nl>

Prototype and doc fixes.

2014-08-27 14:28:54 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

sscanf: Improved error messages.

Got rid of all "Error in sscanf format string." error messages,
and replaced them with more specific error messages.

2014-08-27 13:44:06 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Revert "dwim_time() should know how to parse ISO 8601 timestamps."

This patch had the opposite effect of the intended...

This reverts commit 962105c4c0eaa08aaba357343845b3046b6741b9.
Revert "dwim_time() should know how to parse ISO 8601 timestamps."

This patch had the opposite effect of the intended...

This reverts commit ad369b17e9f784b0632f0939adbbbab47385f0ab.

2014-08-27 13:29:07 (4 weeks ago) by Stephen R. van den Berg <srb@cuci.nl>

Support < and > operators.
Support assigning characters which don't fit within the current shift size.
Simplify code.

2014-08-27 10:26:22 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Charset: Added ISO-IR-129 (Videotex mosaic characters).

This adds the mosaic characters from the CCITT T.101 Data Syntax III
supplement in an encoding compatible with the MODE7GX.TTF font.

2014-08-27 09:03:51 (4 weeks ago) by Stephen R. van den Berg <srb@cuci.nl>

Reduce heap fragmentation even more.

2014-08-27 08:47:25 (4 weeks ago) by Stephen R. van den Berg <srb@cuci.nl>

Document features.
Fix prototype, and do not second-guess the user for optimum size.
Reorder to reduce memory fragmentation.

2014-08-27 03:51:54 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Less crashy String.Builder.

2014-08-27 03:07:44 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Readded the CPP test of #if constant and moved the String.Buffer test to the other String.Buffer tests.

2014-08-27 02:43:18 (4 weeks ago) by Stephen R. van den Berg <srb@cuci.nl>

Update CHANGES.

2014-08-27 02:39:52 (4 weeks ago) by Stephen R. van den Berg <srb@cuci.nl>

Simplify code, make the buffer itself non-optional.
Add forced security wipe to cut() method.

2014-08-27 01:56:50 (4 weeks ago) by Stephen R. van den Berg <srb@cuci.nl>

Fix length calculations in cut().
Add non-trivial Buffer tests to testsuite.
Optimise clear() for speed.
Support == operator.
Yes, memcmp() compares using unsigned char comparisons.
Repair and cleanup declarations.

Tuesday 26 August 2014

2014-08-26 18:56:23 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Fixed compilation with dmalloc.

2014-08-26 17:32:34 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Fixed test that broke with Kevins fix.

2014-08-26 16:49:59 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Tests for String.Buffer []= and cut.

2014-08-26 16:14:57 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Silence warnings, mostly with useless null inits.

2014-08-26 16:05:48 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Tests for __COUNTER__

2014-08-26 16:03:27 (4 weeks ago) by Stephen R. van den Berg <srb@cuci.nl>

Improve fast-path and eliminate some minor cruft.
Ensure NUL termination on new Buffer.

2014-08-26 15:17:56 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Missed get_all_args conformity checkin.

2014-08-26 15:06:03 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Fixed warning.

2014-08-26 14:10:32 (4 weeks ago) by Per Hedbor <ph@opera.com>

Stricter return types for cast.

This, if nothing else, makes the documentation cleaner.

2014-08-26 12:24:50 (4 weeks ago) by Per Hedbor <ph@opera.com>

Fixed an issue with the connect argument parsing
Added the __COUNTER__ macro. Who knows, someone might find a use for it.

2014-08-26 12:09:26 (4 weeks ago) by Per Hedbor <ph@opera.com>

How did that happen?
How did that happen?

2014-08-26 11:40:09 (4 weeks ago) by Per Hedbor <ph@opera.com>

Note about TCP_FASTCONNECT
Added variant of connect with three arguments

2014-08-26 11:37:07 (4 weeks ago) by Per Hedbor <ph@opera.com>

Added support for TCP_FASTOPEN (server and client)

The server support is always enabled if possible, on the client side
it is enabled if you pass an additional argument to connect (see the documentation).

2014-08-26 11:35:49 (4 weeks ago) by Stephen R. van den Berg <srb@cuci.nl>

Update String.Buffer documentation.

2014-08-26 11:31:10 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Cyclic: Improved thread-awareness.

Don't use CYCLICs originating from other threads, as there's
no way of knowing whether they are valid or not.

Also default the local cyclic ret value to the existing cyclic ret
if found.

2014-08-26 11:10:05 (4 weeks ago) by Stephen R. van den Berg <srb@cuci.nl>

Update CHANGES for new String.Buffer methods.

2014-08-26 11:05:28 (4 weeks ago) by Stephen R. van den Berg <srb@cuci.nl>

Database creation doesn't work with bound parameters.

2014-08-26 11:02:32 (4 weeks ago) by Stephen R. van den Berg <srb@cuci.nl>

Correct prototype.
Add stack_revroll().
Eliminate duplicate code.
Add new member functions [] and cut().
Improve spacing conciseness.
Eliminate superfluous type check.
WebSocket forgot to pass on the id to Stdio.
You missed a spot. Adhere to the crazy indentation.
Database creation doesn't work with bound parameters.

2014-08-26 10:48:58 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Compiler: Added some missing END_CYCLIC().

All execution branches from a BEGIN_CYCLIC() must either
END_CYCLIC() or throw an error before DECLARE_CYCLIC()
falls out of scope.

Potential fix for [LysLysKOM 20940558] (Pike developer list).

2014-08-26 10:14:22 (4 weeks ago) by Per Hedbor <ph@opera.com>

[autodoc] Added some linebreaks

Monday 25 August 2014

2014-08-25 20:43:44 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Build: Fixed C9x-ism.

2014-08-25 20:30:25 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

SANE: pike_types.h is needed for literal_type_string.

2014-08-25 20:29:35 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

More consistent use of error macros.

2014-08-25 20:27:30 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Postgres: Survive Postgresql 9.3.3.

2014-08-25 19:18:01 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Runtime: Improved the hash function for cycle detection.

Xor is better for mixing bits than or...

FIXME: We probably ought to consider a 2^n table size here.

2014-08-25 19:13:52 (4 weeks ago) by Per Hedbor <ph@opera.com>

[autodoc] List the drivers in Sql.Sql.create

2014-08-25 18:53:31 (4 weeks ago) by Per Hedbor <ph@opera.com>

[autodoc] Some rewording
[autodoc] Document PDF.PDFgen create method
[autodoc] Removed import autodoc comment in Pango.

It was the only documented thing in the module

2014-08-25 18:42:55 (4 weeks ago) by Per Hedbor <ph@opera.com>

[autodoc] Some reformatting.
[autodoc] Added note about extract_locale to the Locale module.

2014-08-25 18:31:51 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Consistent formatting of function name parameter to get_all_args

2014-08-25 18:28:39 (4 weeks ago) by Per Hedbor <ph@opera.com>

Added note about the Shuffler to Pipe.Pipe.
[autodoc] Minimal pointers in Image module toplevel doc

2014-08-25 18:03:33 (4 weeks ago) by Per Hedbor <ph@opera.com>

[autodoc] Fixed erronous commit

2014-08-25 17:48:09 (4 weeks ago) by Per Hedbor <ph@opera.com>

[autodoc] Added Calendar documentation from the FAQ.

It is actually rather useful. But very hard to find

2014-08-25 17:42:18 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Use cast instead of _encode.
Added cast to Identifier

2014-08-25 17:41:58 (4 weeks ago) by Per Hedbor <ph@opera.com>

[autodoc] Added some minimal documentation to the Cache module

2014-08-25 17:25:15 (4 weeks ago) by Per Hedbor <ph@opera.com>

[autodoc] Added some minimal information about the Arg module

2014-08-25 17:10:38 (4 weeks ago) by Per Hedbor <ph@opera.com>

Some minor documentation tweaks.

It has been a while since the classes were called Gz_deflate and Gz_inflate.

2014-08-25 16:49:00 (4 weeks ago) by Per Hedbor <ph@opera.com>

Separate out operators from the normal methods in the refdoc.
These functions are not really varargs.

2014-08-25 14:40:11 (4 weeks ago) by Per Hedbor <ph@opera.com>

Count _decode and _encode as lfuns.
Include file name and line in errors.
Fixed a few autodoc syntax errors.

2014-08-25 11:33:39 (4 weeks ago) by Per Hedbor <ph@opera.com>

Use __restrict with gcc on the pike_interpreter

This produces the same code as const, but avoids lying to the compiler.

Fixed an issue with gcc 3.4, which over-optimized a bit (specifically,
pip->stack_pointer was not re-read between function calls, which seems
odd given that it is not pip->stack_pointer that was const...)

Sunday 24 August 2014

2014-08-24 23:51:05 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Added test for #pike 8.0
Added codec to ASN1 objects.

2014-08-24 14:37:20 (4 weeks ago) by Arne Goedeke <el@laramies.com>

Strings: generate more static strings

quick_add_function and make_shared_string will now create
static strings when the argument is a compile time constant
Strings: print string types in memory_usage()

2014-08-24 14:11:46 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

SSL: Improved support for renegotiation.

2014-08-24 02:34:59 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Pike 7.2 was released 2002. Stop supporting compat for it.
Pike 7.2 was released 2002. Stop supporting compat for it.

2014-08-24 02:02:43 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Added note on environment mapping.

2014-08-24 00:26:28 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Remove some module_magic remnants.

Saturday 23 August 2014

2014-08-23 18:31:17 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Wrap some comments.

2014-08-23 17:18:28 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

This started giving deprecation errors 11 years ago.

2014-08-23 16:54:46 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Fixed warning.
Now that we have character ranges in strings, use that for type errors from get_all_args.

2014-08-23 16:52:00 (4 weeks ago) by Arne Goedeke <el@laramies.com>

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

2014-08-23 16:48:40 (4 weeks ago) by Arne Goedeke <el@laramies.com>

silence some warnings
block_allocator: fix ba_walk() and improve valgrind support

Blocks in the free list are now marked as free while the callback is
running. This helps detecting invalid accesses. Also fixed a bug in
the free list sort.

2014-08-23 15:29:55 (4 weeks ago) by Per Hedbor <ph@opera.com>

>> now works with negative LHS again.

2014-08-23 14:13:36 (4 weeks ago) by Arne Goedeke <el@laramies.com>

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

2014-08-23 14:00:37 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

While having lfun::cast as private WORKS JUST FINE, it also allows us to get rid of some argument checking. As protected we can't do that.

2014-08-23 13:59:54 (4 weeks ago) by Arne Goedeke <el@laramies.com>

Strings: correctly count bytes in strings

2014-08-23 11:28:44 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Stdio.Stat: Make casting work again.

lfun::cast() was declared private, which:

* Disables it (as lfuns must be protected or public).

* Breaks code that inherits Stdio.Stat, overloads cast(), and
wants to call ::cast() (eg Sitebuilder.SBStat).

2014-08-23 11:26:20 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Runtime: Fixed some broken type checks.

NB: There's a difference between the C-types "int" and "INT_TYPE"...

Friday 22 August 2014

2014-08-22 21:59:05 (1 month ago) by Arne Goedeke <el@laramies.com>

Strings: added and used push_static_text

Use the new static string allocation support where possible. This is the
case all code which is not dynamically loaded.

2014-08-22 20:51:55 (1 month ago) by Arne Goedeke <el@laramies.com>

Strings: global const strings

2014-08-22 20:02:24 (1 month ago) by Arne Goedeke <el@laramies.com>