Version 1.4.0, Tue Sep 27 2022
* Send more accurate response to _NET_REQUEST_FRAME_EXTENTS.
* Support arbitrary key binds and semi-arbitrary button binds.
* Reread config and remanage all windows on SIGHUP.
Version 1.3.1, Fri Jul 30 2021
* Documentation updates & fixes only.
Version 1.3.0, Fri Jul 16 2021
* Add EWMH 1.5 _NET_WM_STATE_FOCUSED support.
* Add basic multi-monitor support when Randr >= 1.5 available.
* Remove border when window is maximised (useful for multi-monitor).
* Set _NET_FRAME_EXTENTS whenever relevant.
* Add new -wholescreen option to reinstate old behaviour of treating screen
as one large display.
* Remove -DVWM build option. User can run with "-numvdesks 1" if necessary.
Version 1.2.1, Mon Jul 5 2021
* Fix QWERTZ_KEYMAP build option [Sime Ramov]
Version 1.2.0, Mon Jul 5 2021
* Code reorder. Better code separation and many more/better comments.
* Don't focus mapped window if pointer not on same screen [by Ben Stern]
* Added QWERTZ_KEYMAP build option [by Thomas Egerer]
* Remove option to exclude help and error messages.
* Set focus to root window when closing current [adapted from Arch patch]
* Add tiny configure script to help with Debian multiarch cross-builds.
* Generate some documentation from HTML source.
The default is now auto detection, which will enable mktools on platforms that
have set _OPSYS_SUPPORTS_MKTOOLS. Users can still override either way via
PKGSRC_USE_MKTOOLS.
Please add and enable on other platforms once they have been verified.
8.4.1
FIX: Windows drive path separators should normalize like other path separators.
FIX: Fix a Windows pattern parsing issue that caused absolute paths with ambiguous drives to not parse correctly.
1.10.0 - 2022-09-18
Added:
Add the following to the list of directories that cannot be traversed: __pypackages__, .hg, .hatch, .tox, .nox
Add deprecated option to allow ambiguous features
Fixed:
Improve tracking of dynamic metadata
Fix core metadata for entries in project.optional-dependencies that use direct references
1.9.0 - 2022-09-09
Changed:
File pattern matching now more closely resembles Git's behavior
Added:
Implement a minimal version of prepare_metadata_for_build_wheel and prepare_metadata_for_build_editable for non-frontend tools that only need to inspect a project's metadata
Add metadata command to view PEP 621 project metadata
Improve error messages for SPDX license errors
Retroactively support License-File for core metadata starting at version 2.1
Bump the minimum supported version of pathspec to 0.10.1
Fixed:
Allow the valid non-SPDX license values LicenseRef-Public-Domain and LicenseRef-Proprietary
Show the help text of the CLI when no subcommand is selected
Version 18.9.1 (Current)
This is a security release.
Notable changes
The following CVEs are fixed in this release:
CVE-2022-32212: DNS rebinding in --inspect on macOS (High)
Insufficient fix for macOS devices on v18.5.0
CVE-2022-32222: Node 18 reads openssl.cnf from /home/iojs/build/ upon startup on MacOS (Medium)
CVE-2022-32213: HTTP Request Smuggling - Flawed Parsing of Transfer-Encoding (Medium)
Insufficient fix on v18.5.0
CVE-2022-32215: HTTP Request Smuggling - Incorrect Parsing of Multi-line Transfer-Encoding (Medium)
Insufficient fix on v18.5.0
CVE-2022-35256: HTTP Request Smuggling - Incorrect Parsing of Header Fields (Medium)
CVE-2022-35255: Weak randomness in WebCrypto keygen
Version 16.17.1 'Gallium' (LTS)
This is a security release.
Notable changes
The following CVEs are fixed in this release:
CVE-2022-32212: DNS rebinding in --inspect on macOS (High)
CVE-2022-32213: bypass via obs-fold mechanic (Medium)
CVE-2022-35255: Weak randomness in WebCrypto keygen
CVE-2022-35256: HTTP Request Smuggling - Incorrect Parsing of Header Fields (Medium)
Version 14.20.1 'Fermium' (LTS)
This is a security release.
Notable changes
The following CVEs are fixed in this release:
CVE-2022-32212: DNS rebinding in --inspect on macOS (High)
CVE-2022-32213: bypass via obs-fold mechanic (Medium)
CVE-2022-35256: HTTP Request Smuggling Due to Incorrect Parsing of Header Fields (Medium)
v6.7.0
Minor Changes
name[template]: recommend to use templating as suffix on names
Bugfixes
Refactor no-loop-var-prefix rule
key-order: now sorts block/rescue/always to the bottom
Ensure we do not return relative paths outside the project
fix: use ansible-compat to install collections
Change rich markdown theme/colors
schema: allow listen key on handlers
Ensure that symlinked arguments are resolved
Document No hosts matched the subscripted pattern
Use site.getuserbase() to detect ansible executable
0.26.3 [2022-09-22]
Wayland: Mark windows in which a bell occurs as urgent on compositors that
support the xdg-activation protocol
Allow passing null bytes through the system clipboard (#5483)
ssh kitten: Fix KITTY_PUBLIC_KEY not being encoded properly when
transmitting (#5496)
Sessions: Allow controlling which OS Window is active via the
focus_os_window directive
Wayland: Fix for bug in NVIDIA drivers that prevents transparency working
(#5479)
Wayland: Fix for a bug that could cause kitty to become non-responsive when
using multiple OS windows in a single instance on some compositors (#5495)
Wayland: Fix for a bug preventing kitty from starting on Hyprland when using
a non-unit scale (#5467)
Wayland: Generate a XDG_ACTIVATION_TOKEN when opening URLs or running
programs in the background via the launch action
Fix a regression that caused kitty not to restore SIGPIPE after python nukes
it when launching children. Affects bash which does not sanitize its signal
mask. (#5500)
Fix a use-after-free when handling fake mouse clicks and the action causes
windows to be removed/re-allocated (#5506)
0.26.2 [2022-09-05]
Allow creating overlay-main windows, which are treated as the active window
unlike normal overlays (#5392)
hints kitten: Allow using The launch command as the program to run, to open
the result in a new kitty tab/window/etc. (#5462)
hyperlinked_grep kitten: Allow control over which parts of rg output are
hyperlinked (#5428)
Fix regression in 0.26.0 that caused launching kitty without working STDIO
handles to result in high CPU usage and prewarming failing (#5444)
The launch command: Allow setting the margin and padding for newly created
windows (#5463)
macOS: Fix regression in 0.26.0 that caused asking the user for a line of
input such as for set_tab_title to not work (#5447)
hints kitten: hyperlink matching: Fix hints occasionally matching text on
subsequent line as part of hyperlink (#5450)
Fix a regression in 0.26.0 that broke mapping of native keys whose key
codes did not fit in 21 bits (#5452)
Wayland: Fix remembering window size not accurate when client side
decorations are present
Fix an issue where notification identifiers were not sanitized leading to
code execution if the user clicked on a notification popup from a malicious
source. Thanks to Carter Sande for discovering this vulnerability.
0.26.1 [2022-08-30]
ssh kitten: Fix executable permission missing from kitty bootstrap script
(#5438)
Fix a regression in 0.26.0 that caused kitty to no longer set the LANG
environment variable on macOS (#5439)
Allow specifying a title when using the set_tab_title action (#5441)
0.26.0 [2022-08-29]
A new option remote_control_password to use fine grained permissions for
what can be remote controlled (#5320)
Reduce startup latency by ~30 milliseconds when running kittens via key
bindings inside kitty (#5159)
A new option modify_font to adjust various font metrics like underlines,
cell sizes etc. (#5265)
A new shortcut ctrl+shift+f1 to display the kitty docs in a browser
Graphics protocol: Only delete temp files if they have the string
tty-graphics-protocol in their file paths. This prevents deletion of
arbitrary files in /tmp.
Deprecate the adjust_baseline, adjust_line_height and adjust_column_width
options in favor of modify_font
Wayland: Fix a regression in the previous release that caused mouse cursor
animation and keyboard repeat to stop working when switching seats (#5188)
Allow resizing windows created in session files (#5196)
Fix horizontal wheel events not being reported to client programs when they
grab the mouse (#2819)
macOS: Remote control: Fix unable to launch a new OS window or background
process when there is no OS window (#5210)
macOS: Fix unable to open new tab or new window when there is no OS window
(#5276)
kitty @ set-colors: Fix changing inactive_tab_foreground not working (#5214)
macOS: Fix a regression that caused switching keyboard input using Eisu and
Kana keys not working (#5232)
Add a mappable action to toggle the mirrored setting for the tall and fat
layouts (#5344)
Add a mappable action to switch between predefined bias values for the tall
and fat layouts (#5352)
Wayland: Reduce flicker at startup by not using render frames immediately
after a resize (#5235)
Linux: Update cursor position after all key presses not just pre-edit text
changes (#5241)
ssh kitten: Allow ssh kitten to work from inside tmux, provided the tmux
session inherits the correct KITTY env vars (#5227)
ssh kitten: A new option --symlink-strategy to control how symlinks are
copied to the remote machine (#5249)
ssh kitten: Allow pressing Ctrl+C to abort ssh before the connection is
completed (#5271)
Bash integration: Fix declare not creating global variables in .bashrc
(#5254)
Bash integration: Fix the inherit_errexit option being set by shell
integration (#5349)
kitty @ scroll-window allow scrolling by fractions of a screen (#5294)
remote files kitten: Fix working with files whose names have characters that
need to be quoted in shell scripts (#5313)
Expand ~ in paths configured in editor and exe_search_path (#5298)
Allow showing the working directory of the active window in tab titles
(#5314)
ssh kitten: Allow completion of ssh options between the destination and
command (#5322)
macOS: Fix speaking selected text not working (#5357)
Allow ignoring failure to close windows/tabs via rc commands (#5406)
Fix hyperlinks not present when fetching text from the history buffer
(#5427)
0.25.2 [2022-06-07]
A new command edit-in-kitty to Edit files in new kitty windows even over SSH
Allow getting the last non-empty command output easily via an action or
remote control (#4973)
Fix a bug that caused macos_colorspace to always be default regardless of
its actual value (#5129)
diff kitten: A new option kitten-diff.ignore_name to exclude files and
directories from being scanned (#5171)
ssh kitten: Fix bash not being executed as a login shell since kitty 0.25.0
(#5130)
macOS: When pasting text and the clipboard has a filesystem path, paste the
full path instead of the text, which is sometimes just the file name (#5142)
macOS: Allow opening executables without a file extension with kitty as well
(#5160)
Themes kitten: Add a tab to show user defined custom color themes separately
(#5150)
Iosevka: Fix incorrect rendering when there is a combining char that does
not group with its neighbors (#5153)
Weston: Fix client side decorations flickering on slow computers during
window resize (#5162)
Remote control: Fix commands with large or asynchronous payloads like kitty
@ set-backround-image, kitty @ set-window-logo and kitty @ select-window not
working correctly when using a socket (#5165)
hints kitten: Fix surrounding quotes/brackets and embedded carriage returns
not being removed when using line number processing (#5170)
v2.2.0
- feat: added new glyph sets: math, set, symbol
v2.1.0
- feat: added support for glyph set selection (--glyph-set/-g)
v2.0.1
- feat: describe step delays in the README
- feat: readme config examples
Alan Coopersmith (10):
Update README for gitlab migration
Update configure.ac bug URL for gitlab migration
Build xz tarballs instead of bzip2
Fix spelling/wording issues
gitlab CI: add a basic build test
send_axes: Mark switch statement fallthrough as intentional
Resolve -Wsign-compare warnings
Variable scope reductions as suggested by cppcheck
Remove obsolete casts from Xmalloc() and Xcalloc() calls
libXtst 1.2.4
Emil Velikov (1):
autogen.sh: use quoted string variables
Mihail Konev (1):
autogen: add default patch prefix
Peter Hutterer (1):
autogen.sh: use exec instead of waiting for configure to finish
Use of this extension has mostly been supplanted by use of the X RandR
extension, but there may still be some users out there.
Alan Coopersmith (9):
Update README for gitlab migration
Update configure.ac bug URL for gitlab migration
Build xz tarballs instead of bzip2
Fix spelling/wording issues
gitlab CI: add a basic build test
Fix -Wsign-compare warning
Variable scope reductions as suggested by cppcheck
Update GetOldReq to use _XGetRequest()
libXxf86vm 1.1.5
Emil Velikov (1):
autogen.sh: use quoted string variables
Mihail Konev (1):
autogen: add default patch prefix
Peter Hutterer (1):
autogen.sh: use exec instead of waiting for configure to finish
Welcome to 2016.
MESSAGE content has been moved to an installed README and improved.
Prepared in wip by dsainty@ with some help from gdt@.
Upstream NEWS
Onvif discovery is now enabled by default. This features increases
build time, but the benefit is auto-discovery of any Onvif compliant
camera. Please note that this feature is still experimental. It has
not been tested in a large environment or with a large variety of
cameras. Using this tool is largely self explanatory, but if you are
looking for documentation it can be found on the @altaroca ’s blog
site. As time allows, we will bring the documentation over to our
readthedocs site. Volunteers to do this work are welcome.
ZoneMinder now has a telemetry deamon which collects information about
your machine. This was done to learn how our user base uses
ZoneMinder, the most common system size, choice of distro, cpu,
memory, and a couple of other things. This will help us focus our
efforts on what features get used the most. Since this was written in
Perl, you can easily see for yourself what information is being
sent. Note that this feature defaults to ON. If this is not what you
want, then you can turn it off under Options. In a future release, we
plan to include an install wizard, which will prompt the user about
this feature.
Have you ever wished for the motion detection zones to be live, rather
than a static image? Well they are now! Creating or modifying zones
works exactly the same as before, but with the live stream running in
the background. If you need to freeze the stream, there is a Pause
button at the bottom of the window to do just that.
A new feature called Montage Review has been added. This can be
thought of as a modified version of the original montage feature with
features such as "scrubbing" through video. The Montage Review screen
has received sufficient testing to be part of the release, but you
should still treat this feature as experimental. We expect there to be
additional fixes and refinements.
3.8.3 (2022-09-21)
==================
This is the last :doc:`aiohttp <index>` release tested under
Python 3.6. The 3.9 stream is dropping it from the CI and the
distribution package metadata.
Bugfixes
--------
- Increased the upper boundary of the :doc:`multidict:index` dependency
to allow for the version 6 -- by :user:`hugovk`.
It used to be limited below version 7 in :doc:`aiohttp <index>` v3.8.1 but
was lowered in v3.8.2 via :pr:`6550` and never brought back, causing
problems with dependency pins when upgrading. :doc:`aiohttp <index>` v3.8.3
fixes that by recovering the original boundary of ``< 7``.
Caddy 2.6
This is our biggest release since Caddy 2.
Caddy 2 changed the way the world serves the Web. By providing an online config
API, automatic HTTPS, unlimited extensibility, certificate automation at scale,
modern protocols, sane defaults, and an unrivaled developer experience, we
boldly raised the bar for web servers.
Now with Caddy 2.6, we're doing it again. Caddy 2.6 is the first
general-purpose web server to seamlessly enable the newly-standardized HTTP/3
protocol for all configurations by default. We've virtualized the file system
so you can serve content from anywhere or anything. New event features let you
observe and control Caddy's internals with custom actions. Caddy is more useful
than ever for developers with its enhanced CLI tooling and features. And it's
faster than ever with non-trivial performance improvements. We think you will
love this release.
v2.6.1
Hotfix for unix sockets, the encode handler, and the caddy file-server command.
Please see the release notes for v2.6.0 for other important information if
you're coming from < 2.6!
1.5.2
Fixed
- Fix regression in `dylib` build artifacts not being found since 1.5.0.
- Fix regression in sdist missing examples and other supplementary files since 1.5.0.
v65.4.0
-------
Changes
* Merge with pypa/distutils@d82d926 including support for DIST_EXTRA_CONFIG in pypa/distutils-177.
v65.3.0
-------
Changes
* Stop ``ConfigDiscovery.analyse_name`` from splatting the ``Distribution.name`` attribute -- by :user:`jeamland`
Documentation changes
* Changed requires to requests in the pyproject.toml example in the :ref:`Dependency management section of the Quickstart guide <userguide/quickstart:dependency-management>` -- by :user:`mfbutner`
Misc
* Fixed accidental name matching in editable hooks.
v65.2.0
-------
Changes
* Sync with pypa/distutils@22b9bcf, including fixed cross-compiling support and removing deprecation warning per pypa/distutils-169.
v65.1.1
-------
Misc
* Avoided circular imports in meta path finder for editable installs when a
missing module has the same name as its parent.
v65.1.0
-------
Changes
* Remove monkeypatching of msvc9compiler.
Documentation changes
* Corrected documentation on how to use the `legacy-editable` mode.
v65.0.2
-------
Misc
* Restored distutils msvccompiler and msvc9compiler modules and marked as deprecated (pypa/distutils@c802880).
v65.0.1
-------
Documentation changes
* Added clarification to :doc:`/userguide/quickstart` about support
to ``setup.py``.
Misc
* Fixed backward compatibility of editable installs and custom ``build_ext``
commands inheriting directly from ``distutils``.
* Fixed ``buid_meta.prepare_metadata_for_build_wheel`` when
given ``metadata_directory`` is ``"."``.
v65.0.0
-------
Breaking Changes
* Removed 'msvccompiler' and 'msvc9compiler' modules from distutils.
* Remove bdist_msi and bdist_wininst commands, which have been deprecated since Python 3.9. Use older Setuptools for these behaviors if needed.
Documentation changes
* Changed the note in ``keywords`` documentation regarding editable installations
to specify which ``setuptools`` version require a minimal ``setup.py`` file or not.
3.4.3
All struct args are passed by value, regardless of size, as per ABIs.
Enable static trampolines for Cygwin.
Add support for Loongson's LoongArch64 architecture.
Fix x32 static trampolines.
Fix 32-bit x86 stdcall stack corruption.
Fix ILP32 aarch64 support.
Version history:
------- -------
4.12 - 25 September 2022
Between 4.11 and 4.12, the following bugfixes were accomplished:
Bug 794584 - Register not updated when scheduled transactions created
Bug 798262 - Scheduled transactions with blank amounts do not get created.
Bug 798385 - Description to often only "Landesbank Hessen-Thuringen Girozentrale"
Prepend the Ulitimate Creditor or Ultimate Debtor to the transaction description.
Bug 798565 - Import map editor: deletion of a map does not mark gnucash document as dirty
Bug 798573 - Tab Width Behaviour
Formerly when the notebook tabs on the left or right, the space used fluctuated depending on tab label width. This change sets the label width to the preference setting when the tabs are on the left or right but when top or bottom the width is set to the number of characters when shorter than the preference setting so they take up less room.
Bug 798578 - MT940 imports broken - all transactions have date of first transaction
Bug 798585 - segfault running sample script
simple_business_create.py.
Bug 798588 - sx scrubbing was using incorrect free function
Bug 798590 - Transaction report: wrong type argument in position 1
Bug 798598 - Selecting a line in a Vendor Credit Note changes display of Subtotal cell to 0.00
Bug 798611 - Date changing when changing timezone by one hour
When getting a date from the date editor anywhere in the program set the time to neutral time instead of the beginning of the day unless get_date_internal is called with GNC_DATE_EDIT_SHOW_TIME in which case the user-provided time is used.
Bug 798616 - Can't register amount greater than 9,000,000,000
Because when loading the value the split in the xml backend doesn't yet have a parent so the code tried to convert to GNC_COMMODITY_MAX_FRACTION and if the numerator was larger than 10^10 that would overflow. To fix it this changes the "don't know" response in get_currency_denom and get_commodity_denom to GNC_DENOM_AUTO which will normally leave the denominator alone.
The following fixes and improvements were not associated with bug reports:
It is now possible to edit the description, notes, and memo fields of new transactions in the import matcher and to do so for multiple transactions. The option is accessed via a context menu on selected import lines.
Show GnuCash's installation and configuration configuration paths in the About dialog. List the same from the command line with a --paths option.
Add account hierarchy templates for locale es_AR
Continued work on the Stock Transaction Assistant. If you want to try out this new way of recording your investment transactions start GnuCash with the --extra option. The stock assistant is available on the toolbar and from the Actions menu when a register for a STOCK or FUND account is focused.
Replace the very obsolete ghelp: URI scheme with help: and install the documentation according to the XDG documentation spec on non-Mac Linux systems. This ensures that the Help menu documentation items work with Gnome 42 and later.
Conforming to the XDG documentation spec, rename the root page of the Help manual to index from help. This has the happy side effect of removing some special-case code from the macOS documentation links.
Standardize the top-level Equity and Assets account names in the French templates to "Capitaux propres" and "Actif" respectively.
[gnc-ab-utils] concise string accumulator
[gnc-glib-utils] gnc_g_list_stringjoin skips NULL data
[ifrs-cost-basis] identify sale/purchase according to truth table instead of via flawed heuristics
[ifrs-cost-basis] add options used as a report footer
[lot-viewer] Show Open & Close dates only when they have a value.
Fix use-after-free crash in gnc_set_busy_cursor.
Create Swiss SMB account chart acctchrt_pme-19.gnucash-xea.
[date-utilities] avoid report crash if start > end date
[html-chart] add percent formatter for numbers for older javascript.
[trial-balance] set default price-source to average-cost
to minimise complaints (see Bug 798550)
Use macos-latest github runner for mac tests.
[dialog-price] Price Database: Insert help buttons
Disable transaction type (i.e. Bill or Invoice) in Invoice/Bill Registers, determining the type by inspecting the money flow.
Fix python tests dependencies
So that ninja check works from a clean build directory with Python enabled.
Review of account templates C—missing placeholders, redundancies
Fixed a variety of fixed memory leaks, poor list handling, and dangling reference errors.
New API:
gnc_tm_get_today_neutral to complement gnc_tm_get_today_begin and
gnc_tm_get_today_end.
gnc_get_dialog_widget_from_id
gnc_list_all_paths
Deprecations: None.
New and Updated Translations: Basque, Chinese (Simplified), Croatian, Dutch, English (Australia), English (New Zealand), English (United Kingdom), French, German, Hebrew, Hungarian, Indonesian, Italian, Korean, Marathi, Polish, Portuguese, Portuguese (Brazil), Russian, Swedish, Ukrainian
┌──────────────────────────────┐
│ Release notes for i3 v4.21 │
└──────────────────────────────┘
This is i3 v4.21. This version is considered stable. All users of i3 are
strongly encouraged to upgrade.
The biggest change in this release is that you can now drag tiling windows
with your mouse (floating windows could already be dragged). For more details
on how to use this feature, please refer to the userguide:
https://i3wm.org/docs/userguide.html#_moving_tiling_containers_with_the_mouse
A big thank you goes out to our core i3 developer Orestis Floros who made this
feature possible, based on previous work from Michael Forster and Tony Crisci!
┌────────────────────────────┐
│ Changes in i3 v4.21 │
└────────────────────────────┘
• Allow dragging tiling windows with the mouse
• Add client.focused_tab_title color option
• Add support for multiple output names in the focus command,
allowing users to cycle focus between e.g. VGA1 and LVDS1 but not DVI0.
• Add a toggle option to the title_window_icon command
• i3 switched from the obsolete PCRE 8.x regular expression matching
library to the current PCRE2 10.x version.
┌────────────────────────────┐
│ Bugfixes │
└────────────────────────────┘
• docs/ipc: document all window_type values
• docs/userguide: clarify the difference between the “workspace N” and
“workspace number N” commands
• i3bar: fix default font not being applied to bars if defined after bar block
• i3-dmenu-desktop: add backslashes for the exec command,
which fixes opening some .desktop files (e.g. electrum)
• i3-sensible-pager: sanitize LESS environment variable to remove -E or -F
• testsuite: catch i3 crashes instead of hanging on crash
• Fix logging on machines with 256 GB of RAM
• Do not replace existing IPC socket on start, to prevent clobbering
the IPC socket when running i3 within i3 (e.g. in Xepyhr, for development)
• Refuse to start without a valid IPC socket
• Fix focus when moving container between outputs with mouse warp and
focus_follows_mouse
• Fix endless loop with transient_for windows
• Fix wrong “failed” IPC reply on move workspace to output
• Fix WM registration selection (from WM_S_S<screen> to WM_S<screen>)
• avoid graphics artifacts when changing the layout tree by
initializing surfaces to all black
• update parent split con titles when child container swaps position with
another child container
• Fix segfault if command in bindsym is empty
• Fix segfault with explicit mode "default" key bindings
• Fix crash if config contains nested variables.
• strip trailing whitespace in bar output names
• Fix crash with long commands
• Fix changing borders by restoring BS_NORMAL _MOTIF_WM_HINTS correctly
* 5.3.0 (May 6, 2022)
This release contains many speed and space optimizations, from micro
optimizations on common paths to rework of internal data structures and
locking schemes, and many more too detailed to list below. Multiple percent
of system level metric improvements were measured in tested production
workloads. The release has gone through large-scale production testing.
New features:
- Add the thread.idle mallctl which hints that the calling thread will be
idle for a nontrivial period of time. (@davidtgoldblatt)
- Allow small size classes to be the maximum size class to cache in the
thread-specific cache, through the opt.[lg_]tcache_max option. (@interwq,
@jordalgo)
- Make the behavior of realloc(ptr, 0) configurable with opt.zero_realloc.
(@davidtgoldblatt)
- Add 'make uninstall' support. (@sangshuduo, @Lapenkov)
- Support C++17 over-aligned allocation. (@marksantaniello)
- Add the thread.peak mallctl for approximate per-thread peak memory tracking.
(@davidtgoldblatt)
- Add interval-based stats output opt.stats_interval. (@interwq)
- Add prof.prefix to override filename prefixes for dumps. (@zhxchen17)
- Add high resolution timestamp support for profiling. (@tyroguru)
- Add the --collapsed flag to jeprof for flamegraph generation.
(@igorwwwwwwwwwwwwwwwwwwww)
- Add the --debug-syms-by-id option to jeprof for debug symbols discovery.
(@DeannaGelbart)
- Add the opt.prof_leak_error option to exit with error code when leak is
detected using opt.prof_final. (@yunxuo)
- Add opt.cache_oblivious as an runtime alternative to config.cache_oblivious.
(@interwq)
- Add mallctl interfaces:
+ opt.zero_realloc (@davidtgoldblatt)
+ opt.cache_oblivious (@interwq)
+ opt.prof_leak_error (@yunxuo)
+ opt.stats_interval (@interwq)
+ opt.stats_interval_opts (@interwq)
+ opt.tcache_max (@interwq)
+ opt.trust_madvise (@azat)
+ prof.prefix (@zhxchen17)
+ stats.zero_reallocs (@davidtgoldblatt)
+ thread.idle (@davidtgoldblatt)
+ thread.peak.{read,reset} (@davidtgoldblatt)
Bug fixes:
- Fix the synchronization around explicit tcache creation which could cause
invalid tcache identifiers. This regression was first released in 5.0.0.
(@yoshinorim, @davidtgoldblatt)
- Fix a profiling biasing issue which could cause incorrect heap usage and
object counts. This issue existed in all previous releases with the heap
profiling feature. (@davidtgoldblatt)
- Fix the order of stats counter updating on large realloc which could cause
failed assertions. This regression was first released in 5.0.0. (@azat)
- Fix the locking on the arena destroy mallctl, which could cause concurrent
arena creations to fail. This functionality was first introduced in 5.0.0.
(@interwq)
Portability improvements:
- Remove nothrow from system function declarations on macOS and FreeBSD.
(@davidtgoldblatt, @fredemmott, @leres)
- Improve overcommit and page alignment settings on NetBSD. (@zoulasc)
- Improve CPU affinity support on BSD platforms. (@devnexen)
- Improve utrace detection and support. (@devnexen)
- Improve QEMU support with MADV_DONTNEED zeroed pages detection. (@azat)
- Add memcntl support on Solaris / illumos. (@devnexen)
- Improve CPU_SPINWAIT on ARM. (@AWSjswinney)
- Improve TSD cleanup on FreeBSD. (@Lapenkov)
- Disable percpu_arena if the CPU count cannot be reliably detected. (@azat)
- Add malloc_size(3) override support. (@devnexen)
- Add mmap VM_MAKE_TAG support. (@devnexen)
- Add support for MADV_[NO]CORE. (@devnexen)
- Add support for DragonFlyBSD. (@devnexen)
- Fix the QUANTUM setting on MIPS64. (@brooksdavis)
- Add the QUANTUM setting for ARC. (@vineetgarc)
- Add the QUANTUM setting for LoongArch. (@wangjl-uos)
- Add QNX support. (@jqian-aurora)
- Avoid atexit(3) calls unless the relevant profiling features are enabled.
(@BusyJay, @laiwei-rice, @interwq)
- Fix unknown option detection when using Clang. (@Lapenkov)
- Fix symbol conflict with musl libc. (@georgthegreat)
- Add -Wimplicit-fallthrough checks. (@nickdesaulniers)
- Add __forceinline support on MSVC. (@santagada)
- Improve FreeBSD and Windows CI support. (@Lapenkov)
- Add CI support for PPC64LE architecture. (@ezeeyahoo)
Incompatible changes:
- Maximum size class allowed in tcache (opt.[lg_]tcache_max) now has an upper
bound of 8MiB. (@interwq)
Optimizations and refactors (@davidtgoldblatt, @Lapenkov, @interwq):
- Optimize the common cases of the thread cache operations.
- Optimize internal data structures, including RB tree and pairing heap.
- Optimize the internal locking on extent management.
- Extract and refactor the internal page allocator and interface modules.
Documentation:
- Fix doc build with --with-install-suffix. (@lawmurray, @interwq)
- Add PROFILING_INTERNALS.md. (@davidtgoldblatt)
- Ensure the proper order of doc building and installation. (@Mingli-Yu)
22.1.0:
Backward-incompatible changes:
Remove support for SSLv2 and SSLv3.
The minimum cryptography version is now 37.0.2.
The OpenSSL.crypto.X509StoreContextError exception has been refactored, changing its internal attributes.
Deprecations:
OpenSSL.SSL.SSLeay_version is deprecated in favor of OpenSSL.SSL.OpenSSL_version. The constants OpenSSL.SSL.SSLEAY_* are deprecated in favor of OpenSSL.SSL.OPENSSL_*.
Changes:
Add OpenSSL.SSL.Connection.set_verify and OpenSSL.SSL.Connection.get_verify_mode to override the context object’s verification flags.
Add OpenSSL.SSL.Connection.use_certificate and OpenSSL.SSL.Connection.use_privatekey to set a certificate per connection (and not just per context)
v1.50.0
lib
This release adds nghttp2_option_set_no_rfc9113_leading_and_trailing_ws_validation which disables checking leading and trailing white spaces against HTTP field value.
nghttpx
nghttpx now respects backend-address-family option when dynamically resolving backend host with dns parameter in backend option.
v2.15.3
Fixed a crash in the unhashable-member checker when using a lambda as a dict key.
Fix a crash in the modified-iterating-dict checker involving instance attributes.
invalid-class-object does not crash anymore when __class__ is assigned alongside another variable.
Fix false positive for global-variable-not-assigned when a global variable is re-assigned via an ImportFrom node.
Fix false positive for undefined-loop-variable in for-else loops that use a function
having a return type annotation of NoReturn or Never.
--help-msg now accepts a comma-separated list of message IDs again.
2.37.1
[BUGFIX] Properly close file descriptor when logging unfinished queries.
[BUGFIX] TSDB: In the WAL watcher metrics, expose the type="exemplar" label
instead of type="unknown" for exemplar records.