v2.2.2 LTS
This release fixes a number of critical bugs:
- restores matplotlib.verbose (fixing embedding in pycharm)
- preserve precision when color mapping small portions of data with
extreme outliers
- fixes saving long movies with ffmpeg
- fixes UnbourdLocal error in contour labeling
- fixes import failure on python 3.4.0 and 3.4.1
- fixes compile time failures with clang on 32bit platforms
- fixes an icon in the Tk backends
- fixes several issues with Tables
- fixes expanding offset boxes with tight_layout
- revert changes to the font caching to avoid a possible bug in
backports.lru_cache
- numerous docstring and documentation fixes
We have reverted the deprecation of font_manager.TempCache.
v2.2.1 did not actually restore matplotlib.verbose.
v2.2.1 LTS
This release fixes a number of critical bugs:
- restores matplotlib.verbose (fixing embedding in pycharm)
- preserve precision when color mapping small portions of data with
extreme outliers
- fixes saving long movies with ffmpeg
- fixes UnbourdLocal error in contour labeling
- fixes import failure on python 3.4.0 and 3.4.1
- fixes compile time failures with clang on 32bit platforms
- fixes an icon in the Tk backends
- fixes several issues with Tables
- fixes expanding offset boxes with tight_layout
- revert changes to the font caching to avoid a possible bug in
backports.lru_cache
- numerous docstring and documentation fixes
We have reverted the deprecation of font_manager.TempCache.
v2.2.0 LTS
This release includes new features including:
- An experimental constrained layout manager
- Color blind friendly color map (cividis) and color cycle
(tableau-colorblind10)
- native support for numpy.datetime64 types
- animated gif writing via pillow
- TkAgg now works with pypy
- cairo based backends for Qt, Tk, and WX
There are several API changes in this release:
- To support the constrained layout Matplotlib has a new required
dependency (kiwisolver).
- The matplotlib.finance module has been removed, development has
moved to a stand-alone project.
3.28.2:
* setup.py: Don't install the test C extension when it's built.
* setup.py: Always define PY_SSIZE_T_CLEAN.
* Fix __str__ return type of Gtk.TreePath with depth == 0.
* Fix a crash when setting a str property with a value containing surrogates.
* tests: Fix a potential crash during tests
Kiwi is an efficient C++ implementation of the Cassowary constraint solving
algorithm. Kiwi is an implementation of the algorithm based on the seminal
Cassowary paper. It is not a refactoring of the original C++ solver. Kiwi has
been designed from the ground up to be lightweight and fast. Kiwi ranges from
10x to 500x faster than the original Cassowary solver will typical use cases
gaining a 40x improvement. Memory savings are consistently > 5x
Version 4.6.4:
Bugs Fixed
In more recent Python versions, the config directory in the Python installation incorporates the platform name. This directory was added as an additional directory to search for Python shared libraries when installing using the setup.py file or pip. It should not even be needed for newer Python versions but still check for older Python versions. The only issue arising from the wrong directory, not incorporating the platform name, being used, was a linker warning about the directory not being present.
Installing mod_wsgi on Windows would fail as hadn’t exclude mod_wsgi daemon mode specific code from Windows build. This would result in compile time error about wsgi_daemon_process being undefined. This problem was introduced to Windows in version 4.6.0. A prior attempt to fix this in 4.6.3 missed one place in the code which needed to be changed.
Version 4.6.3
Bugs Fixed
When compiled for Python 2.6, when run mod_wsgi would fail to load into Apache due to misisng symbol PyFrame_GetLineNumber. This was only introduced in Python 2.7. Use alternate way to get line number which still yields correct answer. This issue was introduced in mod_wsgi version 4.6.0 in fix to have correct line numbers generated for stack traces on shutdown due to request timeout.
Installing mod_wsgi on Windows would fail as hadn’t exclude mod_wsgi daemon mode specific code from Windows build. This would result in compile time error about wsgi_daemon_process being undefined. This problem was introduced to Windows in version 4.6.0.
When using runmodwsgi management command integration for Django, the file containing the WSGI application entry point was specified via a full filesystem path, rather than by module import path. This meant that relative imports from that file would fail. The file is now imported as a module path based on what WSGI_APPLICATION is set to in the Django settings module. This means the file is imported as part of package for the project and relative imports will work.
1.8.7:
- BUG/MAJOR: cache: always initialize newly created objects
- MINOR: servers: Support alphanumeric characters for the server templates names
1.8.6:
- BUG/MINOR: lua: the function returns anything
- BUG/MINOR: lua funtion hlua_socket_settimeout don't check negative values
- BUILD/MINOR: fix build when USE_THREAD is not defined
- MINOR: cli/threads: make "show fd" report thread_sync_io_handler instead of "unknown"
- MINOR: cli: make "show fd" report the mux and mux_ctx pointers when available
- BUILD/MINOR: cli: fix a build warning introduced by last commit
- BUG/MINOR: hpack: fix harmless use of uninitialized value in hpack_dht_insert
- CLEANUP: h2: rename misleading h2c_stream_close() to h2s_close()
- MINOR: h2: provide and use h2s_detach() and h2s_free()
- BUG/MAJOR: h2: remove orphaned streams from the send list before closing
- MINOR: h2: always call h2s_detach() in h2_detach()
- MINOR: h2: fuse h2s_detach() and h2s_free() into h2s_destroy()
- BUG/MEDIUM: h2/threads: never release the task outside of the task handler
- BUG/MEDIUM: h2: don't consider pending data on detach if connection is in error
- BUILD/MINOR: threads: always export thread_sync_io_handler()
- BUG/MEDIUM: h2: always add a stream to the send or fctl list when blocked
- BUG/MINOR: checks: check the conn_stream's readiness and not the connection
- BUG/MINOR: email-alert: Set the mailer port during alert initialization
- BUG/MINOR: cache: fix "show cache" output
- BUG/MINOR: fd: Don't clear the update_mask in fd_insert.
- BUG/MAJOR: cache: fix random crashes caused by incorrect delete() on non-first blocks
- BUG/MINOR: spoe: Initialize variables used during conf parsing before any check
- BUG/MINOR: spoe: Don't release the context buffer in .check_timeouts callbaclk
1.8.5:
- BUG/MINOR: threads: fix missing thread lock labels for 1.8
- BUG/MEDIUM: ssl: Don't always treat SSL_ERROR_SYSCALL as unrecovarable.
- BUG/MEDIUM: ssl: Shutdown the connection for reading on SSL_ERROR_SYSCALL
- BUG/MINOR: init: Add missing brackets in the code parsing -sf/-st
- BUG/MINOR: ssl/threads: Make management of the TLS ticket keys files thread-safe
- BUG/MEDIUM: http: Switch the HTTP response in tunnel mode as earlier as possible
- BUG/MEDIUM: ssl/sample: ssl_bc_* fetch keywords are broken.
- DOC: lua: new prototype for function "register_action()"
- DOC: cfgparse: Warn on option (tcp|http)log in backend
- BUG/MINOR: debug/pools: properly handle out-of-memory when building with DEBUG_UAF
- MINOR: debug/pools: make DEBUG_UAF also detect underflows
- BUG/MINOR: h2: Set the target of dbuf_wait to h2c
- MINOR: stats: display the number of threads in the statistics.
- BUG/MEDIUM: h2: always consume any trailing data after end of output buffers
- BUG/MEDIUM: buffer: Fix the wrapping case in bo_putblk
- BUG/MEDIUM: buffer: Fix the wrapping case in bi_putblk
- Revert "BUG/MINOR: send-proxy-v2: string size must include ('\0')"
- MINOR: systemd: Add section for SystemD sandboxing to unit file
- MINOR: systemd: Add SystemD's Protect*= options to the unit file
- MINOR: systemd: Add SystemD's SystemCallFilter option to the unit file
- MINOR/BUILD: fix Lua build on Mac OS X
- BUILD/MINOR: fix Lua build on Mac OS X (again)
- BUG/MINOR: session: Fix tcp-request session failure if handshake.
- CLEANUP: .gitignore: Ignore binaries from the contrib directory
- BUG/MINOR: unix: Don't mess up when removing the socket from the xfer_sock_list.
- BUG/MEDIUM: h2: also arm the h2 timeout when sending
- BUG/MINOR: cli: Fix a crash when passing a negative or too large value to "show fd"
- CLEANUP: ssl: Remove a duplicated #include
- CLEANUP: cli: Remove a leftover debug message
- BUG/MINOR: cli: Fix a typo in the 'set rate-limit' usage
- BUG/MEDIUM: fix a 100% cpu usage with cpu-map and nbthread/nbproc
- BUG/MINOR: force-persist and ignore-persist only apply to backends
- BUG/MEDIUM: spoe: Remove idle applets from idle list when HAProxy is stopping
- BUG/MEDIUM: threads/unix: Fix a deadlock when a listener is temporarily disabled
- BUG/MAJOR: threads/queue: Fix thread-safety issues on the queues management
- BUG/MINOR: dns: don't downgrade DNS accepted payload size automatically
- BUG/MINOR: seemless reload: Fix crash when an interface is specified.
- BUG/MINOR: cli: Fix a crash when sending a command with too many arguments
- BUILD: ssl: Fix build with OpenSSL without NPN capability
- BUG/MINOR: spoa-example: unexpected behavior for more than 127 args
- BUG/MINOR: lua: return bad error messages
- BUG/MEDIUM: tcp-check: single connect rule can't detect DOWN servers
- BUG/MINOR: tcp-check: use the server's service port as a fallback
- BUG/MEDIUM: threads/queue: wake up other threads upon dequeue
- MINOR: log: stop emitting alerts when it's not possible to write on the socket
- BUILD/BUG: enable -fno-strict-overflow by default
- DOC: log: more than 2 log servers are allowed
- DOC: don't suggest using http-server-close
- BUG/MEDIUM: h2: properly account for DATA padding in flow control
- BUG/MINOR: h2: ensure we can never send an RST_STREAM in response to an RST_STREAM
- BUG/MINOR: listener: Don't decrease actconn twice when a new session is rejected
18.4.1
new: WAMP-SCRAM authentication
new: native vector extensions
fix: improve choosereactor
new: lots of new and improved documentation, component API and more
new: Docker image tooling now in this repo
fix: "fatal errors" in Component
fix: AIO/Component: create a new loop if already closed
fix: kwarg keys sometimes are bytes on Python2
fix: various improvements to new component API
Changes from 1.2.0 to 1.2.1:
C-Blosc internal sources updated to 1.14.3. This basically means that internal Zstd sources are bumped to 1.3.4, which may lead to noticeable improved speeds (specially for low compression ratios).
np.datetime64 and other scalar objects that have __getitem__() are now supported in _eval_blocks().
Vendored cpuinfo.py updated to 4.0.0 (ARM aarch64 is recognized now).
Allow setup.py to work even if not on Intel or ARM or PPC archs are found.
0.14:
Features:
Started using flake8 to improve coding style
Bug fixes:
The fix for issue #179 broke the argv emulator
Py2app could fail while reporting on possibly missing modules
The python executable included in the app bundle as sys.exectuable was not executable
2.3.6:
Single bug fix that ws a possible security issue so I have pushed a version out.
Fix order of arguments in SQLWriteFileDSN.c, fix unwanted free() in iusql.c
Add pkg-config files
61.1:
Common Changes
* CLDR 33:
- Two additional locales (Odia, Assamese) were brought up to Modern coverage level.
- 4 new transforms: fa-fa_FONIPA, ha-ha_NE, nv-nv_FONIPA, vec-vec_FONIPA.
- New currency code MRU for Mauritania.
- Arabic native vs. ASCII digits.
- Data additions & bug fixes.
* Many small API additions, improvements, and bug fixes.
ICU4C Specific Changes
* Added Google double-conversion library for formatting doubles. This is the library used in V8 and a number of other projects for converting doubles to decimals. To avoid name collisions, the library is linked internally under the ICU namespace as icu::double_conversion. Our copy of double_conversion is not intended for public usage.
* Re-wrote U8_NEXT macros to eliminate all library function calls.
Version 0.9.9:
Lmfit now uses the asteval (https://github.com/newville/asteval) package
instead of distributing its own copy. The minimum required asteval version
is 0.9.12, which is available on PyPi. If you see import errors related to
asteval, please make sure that you actually have the latest version installed.
ASTEVAL is a safe(ish) evaluator of Python expressions and statements, using
Python's ast module. The idea is to provide a simple, safe, and robust
miniature mathematical language that can handle user-input. The emphasis here
is on mathematical expressions, and so many functions from numpy are imported
and used if available.
Version 4.5
* :class:~.spawn and :class:~.fdspawn now have a use_poll parameter.
If this is True, they will use :func:select.poll instead of :func:select.select.
poll() allows file descriptors above 1024, but it must be explicitly
enabled due to compatibility concerns
* The :meth:.pxssh.login method has several new and changed options:
* The option password_regex allows changing
the password prompt regex, for servers that include password: in a banner
before reaching a prompt
* :meth:~.pxssh.login now allows for setting up SSH tunnels to be requested once
logged in to the remote server. This option is ssh_tunnels
The structure should be like this::
{
'local': ['2424:localhost:22'], # Local SSH tunnels
'remote': ['2525:localhost:22'], # Remote SSH tunnels
'dynamic': [8888], # Dynamic/SOCKS tunnels
}
* The option spawn_local_ssh=False allows subsequent logins from the
remote session and treats the session as if it was local
* Setting sync_original_prompt=False will prevent changing the prompt to
something unique, in case the remote server is sensitive to new lines at login
* If ssh_key=True is passed, the SSH client forces forwarding the authentication
agent to the remote server instead of providing a key
2018-02-23 Alex Tutubalin <lexa@lexa.ru>
Secunia #81000:
Credit: Laurent Delosieres, Secunia Research at Flexera
* leaf_hdr_load_raw: check for image pointer for demosaiced raw
* NOKIARAW parser: check image dimensions readed from file
* quicktake_100_load_raw: check width/height limits
* LibRaw 0.18.8
2018-01-29 Alex Tutubalin <lexa@lexa.ru>
* Checks for width+left_margin/height+top_margin not larger than 64k
* LIBRAW_MAX_ALLOC_MB define limits maximum image/raw_image allocation
(default is 2048 so 2Gb per array)
* LibRaw::read_shorts item count is now unsigned
2018-01-19 Alex Tutubalin <lexa@lexa.ru>
Secunia #79000:
Credit: Laurent Delosieres, Secunia Research at Flexera
* All legacy (RGB raw) image loaders checks for imgdata.image is not NULL
* kodak_radc_load_raw: check image size before processing
* legacy memory allocator: allocate max(widh,raw_width)*max(height,raw_height)
* LibRaw 0.18.7
2017-12-06 Alex Tutubalin <lexa@lexa.ru>
Secunia #76000:
* Fixed fuji_width handling if file is neither fuji nor DNG
* Fixed xtrans interpolate for broken xtrans pattern
* Fixed panasonic decoder
* LibRaw 0.18.6
2017-09-22 Alex Tutubalin <lexa@lexa.ru>
* Fixed possible out of bound access in Kodak 6500 loader
* LibRaw 0.18.5
2017-09-12 Alex Tutubalin <lexa@lexa.ru>
* CVE-2017-14348: Fix for possible heap overrun in Canon makernotes parser
Credit: Henri Salo from Nixu Corporation
* LibRaw 0.18.4
2017-09-09 Alex Tutubalin <lexa@lexa.ru>
* Fix for CVE-2017-13735
* CVE-2017-14265: Additional check for X-Trans CFA pattern data
* LibRaw 0.18.3
2017-03-08 Alex Tutubalin <lexa@lexa.ru>
* Fixed several errors (Secunia advisory SA75000)
* ACES colorspace output option included in dcraw_emu help page
* Avoided possible 32-bit overflows in Sony metadata parser
* Phase One flat field code called even for half-s
* LibRaw 0.18.2
2017-02-12 Alex Tutubalin <lexa@lexa.ru>
* Camera Support: Sigma Quatto H
* Fixed bug in FujiExpoMidPointShift parser
* Fixed wrong black level in Sony A350
* Added standard integer types for VisualStudio 2008 and earlier
* LibRaw 0.18.1
2016-12-27 Alex Tutubalin <lexa@lexa.ru>
* Licensing changes:
- there is no 'LibRaw Software License 27032010' licensing anymore (and all signed
agreements have expired)
- LibRaw is now dual-licensed: LGPL 2.1 or CDDL 1.0
* Camera support (+87):
Apple: iPad Pro, iPhone SE, iPhone 6s, iPhone 6 plus, iPhone 7, iPhone 7 plus
BlackMagic Micro Cinema Camera, URSA, URSA Mini
Canon PowerShot G5 X, PowerShot G7 X Mark II, PowerShot G9 X,
IXUS 160 (CHDK hack), EOS 5D Mark IV, EOS 80D, EOS 1300D, EOS M10, EOS M5,
EOS-1D X Mark II
Casio EX-ZR4000/5000
DXO One,
FujiFilm X-Pro2, X70, X-E2S, X-T2
Gione E7
GITUP GIT2
Google Pixel,Pixel XL
Hasselblad X1D, True Zoom
HTC MyTouch 4G, One (A9), One (M9), 10
Huawei P9
Leica M (Typ 262), M-D (Typ 262), S (Typ 007), SL (Typ 601), X-U (Typ 113), TL
LG G3, G4
Meizy MX4
Nikon D5, D500, D3400
Olympus E-PL8, E-M10 Mark II, Pen F, SH-3, E-M1-II
Panasonic DMC-G8/80/81/85, DMC-GX80/85, DMC-TZ80/81/85/ZS60,
DMC-TZ100/101/ZS100,DMC-LX9/10/15, FZ2000/FZ2500
Pentax K-1, K-3 II, K-70
PhaseOne IQ3 100MP
RaspberryPi Camera, Camera V2
Ricoh GR II
Samsung Galaxy S7, S7 Edge
Sigma sd Quattro
Sony A7S II, ILCA-68 (A68),ILCE-6300,DSC-RX1R II,DSC-RX10III, DSC-RX100V,
ILCA-99M2 (A99-II), a6500
IMX214, IMX219, IMX230, IMX298-mipi 16mp, IMX219-mipi 8mp, Xperia L
PtGrey GRAS-50S5C
YUNEEC CGO4
Xiaomi MI3, RedMi Note3 Pro
* Floating point DNG support:
- new data fields:
imgdata.rawdata.float_image - bayer float data
imgdata.rawdata.float3_image - 3-component float data
imgdata.rawdata.float4_image - 4-component float data
imgdata.color.fmaximum - float data maximum (calculated from real data,
rounded to 1.0 if below 1.0)
- new raw processing flag
LIBRAW_PROCESSING_CONVERTFLOAT_TO_INT - converts float data to 16-bit
integer immediately after decoding with default parameters
- new API Calls:
int LibRaw::is_floating_point() returns non-zero if RAW file contains
floating point data
int LibRaw::have_fpdata() returns non-zero if rawdata.float*_image is not
null
LibRaw::convertFloatToInt(float dmin=4096.f, float dmax=32767.f,
float dtarget = 16383.f)
converts float/float3/float4_image to raw_image/color3/color4_image
with or without scaling:
* New API calls
unsigned LibRaw::capabilities and C-API libraw_capabilities()
allows developers to determine LibRaw compile flags at runtime.
Returns ORed bit fields:
LIBRAW_CAPS_RAWSPEED - LibRaw was compiled with RawSpeed Support
LIBRAW_CAPS_DNGSDK - LibRaw was compiled with Adobe DNG SDK
LIBRAW_CAPS_DEMOSAICSGPL2, LIBRAW_CAPS_DEMOSAICSGPL3 - LibRaw was compiled with
demosaic packs (GPL2/GPL3)
* More metadata parsed:
- White balance coefficients stored in the raw file are extracted into:
int imgdata.color.WBCoeffs[256][4] - array indexed by EXIF lightsource type
for example, WBCoeffs[21][..] contains coefficients for D65 lightsource
float imgdata.color.WBCT_Coeffs[64][5] contains white balance data specified
for given color temperature: WBCT_Coeffs[i][0] contains temperature value,
and [1]..[4] are WB coefficients.
- DNG analog balance, per-channel black/white level, and forward matrix
- vendor specific metadata stored in vendor-specific data structures
* new C-API calls:
void libraw_set_user_mul(libraw_data_t *lr,int index, float val);
void libraw_set_ca_correction(libraw_data_t *lr,int ca_correc,
float ca_red, float ca_blue);
void libraw_set_cfalinenoise(libraw_data_t *lr,int cfaline, float linenoise);
void libraw_set_wf_debanding(libraw_data_t *lr, int wf_debanding,
float wfd0, float wfd1, float wfd2, float wfd3);
void libraw_set_interpolation_passes(libraw_data_t *lr,int passes);