pike.git / CHANGES

version» Context lines:

pike.git/CHANGES:1:   Changes since Pike 8.0.702 (release 13)      New Features   ------------    - o ADT.History + o ADT.History       Support encode/decode_value().    -  + o Pike.FakeObject +  +  This is used as a placeholder used in place of other objects in backtraces. +    Bug fixes   ---------    -  + o backtrace() +  +  Hide mutex keys and crypto contexts from backtraces. +  +  Having unexpected references to mutex keys may cause hangs and +  complaints about attempting to lock mutexes recursively. +    o combine_path()       Fixed corner case where combine_path() on strings starting with    "./../" used to gain one directory level. Eg:       Old behavior:    > combine_path(".", "../foo");    (1) Result: "../foo"    > combine_path("./..", "foo");    (2) Result: "foo"
pike.git/CHANGES:24:    (3) Result: "foo"       New (fixed) behavior:    > combine_path(".", "../foo");    (1) Result: "../foo"    > combine_path("./..", "foo");    (2) Result: "../foo"    > combine_path("./../foo");    (3) Result: "../foo"    + o describe_backtrace() +  +  - Do not use value identifiers that have not been defined in +  the visible backtrace. +  +  - Fix clipped/canclip propagation. +  + o types() +  +  Fixed reference leak. +    o Calendar    -  Fixed typo in the Catalan word for the month December. +  - Fixed typo in the Catalan word for the month December.    -  +  - Updated tzdata to 2018g. +    o Compiler       - Adhere to the calling convention more in the machine code    generator on amd64, namely by keeping the stack pointer aligned    before calling into C code. GCC 8 started to emit instructions    relying on the correct, alignment, causing General Protection    Faults.       - Fixed some corner cases where file names where missing from    backtraces.    -  + o Protocols.HTTP.Session +  +  - Fix race-condition when multiple threads call give_me_connection() +  with the same url at the same time. +  +  - Don't attempt to reuse SessionQuery objects. +  +  give_me_connection() now always returns a new SessionQuery object +  (albeit sometimes with a reused connection). +  +  This should alleviate issues with stuff being left around from +  previous queries. +    o Protocols.HTTP.Query       On Solaris 11 Stdio.File()->connect() often fails with EADDRINUSE.    If this happens, retry the connection.      o Protocols.Websocket       Tentative fix for error 'indexing the NULL value with "set_nonblocking'.      o SSL.File
pike.git/CHANGES:60:    Do not close automatically on write error.       The internal ssl_write_callback() would call shutdown()    on write error, which would cause the object to enter    one of the closed states, without the user actually    having closed the file.       This in turn caused errors like "Not open" from    functions like read() and set_nonblocking().    + o Thread.Queue +  +  Attempt to work around glibc bugs. +  +  Glibc 2.24 and earlier have a broken implementation of condition +  variables (cf https://sourceware.org/bugzilla/show_bug.cgi?id=13165). +  +  Attempt to work around the issue by having the signalling thread +  release the associated mutex before signalling. +  + o Thread.ResourceCount +  +  Fixed mutex handling. +    Building & Tools   ----------------    - o Drop support for Postgres 7.2. + o Drop support for Postgres 7.1.      o Fix compilation with Nettle 3.1.1.      o Support recent versions of libfreetype.    -  + o Drop use of the obsolete (~20 years) Solaris ioctl /proc API.    -  +  The ioctl-based /proc API was obsoleted in Solaris 2.6 (July 1997), +  but to be supported "until the next major release". In Solaris 11.4 +  (August 2018) the support has now finally been removed. +  +  Most of the removed code was from 1995, and was thus older than Pike... +  + o Improved pkg-config search path detection on Solaris. +  +  Solaris 11.4 provides a single pkg-config binary, which by default +  searches in /usr/lib/pkgconfig/ and /usr/share/pkgconfig/. +  Unfortunately, /usr/lib/pkgconfig/ contains information for +  the 32-bit packages (64-bit d:o is in /usr/lib/64/pkgconfig/). +  +  This issue caused eg 32-bit headers for libffi to be used, causing +  a SIGSEGV in ffi_closure_unix64_inner() due to the differing sizes +  of ffi_closure in 32-bit and 64-bit abi. +  +    Changes since Pike 8.0.610 (release 12)      New Features   ------------      o Sql.mysql       In unicode decode mode, characters outside the BMP are now    encoded as UTF-8 encoded UTF-16. This works around that    MySQL/MariaDB don't allow characters outside the BMP in utf8