Hello, Friends of Pike!

The Pike development team is pleased to announce the 15th release of Pike 8.0: build 8.0.1738. I’m in the process of submitting updates for homebrew and pkgsrc, so the new version should appear there in the near future.
As always, bug reports, comments and suggestions are welcome!

Bill

----

Source:
https://pike.lysator.liu.se/pub/pike/all/8.0.1738/Pike-v8.0.1738.tar.gz

Binary builds:
   https://pike.lysator.liu.se/download/pub/pike/all/8.0.1738/

RPMs for RHEL/CentOS:
   https://pike.lysator.liu.se/download/pub/pike/all/8.0.1738/el6
   https://pike.lysator.liu.se/download/pub/pike/all/8.0.1738/el7
   https://pike.lysator.liu.se/download/pub/pike/all/8.0.1738/el8

Windows Installer:
https://pike.lysator.liu.se/pub/pike/all/8.0.1738/Pike-v8.0.1738-Windows7-x86.msi

Changes since Pike 8.0.1116 (release 14)

New Features
------------

o Calendar
  Updated to use tzdata2021e.

o Parser.XML.Tree
  Added set_text() to update the contents of a text node.

o Sql.Sql
  Add query_db() to API.

o SSL.SSLFile
Add {query,set}_timeout(). This adds an API to set an optional timeout to be used for blocking operations. When the timeout expires it is handled as if
  the peer sent a fatal internal error alert.

o Standards.PEM
Added helper methods, including: get_certificates() , get_private_keys(),
  get_private_key() and decrypt_fragment().

o Runtime and EFUNS
  - describe_backtrace() now reports cpu time --with-profiling.
  - decode_value can be called with codec -1, which disables decoding of
    functions, objects, programs and types.

Bug Fixes
---------

o crypt
Fixed a bug which caused crypt() with a random salt to sometimes return
  "*0" instead of an encrypted password.

o Concurrent
- The future generated by ->timeout() would not necessarily resolve with
    the fullfilled or rejected values if the original Promise/Future was
    resolved or rejected before hitting the timeout.
  - If the original promise resolves or rejects, we now attempt to
    unschedule the timeout call_out from the backend we scheduled it in,
    not the one (now) configured in the Future.

o Critbit
  - Fix a number of memory and behavior errors.

o Inotify
  add_watch() now returns -1 for filsystem-related failures
  that may be due to the filsystem being in flux.

o Image.BMP
  Improved size check better detects malformed BMP images.

o Image.GIF
  - Improve detection of malformed LZW bit sizes.
  - Improve detection of malformed LZW dictionary extensions.

o Image.ILBM
  - Guard alloca() allocations with check_c_stack().
  - Improved length accounting in unpackByteRun1().

o Image.JPEG
  - Do not over-allocate memory for decoded image.
  - Limit decoded size of images to 2 GB.

o Image.PCX
  Improved size checks better detect malformed PCX images.

o Image.PNG
  Improved size check better detects malformed PNG images.

o Image.PSD
  Improved size check better detects malformed PSD images.

o Image.TGA
  - Improve detection of malformed TGA images.
  - Correctly update pointer when horizontal or vertical flipping is
    requested by the TGA image.

o Image.TIFF
  Improved size checks in image decoding

o Image.TIM
  Improved size checks better detect malformed TIM images.

o Image.WBF
  Improved size check better detects malformed WBF images.

o Image.X
  Guard alloca() allocations with check_c_stack().

o Image.XCF
  Fixed to properly initialize the layer mask structure.

o Image.XWD
  Improved size check better detects malformed XWD images.

o Protocols.LDAP.client
LDAP connections secured with TLS/SSL now timeout if the server does not
  respond within 10 seconds.

o Sql.mysql
  Improved character set handling

o Sql.pgsql
  Numerous bug fixes.

Building & Tools
----------------

o Improved check for stack direction to also report correct results when
  compiling with Clang 11.

o _TIME_BITS is now set to 64, to get a 64-bit time_t on 32-bit systems
  running glibc 2.34 or newer.

o Improvements to building and installer code signing on macOS.

o Fixes to better support building with future versions of GNU make.

o Use updated FFI API in Java module, to better support recent libffi.

o Fix testsuite generation for BSD m4 users; POSIX systems must continue
  to use GNU m4 (gm4).

Reply via email to