2.6.4
- BUG/MINOR: ssl/cli: error when the ca-file is empty
- BUG/MAJOR: mworker: fix infinite loop on master with no proxies.
2.6.3
- BUG/MINOR: sockpair: wrong return value for fd_send_uxst()
- Revert "BUG/MINOR: peers: set the proxy's name to the peers section name"
- DEBUG: fd: split the fd check
- MEDIUM: resolvers: continue startup if network is unavailable
- BUG/MINOR: mworker: PROC_O_LEAVING used but not updated
- BUG/MEDIUM: mux-quic: fix missing EOI flag to prevent streams leaks
- MINOR: quic: Congestion control architecture refactoring
- MEDIUM: quic: Cubic congestion control algorithm implementation
- MINOR: quic: New "quic-cc-algo" bind keyword
- BUG/MINOR: quic: loss time limit variable computed but not used
- MINOR: quic: Stop looking for packet loss asap
- BUG/MAJOR: quic: Useless resource intensive loop qc_ackrng_pkts()
- MINOR: quic: Send packets as much as possible from qc_send_app_pkts()
- BUG/MEDIUM: queue/threads: limit the number of entries dequeued at once
- MINOR: ebtree: add ebmb_lookup_shorter() to pursue lookups
- BUG/MEDIUM: pattern: only visit equivalent nodes when skipping versions
- BUG/MINOR: mux-quic: prevent crash if conn released during IO callback
- CLEANUP: mux-quic: remove useless app_ops is_active callback
- BUG/MINOR: mux-quic: do not free conn if attached streams
- MINOR: peers: Use a dedicated reconnect timeout when stopping the local peer
- BUG/MEDIUM: peers: limit reconnect attempts of the old process on reload
- BUG/MINOR: peers: Use right channel flag to consider the peer as connected
- BUG/MEDIUM: dns: Properly initialize new DNS session
- BUG/MINOR: backend: Don't increment conn_retries counter too early
- MINOR: server: Constify source server to copy its settings
- REORG: server: Export srv_settings_cpy() function
- BUG/MEDIUM: proxy: Perform a custom copy for default server settings
- MINOR: peers: Add a warning about incompatible SSL config for the local peer
- BUG/MINOR: quic: Missing in flight ack eliciting packet counter decrement
- BUG/MEDIUM: quic: Floating point exception in cubic_root()
- BUILD: http: silence an uninitialized warning affecting gcc-5
- BUG/MINOR: quic: Avoid sending truncated datagrams
- BUG/MINOR: ring/cli: fix a race condition between the writer and the reader
- BUG/MEDIUM: sink: Set the sink ref for forwarders created during ring parsing
- BUG/MINOR: sink: fix a race condition between the writer and the reader
- BUG/MINOR: quic: do not reject datagrams matching minimum permitted size
- BUG/MINOR: quic: Missing Initial packet dropping case
- MINOR: quic: explicitely ignore sendto error
- BUG/MEDIUM: quic: break out of the loop in quic_lstnr_dghdlr
- CLEANUP: assorted typo fixes in the code and comments
- BUILD: cfgparse: always defined _GNU_SOURCE for sched.h and crypt.h
- BUG/MEDIUM: quic: Wrong packet length check in qc_do_rm_hp()
- MINOR: quic: Too much useless traces in qc_build_frms()
- BUG/MEDIUM: quic: Missing AEAD TAG check after removing header protection
- CLEANUP: mux-quic: remove loop on sending frames
- BUG/MEDIUM: quic: always remove the connection from the accept list on close
- BUG/MEDIUM: poller: use fd_delete() to release the poller pipes
- BUG/MEDIUM: task: relax one thread consistency check in task_unlink_wq()
- BUILD: stconn: fix build warning at -O3 about possible null sc
- BUILD: debug: silence warning on gcc-5
- BUG/MINOR: quic: Possible infinite loop in quic_build_post_handshake_frames()
- BUG/MEDIUM: ring: fix too lax 'size' parser
- BUG/MINOR: quic: memleak on wrong datagram receipt
- MINOR: stick-table: Add table_expire() and table_idle() new converters
- BUG/MEDIUM: http-ana: fix crash or wrong header deletion by http-restrict-req-hdr-names
- MINOR: applet: add a function to reset the svcctx of an applet
- BUG/MEDIUM: cli: always reset the service context between commands
- BUG/MEDIUM: mux-h2: do not fiddle with ->dsi to indicate demux is idle
- BUG/MAJOR: log-forward: Fix log-forward proxies not fully initialized
- BUG/MAJOR: log-forward: Fix ssl layer not initialized on bind even if configured
Version 22.6.0
Features
Introduce HTTP/3 and autogeneration of TLS certificates in DEBUG mode
👶 EARLY RELEASE FEATURE: Serving Sanic over HTTP/3 is an early release feature. It does not yet fully cover the HTTP/3 spec, but instead aims for feature parity with Sanic’s existing HTTP/1.1 server. Websockets, WebTransport, push responses are examples of some features not yet implemented.
📦 EXTRA REQUIREMENT: Not all HTTP clients are capable of interfacing with HTTP/3 servers. You may need to install a HTTP/3 capable client.
📦 EXTRA REQUIREMENT: In order to use TLS autogeneration, you must install either mkcert or trustme.
Add message to task.cancel
Add exception aliases for more consistent naming with standard HTTP response types (BadRequest, MethodNotAllowed, RangeNotSatisfiable)
Expose ASGI scope as a property on the Request object
Easier access to websocket class for annotation: from sanic import Websocket
New API for reading form values with options: Request.get_form
Add custom loads function
Improved API to support setting cache control headers
Move verbosity filtering to logger
Expose getter for current request using Request.get_current()
Bugfixes
Fix to allow running with pythonw.exe or places where there is no sys.stdout
Trigger http.lifecycle.request signal in ASGI mode
Resolve typing of stacked route definitions
Properly catch websocket CancelledError in websocket handler in Python 3.7
Deprecations and Removals
v22.6 deprecations and changes
Optional application registry
Execution of custom handlers after some part of response was sent
Configuring fallback handlers on the ErrorHandler
Custom LOGO setting
sanic.response.stream
AsyncioServer.init
From author & maintainer Thomas Dickey.
Changes:
20220821 (w)
> Brendan O'Dea:
+ the font specification in /etc/X11/app-defaults/UXVile was being
overridden by the one in XVile. Additionally update the xvile font
to use the Latin-1 equivalent (9x18 instead of 8x13).
+ apply memory-leak fix from pl-filt.c in 9.8v to pl6filt.c
+ rename perl6mode and corresponding syntax filter to "raku" (report by
Steve Lembark).
+ update suffix-list for rakumode.
> Tom Dickey:
+ portability-fixes for plink.sh
+ fixes for regexp.c:
+ build-fix for test_regexp
+ add parentheses in non-multibyte is_CLASS() macro to correct a
problem with pointer expressions.
+ add I/i toggle in test_regexp to exercise ignorecase.
+ revise change for lins_chars() to handle UTF-8 in scripts, as that
interfered with normal insertions (report by Chris Green).
+ fix a check in vile-manfilt, to ensure that stepping into previous
lines does not use flushed/discarded rows.
+ build-fix for perl 5.36 (Debian #1014289)
+ modify error-message from vile-manfilt to show the program name.
+ fix a state-transition in sh-filt.l, which left some text uncolored
(report by Wayne Cuddy).
+ add markdown mode (mdmode).
+ update copyright dates
+ update package/freebsd/*
+ fix some issues found with Coverity.
+ fix a few compiler-warnings.
prelude is unmaintained in pkgsrc since 2009 and is several major
versions behind. This makes it useless for it's intended purpose as an
intrusion detection system. Can be revived if/when there is an interested
maintainer. But it's probably easier to start from scratch given how stale
these packages were.
New features:
- Ability to add authenticators to filemaps.
- Python: Add support for CRLs in kore.domain().
Bug fixes:
- The Kore parent process will use the correct exit code if a worker
process calls fatalx().
- Fix a bug in kore.recvmsg() related to the returned length of the
ancdata.
- Several bug fixes for concurrency when using Python 3.10.x.
Other changes:
- Removed useless debug messages all across the board.
- Added more format attributes where useful.
- Added KORE_TMPDIR define (default /tmp) for single binary builds.
This is needed so that "#define SEC 1" from <sys/time.h> is hidden by
#if !defined(__XOPEN_OR_POSIX).
Else it conflicts with enum ItemOption value SEC from the package.
3.3.8
This is a bug fix release. It adds fixes for issues on all supported platforms.
3.3.7
This is a bug fix release. It adds fixes for issues on all supported platforms.
3.3.6
This is a bug fix release. It adds fixes for issues on Windows, macOS and X11.
3.3.5
This is a bug fix release. It adds fixes for issues on all supported platforms.
fish 3.5.1 (released July 20, 2022)
===================================
This release of fish introduces the following small enhancements:
- Cursor shaping for Vi mode is enabled by default in tmux, and will be used if the outer terminal is capable (:issue:`8981`).
- ``printf`` returns a better error when used with arguments interpreted as octal numbers (:issue:`9035`).
- ``history merge`` when in private mode is now an error, rather than wiping out other sessions' history (:issue:`9050`).
- The error message when launching a command that is built for the wrong architecture on macOS is more helpful (:issue:`9052`).
- Added completions for:
- ``choose`` (:issue:`9065`)
- ``expect`` (:issue:`9060`)
- ``navi`` (:issue:`9064`)
- ``qdbus`` (:issue:`9031`)
- ``reflector`` (:issue:`9027`)
- Improvements to some completions.
This release also fixes a number of problems identified in fish 3.5.0.
- Completing ``git blame`` or ``git -C`` works correctly (:issue:`9053`).
- On terminals that emit a ``CSI u`` sequence for :kbd:`Shift-Space`, fish inserts a space instead of printing an error. (:issue:`9054`).
- ``status fish-path`` on Linux-based platforms could print the path with a " (deleted)" suffix (such as ``/usr/bin/fish (deleted)``), which is now removed (:issue:`9019`).
- Cancelling an initial command (from fish's ``--init-command`` option) with :kbd:`Control-C` no longer prevents configuration scripts from running (:issue:`9024`).
- The job summary contained extra blank lines if the prompt used multiple lines, which is now fixed (:issue:`9044`).
- Using special input functions in bindings, in combination with ``and``/``or`` conditionals, no longer crashes (:issue:`9051`).
CMake 3.24.1
automoc: avoid compiler warnings in linker-warning-silencing code
FindThreads: Skip check for -pthread flag when targeting the MSVC ABI
IPO: Do not use -flto=auto with GCC 10.x on Windows
export: Restore exclusion of private shared library dependencies from checks
MinGW: Restore using windres when toolchain-prefixed name is not available
FindVulkan: Restore tolerance of unknown FATAL_ERROR component
Help: Add 3.24 release note about FindVulkan component enforcement
TI compiler: Add support for COMPILE_WARNING_AS_ERROR target property
Help: List compiler IDs supported by COMPILE_WARNING_AS_ERROR
Help: A missing cross-reference to --compile-no-warning-as-error
CMake 3.24 Release Notes
************************
Changes made since CMake 3.23 include the following.
New Features
============
Presets
-------
* "cmake-presets(7)" files now support schema version "5".
* "cmake-presets(7)" files now support a "${pathListSep}" macro, which
expands to ":" or ";" based on the platform.
* "cmake-presets(7)" files gained support for specifying a
"testOutputTruncation" field in test presets, which specifies the
truncation mode once the maximum test output size has been reached.
Generators
----------
* The "Green Hills MULTI" generator now generates build rules to re-
run CMake if any CMake files are updated.
* The Visual Studio Generators now support "SYSTEM" headers when using
VS 2019 Update 11 or later.
Command-Line
------------
* "cmake(1)" gained the "--fresh" command-line option to remove any
existing "CMakeCache.txt" file and associated "CMakeFiles/"
directory, when configuring a build tree, thus starting a new
configuration as if the build tree were freshly created.
* "cmake(1)" gained the "--compile-no-warning-as-error" command-line
option which causes the effects of the "COMPILE_WARNING_AS_ERROR"
target property and "CMAKE_COMPILE_WARNING_AS_ERROR" variable to be
ignored.
* The "cmake(1)" "--trace=json-v1" trace format gained fields
"global_frame" and "line_end".
* The "cmake(1)" "-E" commands "cat" and "env" learned to respect a
double dash ("--") argument that acts as a delimiter indicating the
end of options. Any following arguments are treated as
operands/positional arguments, even if they begin with a dash "-"
character.
* The "cmake(1)" "-E tar" command gained the "--touch" option to keep
the current local timestamp instead of extracting file timestamps
from the archive.
Compilers
---------
* LLVM's flang Fortran compiler is now supported on some platforms,
with compiler id "LLVMFlang".
* ADSP compiler support (SHARC and Blackfin) now covers both CCES and
VDSP++ installations, with required configuration now done in the
compiler module itself rather than the "Generic-ADSP" platform
module.
Platforms
---------
* A dedicated "ADSP" platform has been added to replace the existing
"Generic-ADSP" implementation. This features automatic detection of
the latest CCES/VDSP++ install and compiler selection ("cc21k" vs.
"ccblkfn") based off of the "CMAKE_SYSTEM_PROCESSOR" variable.
Commands
--------
* The "cmake_host_system_information()" command, on Windows, gained a
"QUERY WINDOWS_REGISTRY" mode. See its Query Windows registry
section.
* The "cmake_language()" command gained a new
"SET_DEPENDENCY_PROVIDER" sub-command. When a dependency provider
is set, calls to "find_package()" and "FetchContent_MakeAvailable()"
can be redirected through a custom command, which can choose to
fulfill the request directly, modify how the request is processed,
or leave it to be fulfilled by the built-in implementation. See
Dependency Providers.
* The "file(DOWNLOAD)" command gained options "RANGE_START" and
"RANGE_END" to specify a range of bytes to download. This can be
useful for downloading parts of big binary files.
* The "find_file()", "find_path()", "find_library()",
"find_program()", and "find_package()" commands gained the
"NO_CMAKE_INSTALL_PREFIX" option to control searching
"CMAKE_INSTALL_PREFIX".
* The "find_file()", "find_path()", "find_library()",
"find_program()", and "find_package()" commands gained the ability
to specify which Windows Registry views must be queried.
* The "find_package()" command gained a "GLOBAL" option that allows
for the promotion of imported targets to global scope for the
duration of the "find_package()" call.
* The "if()" command gained the capability to compare paths by using
the "PATH_EQUAL" operator. See policy "CMP0139".
Variables
---------
* The "CMAKE_COLOR_DIAGNOSTICS" variable was added to control color
diagnostics generated by compilers. This variable also controls
color build system messages with Makefile Generators, replacing
"CMAKE_COLOR_MAKEFILE".
The "CMAKE_COLOR_DIAGNOSTICS" environment variable was added to set
a default value for "CMAKE_COLOR_DIAGNOSTICS".
* The "CMAKE_COMPILE_WARNING_AS_ERROR" variable and corresponding
"COMPILE_WARNING_AS_ERROR" target property were added to enable
compilation with a compiler-specific flag to treat warnings as
errors, such as "-Werror".
* The "CMAKE_CUDA_ARCHITECTURES" variable and associated
"CUDA_ARCHITECTURES" target property now support the special
"native" value to compile for the architectures(s) of the host's
GPU(s).
* The "CMAKE_FIND_PACKAGE_TARGETS_GLOBAL" variable was added to toggle
behavior of the "find_package()" command's new "GLOBAL" option.
* The "CMAKE_FIND_USE_INSTALL_PREFIX" variable was added to toggle
behavior of the "find_file()", "find_library()", "find_path()",
"find_package()", and "find_program()" commands' new
"NO_CMAKE_INSTALL_PREFIX" option.
* The "CMAKE_PROJECT_TOP_LEVEL_INCLUDES" variable was added to allow
injecting custom code at the site of the first "project()" call,
after the host and target platform details have been determined.
* The "CMAKE_TRY_COMPILE_NO_PLATFORM_VARIABLES" variable was added to
tell the "try_compile()" command not to pass any platform variables
to the test project.
* The "CMAKE_VERIFY_INTERFACE_HEADER_SETS" variable and corresponding
"VERIFY_INTERFACE_HEADER_SETS" target property were added to enable
build rules that verify all headers in header sets can be used on
their own.
* The "CMAKE_VS_NO_COMPILE_BATCHING" variable and corresponding
"VS_NO_COMPILE_BATCHING" target property were added to tell Visual
Studio Generators whether to disable compiler parallelism and call
the compiler with one source file at a time.
* The "CMAKE_WATCOM_RUNTIME_LIBRARY" variable and
"WATCOM_RUNTIME_LIBRARY" target property were introduced to select
the runtime library used by compilers targeting the Watcom ABI. See
policy "CMP0136".
* The "CMAKE_XCODE_XCCONFIG" variable and corresponding
"XCODE_XCCONFIG" target property were added to tell the "Xcode"
generator to handle "xcconfig" files.
Properties
----------
* The "INTERFACE_LINK_LIBRARIES_DIRECT" and
"INTERFACE_LINK_LIBRARIES_DIRECT_EXCLUDE" target properties were
added to express usage requirements affecting a consumer's direct
link dependencies.
* The "INTERFACE_HEADER_SETS_TO_VERIFY" target property was added to
specify which header sets should be verified by
"VERIFY_INTERFACE_HEADER_SETS".
* The "LINK_LIBRARIES" target property now supports the
"$ " generator expression. See policy "CMP0131".
* The "VS_DOTNET_STARTUP_OBJECT" target property was added to tell
Visual Studio Generators which startup class shall be used when the
program or project is executed. This is necessary when more than one
"static void Main(string[])" function signature is available in a
managed .NET project.
Modules
-------
* The "ExternalProject" module "ExternalProject_Add()" command gained
a new "DOWNLOAD_EXTRACT_TIMESTAMP" option for controlling whether
the timestamps of extracted contents are set to match those in the
archive when the "URL" download method is used. Policy "CMP0135" was
added to enable the option by default.
* The "FetchContent" module and the "find_package()" command now
support integration capabilities:
* "FetchContent_MakeAvailable()" can now try to satisfy a dependency
by calling "find_package()" first. A new
"FETCHCONTENT_TRY_FIND_PACKAGE_MODE" variable controls whether
this is done by default for all dependencies, is opt-in per
dependency, or is disabled entirely.
* "find_package()" can be re-routed to call
"FetchContent_MakeAvailable()" instead. A new read-only
"CMAKE_FIND_PACKAGE_REDIRECTS_DIR" variable points to a directory
where config package files can be located to facilitate these re-
routed calls.
* The "FindJNI" module now provides imported targets.
* The "FindMatlab" module "matlab_add_mex()" function gained a
"NO_IMPLICIT_LINK_TO_MATLAB_LIBRARIES" option to disable automatic
linking of MATLAB libraries.
* The "FindVulkan" module now supports components to select which
VulkanSDK tool and libraries to find in addition to the Vulkan SDK
headers and library.
* The "FindZLIB" gained a new "ZLIB_USE_STATIC_LIBS" variable to
search only for static libraries.
Generator Expressions
---------------------
* The "LINK_LIBRARY" generator expression was added to manage how
libraries are specified during the link step. The
"CMAKE__LINK_LIBRARY_USING_" and
"CMAKE_LINK_LIBRARY_USING_" variables are used to define
features usable by the "LINK_LIBRARY" generator expression.
Moreover, the "LINK_LIBRARY_OVERRIDE" and
"LINK_LIBRARY_OVERRIDE_ " target properties are available to
resolve incompatible features.
The "LINK_LIBRARY" generator expression can link frameworks in
various ways when targeting "Apple" platforms. The following
features were added:
* "FRAMEWORK"
* "NEEDED_FRAMEWORK"
* "REEXPORT_FRAMEWORK"
* "WEAK_FRAMEWORK"
The "LINK_LIBRARY" generator expression can link libraries in
various ways when targeting "Apple" platforms. The following
features were added:
* "NEEDED_LIBRARY"
* "REEXPORT_LIBRARY"
* "WEAK_LIBRARY"
The "LINK_LIBRARY" generator expression gained the feature
"WHOLE_ARCHIVE" to force load of all members in a static library.
This feature is supported on the following target platforms:
* all "Apple" variants
* "Linux"
* all "BSD" variants
* "SunOS"
* "Windows"
* "CYGWIN"
* "MSYS"
* The "LINK_GROUP" generator expression was added to manage the
grouping of libraries during the link step. The
"CMAKE__LINK_GROUP_USING_" and
"CMAKE_LINK_GROUP_USING_" variables are used to define
features usable with the "LINK_GROUP" generator expression. This
release defines the "RESCAN" feature, which can be used to handle
circular references among static libraries when using toolchains for
Linux, BSD, SunOS and GNU toolchains for Windows.
* The "PATH" generator expression was added to manage paths.
* The "PATH_EQUAL" generator expression was added to manage path
comparisons.
* The "TARGET_BUNDLE_DIR_NAME" generator expression was added to
evaluate to the name of the bundle directory for a given bundle
target.
CTest
-----
* "ctest(1)" gained a "--test-output-truncation" option (and
corresponding "CTEST_CUSTOM_TEST_OUTPUT_TRUNCATION" variable) to
specify the truncation mode once the maximum test output size has
been reached. Possible values are "tail" (default), "middle" or
"head".
CPack
-----
* The "CPack WIX Generator" gained a new variable,
"CPACK_WIX_ARCHITECTURE", to specify the installer architecture in
order to support computers running Windows for ARM.
* CPack now supports the "CPACK_THREADS" option for "zstd" compression
when compiled with libarchive 3.6 or higher. It is supported by
official CMake binaries available on cmake.org.
Deprecated and Removed Features
===============================
* The "CPack" module no longer enables the SLA by default in the
"CPack DragNDrop Generator". See policy "CMP0133" and the
"CPACK_DMG_SLA_USE_RESOURCE_FILE_LICENSE" variable.
* The deprecated "CPack PackageMaker Generator" has been removed.
* The "FindGLUT" module no longer provides the undocumented
"GLUT_LIBRARY" and "GLUT_INCLUDE_PATH" result variables.
Other Changes
=============
* CMake no longer sets environment variables like "CC", "CXX", etc.
when enabling the corresponding language during the first CMake run
in a build directory. See policy "CMP0132".
* The "CheckIPOSupported" module "check_ipo_supported()" command now
uses the caller's "CMAKE__FLAGS" and
"CMAKE__FLAGS_" values. See policy "CMP0138".
* The "MSYS Makefiles" and "MinGW Makefiles" generators, when a
compiler is not explicitly specified, now select the first compiler
(of any name) found in directories listed by the "PATH" environment
variable.
* The "try_compile()" command whole-project signature now propagates
platform variables. See policy "CMP0137".
* The "while()" command now diagnoses errors during condition
evaluation. See policy "CMP0130".
* The precompiled macOS binaries provided on cmake.org no longer
attach a SLA to the ".dmg" packages. This was removed because macOS
12 deprecated the tools used to attach ".dmg" resources.
A no-nonsense hardware-accelerated image viewer.
I started this as a toy project to make a simple image viewer. The vision is to
create something with a broad support of industry-standard files and gradually
add more image analysis and editing tools.
Here are some reasons why this might be helpful to you:
- Completely bloat-free
- Supports a wide range of images and SVG
- Can display unassociated channels correctly (For example if your image uses
alpha and color channels to encode data in a special way)
- Lets you pick pixels, displays location and color values
- Offers basic nondestructive editing: Crop, resize, paint, contrast, HSV,
rotate, blur, noise, ...
Nghttp2 v1.49.0
lib
This release adds nghttp2_check_header_value_rfc9113 which complains leading and trailing white spaces. The library now uses this function instead of nghttp2_check_header_value when checking HTTP header fields.
asio
libnghttp2_asio has been moved to its own repository and got new maintainer. libnghttp2_asio related code in nghttp2 repository will not get any updates and be removed at the end of 2022.
python
Python bindings have been deprecated, and will not get any updates and be removed at the end of 2022 due to the maintenance issues.
nghttpx
Randomizing backend server selection has been added again.
The broken PROXY-protocol when TLS is used has been fixed.
nghttpx now removes trailing white spaces from HTTP header fields to align with RFC 9113.
1.26.12 (2022-08-22)
--------------------
* Deprecated the `urllib3[secure]` extra and the `urllib3.contrib.pyopenssl` module.
Both will be removed in v2.x. See this `GitHub issue <https://github.com/urllib3/urllib3/issues/2680>`_
for justification and info on how to migrate.
1.1.15
Changed
Poetry now fallback to gather metadata for dependencies via pep517 if parsing pyproject.toml fail
Extras and extras dependencies are now sorted in lock file