The MariaDB Foundation is pleased to announce the availability of MariaDB 11.8.6, MariaDB 11.4.10, MariaDB 10.11.16 and MariaDB 10.6.25, the latest stable releases in their respective long-term series (receiving regular maintenance and support for three years from their first stable release dates, and critical security fixes as source code releases for two additional years beyond). β¦
If you are upgrading from v0.14.x and below, this version includes multiple breaking changes. Please read the upgrading documentation for more information on how to upgrade from previous versions.
If you are upgrading from v0.15.x, replace the binary and update the webadmin.
Added
IMAP: Map HEADER SUBJECT/FROM/TO searches to SUBJECT/FROM/TO queries.
Sieve: Update spam status on user scripts.
Changed
Fixed
Search: Return all document ids when no filters are provided.
Search: Filters not applied when a single message is in the account.
IMAP: Return ALREADYEXISTS code when creating existing mailboxes.
IMAP: Do not return quota resources if no quota is set.
JMAP/changes: Update newState with last changeId if an invalid fromChangeId is provided.
JMAP/CalendarIdentity: Do not update invalid calendar identities.
AI API: Include request error details if available.
If you are upgrading from v0.14.x and below, this version includes multiple breaking changes. Please read the upgrading documentation for more information on how to upgrade from previous versions.
If you are upgrading from v0.15.x, replace the binary and update the webadmin.
Added
Polish locale support (contributed by @mrxkp) (#2480)
Changed
Fixed
Meilisearch: Return correct error messages when failing to create indexes (#2574)
PostgreSQL search: Truncate emails to 650kb for full-text search indexing.
FoundationDB search: Batch large transactions (#2567).
Spam filter: Fix training sample size checks
IMAP: Fix UTF7 encoding with Emojis (contributed by @dojiong) (#2564).
If you are upgrading from v0.14.x and below, this version includes multiple breaking changes. Please read the upgrading documentation for more information on how to upgrade from previous versions.
If you are upgrading from v0.15.x, replace the binary and update the webadmin.
This version includes multiple breaking changes. Please read the upgrading documentation for more information on how to upgrade from previous versions.
This version includes multiple breaking changes. Please read the upgrading documentation for more information on how to upgrade from previous versions.
Added
Linear spam classifier using FTRL-Proximal and feature/cuckoo hashing.
If you are upgrading from v0.13.4 and below, this version includes breaking changes to the internal directory, calendar and contacts. Please read the upgrading documentation for more information on how to upgrade from previous versions.
If you are upgrading from v0.13.4 and below, this version includes breaking changes to the internal directory, calendar and contacts. Please read the upgrading documentation for more information on how to upgrade from previous versions.
If you are upgrading from v0.11.x or v0.12.x, this version includes breaking changes to the message queue and MTA configuration. Please read the UPGRADING.md file for more information on how to upgrade from previous versions.
Added
Changed
JMAP: Protocol layer rewrite for zero-copy deserialization and architectural improvements.
Fixed
IMAP: Unbounded memory allocation in request parser (CVE-2025-61600 ).
IMAP: Wrong permission checked for GETACL.
JMAP: References to previous method fail when there are no results (#1507).
JMAP: Enforce quota checks on Blob/copy.
JMAP: Mailbox/get fails without accountId argument (#1936).
JMAP: Do not return invalidProperties when email update doesn't contain changes (#1139)
If you are upgrading from v0.11.x or v0.12.x, this version includes breaking changes to the message queue and MTA configuration. Please read the UPGRADING.md file for more information on how to upgrade from previous versions.
If you are upgrading from v0.11.x or v0.12.x, this version includes breaking changes to the message queue and MTA configuration. Please read the UPGRADING.md file for more information on how to upgrade from previous versions.
Added
ACME: DeSEC cloud DNS provider support (contributed by @Tyr3al).
ACME: OVH cloud DNS provider support (contributed by @srachner).
CalDAV Scheduling: Catalan language support (contributed by @jolupa) (#1873).
MTA: Allow to send e-mails as group, while member of that group (#485).
ast_debug_tools.conf must be owned by root and not be
writable by other users or groups to be used by ast_coredumper or
by ast_logescalator or ast_loggrabber when run as root.
Upgrade Notes:
http.c: Change httpstatus to default disabled and sanitize output.
To prevent possible security issues, the /httpstatus page
served by the internal web server is now disabled by default. To explicitly
enable it, set enable_status=yes in http.conf.
Developer Notes:
Commit Authors:
George Joseph: (2)
Mike Bradeen: (2)
Issue and Commit Detail:
Closed Issues:
!GHSA-85x7-54wr-vh42: Asterisk xml.c uses unsafe XML_PARSE_NOENT leading to potential XXE Injection
!GHSA-rvch-3jmx-3jf3: ast_coredumper running as root sources ast_debug_tools.conf from /etc/asterisk; potentially leading to privilege escalation
!GHSA-v6hp-wh3r-cwxh: The Asterisk embedded web server's /httpstatus page echos user supplied values(cookie and query string) without sanitization
!GHSA-xpc6-x892-v83c: ast_coredumper runs as root, and writes gdb init file to world writeable folder; leading to potential privilege escalation
Commits By Author:
George Joseph (2):
Mike Bradeen (2):
Commit List:
xml.c: Replace XML_PARSE_NOENT with XML_PARSE_NONET for xmlReadFile.
http.c: Change httpstatus to default disabled and sanitize output.
ast_coredumper: create gdbinit file with restrictive permissions
Commit Details:
xml.c: Replace XML_PARSE_NOENT with XML_PARSE_NONET for xmlReadFile.
Author: George Joseph
Date: 2026-01-15
The xmlReadFile XML_PARSE_NOENT flag, which allows parsing of external
entities, could allow a potential XXE injection attack. Replacing it with
XML_PARSE_NONET, which prevents network access, is safer.
UserNote: ast_debug_tools.conf must be owned by root and not be
writable by other users or groups to be used by ast_coredumper or
by ast_logescalator or ast_loggrabber when run as root.
http.c: Change httpstatus to default disabled and sanitize output.
Author: George Joseph
Date: 2026-01-15
To address potential security issues, the httpstatus page is now disabled
by default and the echoed query string and cookie output is html-escaped.
UpgradeNote: To prevent possible security issues, the /httpstatus page
served by the internal web server is now disabled by default. To explicitly
enable it, set enable_status=yes in http.conf.
ast_coredumper: create gdbinit file with restrictive permissions
Author: Mike Bradeen
Date: 2026-01-15
Modify gdbinit to use the install command with explicit permissions (-m 600)
when creating the .ast_coredumper.gdbinit file. This ensures the file is
created with restricted permissions (readable/writable only by the owner)
to avoid potential privilege escalation.
ast_debug_tools.conf must be owned by root and not be
writable by other users or groups to be used by ast_coredumper or
by ast_logescalator or ast_loggrabber when run as root.
Upgrade Notes:
http.c: Change httpstatus to default disabled and sanitize output.
To prevent possible security issues, the /httpstatus page
served by the internal web server is now disabled by default. To explicitly
enable it, set enable_status=yes in http.conf.
Developer Notes:
Commit Authors:
George Joseph: (2)
Mike Bradeen: (2)
Issue and Commit Detail:
Closed Issues:
!GHSA-85x7-54wr-vh42: Asterisk xml.c uses unsafe XML_PARSE_NOENT leading to potential XXE Injection
!GHSA-rvch-3jmx-3jf3: ast_coredumper running as root sources ast_debug_tools.conf from /etc/asterisk; potentially leading to privilege escalation
!GHSA-v6hp-wh3r-cwxh: The Asterisk embedded web server's /httpstatus page echos user supplied values(cookie and query string) without sanitization
!GHSA-xpc6-x892-v83c: ast_coredumper runs as root, and writes gdb init file to world writeable folder; leading to potential privilege escalation
Commits By Author:
George Joseph (2):
Mike Bradeen (2):
Commit List:
xml.c: Replace XML_PARSE_NOENT with XML_PARSE_NONET for xmlReadFile.
http.c: Change httpstatus to default disabled and sanitize output.
ast_coredumper: create gdbinit file with restrictive permissions
Commit Details:
xml.c: Replace XML_PARSE_NOENT with XML_PARSE_NONET for xmlReadFile.
Author: George Joseph
Date: 2026-01-15
The xmlReadFile XML_PARSE_NOENT flag, which allows parsing of external
entities, could allow a potential XXE injection attack. Replacing it with
XML_PARSE_NONET, which prevents network access, is safer.
UserNote: ast_debug_tools.conf must be owned by root and not be
writable by other users or groups to be used by ast_coredumper or
by ast_logescalator or ast_loggrabber when run as root.
http.c: Change httpstatus to default disabled and sanitize output.
Author: George Joseph
Date: 2026-01-15
To address potential security issues, the httpstatus page is now disabled
by default and the echoed query string and cookie output is html-escaped.
UpgradeNote: To prevent possible security issues, the /httpstatus page
served by the internal web server is now disabled by default. To explicitly
enable it, set enable_status=yes in http.conf.
ast_coredumper: create gdbinit file with restrictive permissions
Author: Mike Bradeen
Date: 2026-01-15
Modify gdbinit to use the install command with explicit permissions (-m 600)
when creating the .ast_coredumper.gdbinit file. This ensures the file is
created with restricted permissions (readable/writable only by the owner)
to avoid potential privilege escalation.
ast_debug_tools.conf must be owned by root and not be
writable by other users or groups to be used by ast_coredumper or
by ast_logescalator or ast_loggrabber when run as root.
Upgrade Notes:
http.c: Change httpstatus to default disabled and sanitize output.
To prevent possible security issues, the /httpstatus page
served by the internal web server is now disabled by default. To explicitly
enable it, set enable_status=yes in http.conf.
Developer Notes:
Commit Authors:
George Joseph: (2)
Mike Bradeen: (2)
Issue and Commit Detail:
Closed Issues:
!GHSA-85x7-54wr-vh42: Asterisk xml.c uses unsafe XML_PARSE_NOENT leading to potential XXE Injection
!GHSA-rvch-3jmx-3jf3: ast_coredumper running as root sources ast_debug_tools.conf from /etc/asterisk; potentially leading to privilege escalation
!GHSA-v6hp-wh3r-cwxh: The Asterisk embedded web server's /httpstatus page echos user supplied values(cookie and query string) without sanitization
!GHSA-xpc6-x892-v83c: ast_coredumper runs as root, and writes gdb init file to world writeable folder; leading to potential privilege escalation
Commits By Author:
George Joseph (2):
Mike Bradeen (2):
Commit List:
xml.c: Replace XML_PARSE_NOENT with XML_PARSE_NONET for xmlReadFile.
http.c: Change httpstatus to default disabled and sanitize output.
ast_coredumper: create gdbinit file with restrictive permissions
Commit Details:
xml.c: Replace XML_PARSE_NOENT with XML_PARSE_NONET for xmlReadFile.
Author: George Joseph
Date: 2026-01-15
The xmlReadFile XML_PARSE_NOENT flag, which allows parsing of external
entities, could allow a potential XXE injection attack. Replacing it with
XML_PARSE_NONET, which prevents network access, is safer.
UserNote: ast_debug_tools.conf must be owned by root and not be
writable by other users or groups to be used by ast_coredumper or
by ast_logescalator or ast_loggrabber when run as root.
http.c: Change httpstatus to default disabled and sanitize output.
Author: George Joseph
Date: 2026-01-15
To address potential security issues, the httpstatus page is now disabled
by default and the echoed query string and cookie output is html-escaped.
UpgradeNote: To prevent possible security issues, the /httpstatus page
served by the internal web server is now disabled by default. To explicitly
enable it, set enable_status=yes in http.conf.
ast_coredumper: create gdbinit file with restrictive permissions
Author: Mike Bradeen
Date: 2026-01-15
Modify gdbinit to use the install command with explicit permissions (-m 600)
when creating the .ast_coredumper.gdbinit file. This ensures the file is
created with restricted permissions (readable/writable only by the owner)
to avoid potential privilege escalation.
ast_debug_tools.conf must be owned by root and not be
writable by other users or groups to be used by ast_coredumper or
by ast_logescalator or ast_loggrabber when run as root.
Upgrade Notes:
http.c: Change httpstatus to default disabled and sanitize output.
To prevent possible security issues, the /httpstatus page
served by the internal web server is now disabled by default. To explicitly
enable it, set enable_status=yes in http.conf.
Developer Notes:
Commit Authors:
George Joseph: (2)
Mike Bradeen: (2)
Issue and Commit Detail:
Closed Issues:
!GHSA-85x7-54wr-vh42: Asterisk xml.c uses unsafe XML_PARSE_NOENT leading to potential XXE Injection
!GHSA-rvch-3jmx-3jf3: ast_coredumper running as root sources ast_debug_tools.conf from /etc/asterisk; potentially leading to privilege escalation
!GHSA-v6hp-wh3r-cwxh: The Asterisk embedded web server's /httpstatus page echos user supplied values(cookie and query string) without sanitization
!GHSA-xpc6-x892-v83c: ast_coredumper runs as root, and writes gdb init file to world writeable folder; leading to potential privilege escalation
Commits By Author:
George Joseph (2):
Mike Bradeen (2):
Commit List:
xml.c: Replace XML_PARSE_NOENT with XML_PARSE_NONET for xmlReadFile.
http.c: Change httpstatus to default disabled and sanitize output.
ast_coredumper: create gdbinit file with restrictive permissions
Commit Details:
xml.c: Replace XML_PARSE_NOENT with XML_PARSE_NONET for xmlReadFile.
Author: George Joseph
Date: 2026-01-15
The xmlReadFile XML_PARSE_NOENT flag, which allows parsing of external
entities, could allow a potential XXE injection attack. Replacing it with
XML_PARSE_NONET, which prevents network access, is safer.
UserNote: ast_debug_tools.conf must be owned by root and not be
writable by other users or groups to be used by ast_coredumper or
by ast_logescalator or ast_loggrabber when run as root.
http.c: Change httpstatus to default disabled and sanitize output.
Author: George Joseph
Date: 2026-01-15
To address potential security issues, the httpstatus page is now disabled
by default and the echoed query string and cookie output is html-escaped.
UpgradeNote: To prevent possible security issues, the /httpstatus page
served by the internal web server is now disabled by default. To explicitly
enable it, set enable_status=yes in http.conf.
ast_coredumper: create gdbinit file with restrictive permissions
Author: Mike Bradeen
Date: 2026-01-15
Modify gdbinit to use the install command with explicit permissions (-m 600)
when creating the .ast_coredumper.gdbinit file. This ensures the file is
created with restricted permissions (readable/writable only by the owner)
to avoid potential privilege escalation.
ast_debug_tools.conf must be owned by root and not be
writable by other users or groups to be used by ast_coredumper or
by ast_logescalator or ast_loggrabber when run as root.
Upgrade Notes:
http.c: Change httpstatus to default disabled and sanitize output.
To prevent possible security issues, the /httpstatus page
served by the internal web server is now disabled by default. To explicitly
enable it, set enable_status=yes in http.conf.
Developer Notes:
Commit Authors:
George Joseph: (2)
Mike Bradeen: (2)
Issue and Commit Detail:
Closed Issues:
!GHSA-85x7-54wr-vh42: Asterisk xml.c uses unsafe XML_PARSE_NOENT leading to potential XXE Injection
!GHSA-rvch-3jmx-3jf3: ast_coredumper running as root sources ast_debug_tools.conf from /etc/asterisk; potentially leading to privilege escalation
!GHSA-v6hp-wh3r-cwxh: The Asterisk embedded web server's /httpstatus page echos user supplied values(cookie and query string) without sanitization
!GHSA-xpc6-x892-v83c: ast_coredumper runs as root, and writes gdb init file to world writeable folder; leading to potential privilege escalation
Commits By Author:
George Joseph (2):
Mike Bradeen (2):
Commit List:
xml.c: Replace XML_PARSE_NOENT with XML_PARSE_NONET for xmlReadFile.
http.c: Change httpstatus to default disabled and sanitize output.
ast_coredumper: create gdbinit file with restrictive permissions
Commit Details:
xml.c: Replace XML_PARSE_NOENT with XML_PARSE_NONET for xmlReadFile.
Author: George Joseph
Date: 2026-01-15
The xmlReadFile XML_PARSE_NOENT flag, which allows parsing of external
entities, could allow a potential XXE injection attack. Replacing it with
XML_PARSE_NONET, which prevents network access, is safer.
UserNote: ast_debug_tools.conf must be owned by root and not be
writable by other users or groups to be used by ast_coredumper or
by ast_logescalator or ast_loggrabber when run as root.
http.c: Change httpstatus to default disabled and sanitize output.
Author: George Joseph
Date: 2026-01-15
To address potential security issues, the httpstatus page is now disabled
by default and the echoed query string and cookie output is html-escaped.
UpgradeNote: To prevent possible security issues, the /httpstatus page
served by the internal web server is now disabled by default. To explicitly
enable it, set enable_status=yes in http.conf.
ast_coredumper: create gdbinit file with restrictive permissions
Author: Mike Bradeen
Date: 2026-01-15
Modify gdbinit to use the install command with explicit permissions (-m 600)
when creating the .ast_coredumper.gdbinit file. This ensures the file is
created with restricted permissions (readable/writable only by the owner)
to avoid potential privilege escalation.
26.1 Snapshot 6 (known as 26.1-snapshot-6 in the launcher) is the sixth snapshot for Java Edition 26.1, released on February 3, 2026, which add new textures and models for the baby armadillo, bee, camel, fox, goat, llama, polar bear, and trader llama. It also includes many changes for data packs and resource packs.
Full changelog: https://minecraft.wiki/Java_Edition_26.1-snapshot-6
26.1 Snapshot 5 (known as 26.1-snapshot-5 in the launcher) is the fifth snapshot for Java Edition 26.1, released on January 27, 2026.
Full changelog: https://minecraft.wiki/Java_Edition_26.1-snapshot-5
The category name in the chan_websocket.conf.sample file was
incorrect. It should be "global" instead of "general".
cli.c: Allow 'channel request hangup' to accept patterns.
The 'channel request hangup' CLI command now accepts
multiple channel names, POSIX Extended Regular Expressions, glob-like
patterns, or a combination of all of them. See the CLI command 'core
show help channel request hangup' for full details.
res_sorcery_memory_cache: Reduce cache lock time for sorcery memory cache populate command
The AMI command sorcery memory cache populate will now
return an error if there is an internal error performing the populate.
The CLI command will display an error in this case as well.
res_geolocation: Fix multiple issues with XML generation.
Geolocation: Two new optional profile parameters have been added.
pidf_element_id which sets the value of the id attribute on the top-level
PIDF-LO device, person or tuple elements.
device_id which sets the content of the <deviceID> element.
Both parameters can include channel variables.
res_pjsip_messaging: Add support for following 3xx redirects
A new pjsip endpoint option follow_redirect_methods was added.
This option is a comma-delimited, case-insensitive list of SIP methods
for which SIP 3XX redirect responses are followed. An alembic upgrade
script has been added for adding this new option to the Asterisk
database.
taskprocessors: Improve logging and add new cli options
New CLI command has been added -
core show taskprocessor name
ccss: Add option to ccss.conf to globally disable it.
A new "enabled" parameter has been added to ccss.conf. It defaults
to "yes" to preserve backwards compatibility but CCSS is rarely used so
setting "enabled = no" in the "general" section can save some unneeded channel
locking operations and log message spam. Disabling ccss will also prevent
the func_callcompletion and chan_dahdi modules from loading.
Makefile: Add module-list-* targets.
Try "make module-list-deprecated" to see what modules
are on their way out the door.
app_mixmonitor: Add 's' (skip) option to delay recording.
This change introduces a new 's()' (skip) option to the MixMonitor
application. Example:
MixMonitor(${UNIQUEID}.wav,s(3))
This skips recording for the first 3 seconds before writing audio to the file.
Existing MixMonitor behavior remains unchanged when the 's' option is not used.
app_queue.c: Only announce to head caller if announce_to_first_user
When announce_to_first_user is false, no announcements are played to the head caller
Upgrade Notes:
res_geolocation: Fix multiple issues with XML generation.
Geolocation: In order to correct bugs in both code and
documentation, the following changes to the parameters for GML geolocation
locations are now in effect:
The documented but unimplemented crs (coordinate reference system) element
has been added to the location_info parameter that indicates whether the 2d
or 3d reference system is to be used. If the crs isn't valid for the shape
specified, an error will be generated. The default depends on the shape
specified.
The Circle, Ellipse and ArcBand shapes MUST use a 2d crs. If crs isn't
specified, it will default to 2d for these shapes.
The Sphere, Ellipsoid and Prism shapes MUST use a 3d crs. If crs isn't
specified, it will default to 3d for these shapes.
The Point and Polygon shapes may use either crs. The default crs is 2d
however so if 3d positions are used, the crs must be explicitly set to 3d.
The geoloc show gml_shape_defs CLI command has been updated to show which
coordinate reference systems are valid for each shape.
The pos3d element has been removed in favor of allowing the pos element
to include altitude if the crs is 3d. The number of values in the pos
element MUST be 2 if the crs is 2d and 3 if the crs is 3d. An error
will be generated for any other combination.
The angle unit-of-measure for shapes that use angles should now be included
in the respective parameter. The default is degrees. There were some
inconsistent references to orientation_uom in some documentation but that
parameter never worked and is now removed. See examples below.
Examples...
The threadpool_* options in pjsip.conf have now
been deprecated though they continue to be read and used.
They have been replaced with taskpool options that give greater
control over the underlying taskpool used for PJSIP. An alembic
upgrade script has been added to add these options to realtime
as well.
app_directed_pickup.c: Change some log messages from NOTICE to VERBOSE.
In an effort to reduce log spam, two normal progress
"pickup attempted" log messages from app_directed_pickup have been changed
from NOTICE to VERBOSE(3). This puts them on par with other normal
dialplan progress messages.
Developer Notes:
ccss: Add option to ccss.conf to globally disable it.
A new API ast_is_cc_enabled() has been added. It should be
used to ensure that CCSS is enabled before making any other ast_cc_* calls.
chan_websocket: Add ability to place a MARK in the media stream.
Apps can now send a MARK_MEDIA command with an optional correlation_id parameter to chan_websocket which will be placed in the
media frame queue. When that frame is dequeued after all intervening media
has been played to the core, chan_websocket will send a MEDIA_MARK_PROCESSED event to the app with the same correlation_id
(if any).
chan_websocket: Add capability for JSON control messages and events.
The chan_websocket plain-text control and event messages are now
deprecated (but remain the default) in favor of JSON formatted messages.
See https://docs.asterisk.org/Configuration/Channel-Drivers/WebSocket for
more information.
A "transport_data" parameter has been added to the
The category name in the chan_websocket.conf.sample file was
incorrect. It should be "global" instead of "general".
cli.c: Allow 'channel request hangup' to accept patterns.
The 'channel request hangup' CLI command now accepts
multiple channel names, POSIX Extended Regular Expressions, glob-like
patterns, or a combination of all of them. See the CLI command 'core
show help channel request hangup' for full details.
res_sorcery_memory_cache: Reduce cache lock time for sorcery memory cache populate command
The AMI command sorcery memory cache populate will now
return an error if there is an internal error performing the populate.
The CLI command will display an error in this case as well.
res_geolocation: Fix multiple issues with XML generation.
Geolocation: Two new optional profile parameters have been added.
pidf_element_id which sets the value of the id attribute on the top-level
PIDF-LO device, person or tuple elements.
device_id which sets the content of the <deviceID> element.
Both parameters can include channel variables.
res_pjsip_messaging: Add support for following 3xx redirects
A new pjsip endpoint option follow_redirect_methods was added.
This option is a comma-delimited, case-insensitive list of SIP methods
for which SIP 3XX redirect responses are followed. An alembic upgrade
script has been added for adding this new option to the Asterisk
database.
taskprocessors: Improve logging and add new cli options
New CLI command has been added -
core show taskprocessor name
ccss: Add option to ccss.conf to globally disable it.
A new "enabled" parameter has been added to ccss.conf. It defaults
to "yes" to preserve backwards compatibility but CCSS is rarely used so
setting "enabled = no" in the "general" section can save some unneeded channel
locking operations and log message spam. Disabling ccss will also prevent
the func_callcompletion and chan_dahdi modules from loading.
Makefile: Add module-list-* targets.
Try "make module-list-deprecated" to see what modules
are on their way out the door.
app_mixmonitor: Add 's' (skip) option to delay recording.
This change introduces a new 's()' (skip) option to the MixMonitor
application. Example:
MixMonitor(${UNIQUEID}.wav,s(3))
This skips recording for the first 3 seconds before writing audio to the file.
Existing MixMonitor behavior remains unchanged when the 's' option is not used.
app_queue.c: Only announce to head caller if announce_to_first_user
When announce_to_first_user is false, no announcements are played to the head caller
Upgrade Notes:
res_geolocation: Fix multiple issues with XML generation.
Geolocation: In order to correct bugs in both code and
documentation, the following changes to the parameters for GML geolocation
locations are now in effect:
The documented but unimplemented crs (coordinate reference system) element
has been added to the location_info parameter that indicates whether the 2d
or 3d reference system is to be used. If the crs isn't valid for the shape
specified, an error will be generated. The default depends on the shape
specified.
The Circle, Ellipse and ArcBand shapes MUST use a 2d crs. If crs isn't
specified, it will default to 2d for these shapes.
The Sphere, Ellipsoid and Prism shapes MUST use a 3d crs. If crs isn't
specified, it will default to 3d for these shapes.
The Point and Polygon shapes may use either crs. The default crs is 2d
however so if 3d positions are used, the crs must be explicitly set to 3d.
The geoloc show gml_shape_defs CLI command has been updated to show which
coordinate reference systems are valid for each shape.
The pos3d element has been removed in favor of allowing the pos element
to include altitude if the crs is 3d. The number of values in the pos
element MUST be 2 if the crs is 2d and 3 if the crs is 3d. An error
will be generated for any other combination.
The angle unit-of-measure for shapes that use angles should now be included
in the respective parameter. The default is degrees. There were some
inconsistent references to orientation_uom in some documentation but that
parameter never worked and is now removed. See examples below.
Examples...
The threadpool_* options in pjsip.conf have now
been deprecated though they continue to be read and used.
They have been replaced with taskpool options that give greater
control over the underlying taskpool used for PJSIP. An alembic
upgrade script has been added to add these options to realtime
as well.
app_directed_pickup.c: Change some log messages from NOTICE to VERBOSE.
In an effort to reduce log spam, two normal progress
"pickup attempted" log messages from app_directed_pickup have been changed
from NOTICE to VERBOSE(3). This puts them on par with other normal
dialplan progress messages.
Developer Notes:
ccss: Add option to ccss.conf to globally disable it.
A new API ast_is_cc_enabled() has been added. It should be
used to ensure that CCSS is enabled before making any other ast_cc_* calls.
chan_websocket: Add ability to place a MARK in the media stream.
Apps can now send a MARK_MEDIA command with an optional correlation_id parameter to chan_websocket which will be placed in the
media frame queue. When that frame is dequeued after all intervening media
has been played to the core, chan_websocket will send a MEDIA_MARK_PROCESSED event to the app with the same correlation_id
(if any).
chan_websocket: Add capability for JSON control messages and events.
The chan_websocket plain-text control and event messages are now
deprecated (but remain the default) in favor of JSON formatted messages.
See https://docs.asterisk.org/Configuration/Channel-Drivers/WebSocket for
more information.
A "transport_data" parameter has been added to the
The category name in the chan_websocket.conf.sample file was
incorrect. It should be "global" instead of "general".
cli.c: Allow 'channel request hangup' to accept patterns.
The 'channel request hangup' CLI command now accepts
multiple channel names, POSIX Extended Regular Expressions, glob-like
patterns, or a combination of all of them. See the CLI command 'core
show help channel request hangup' for full details.
res_sorcery_memory_cache: Reduce cache lock time for sorcery memory cache populate command
The AMI command sorcery memory cache populate will now
return an error if there is an internal error performing the populate.
The CLI command will display an error in this case as well.
res_geolocation: Fix multiple issues with XML generation.
Geolocation: Two new optional profile parameters have been added.
pidf_element_id which sets the value of the id attribute on the top-level
PIDF-LO device, person or tuple elements.
device_id which sets the content of the <deviceID> element.
Both parameters can include channel variables.
res_pjsip_messaging: Add support for following 3xx redirects
A new pjsip endpoint option follow_redirect_methods was added.
This option is a comma-delimited, case-insensitive list of SIP methods
for which SIP 3XX redirect responses are followed. An alembic upgrade
script has been added for adding this new option to the Asterisk
database.
taskprocessors: Improve logging and add new cli options
New CLI command has been added -
core show taskprocessor name
ccss: Add option to ccss.conf to globally disable it.
A new "enabled" parameter has been added to ccss.conf. It defaults
to "yes" to preserve backwards compatibility but CCSS is rarely used so
setting "enabled = no" in the "general" section can save some unneeded channel
locking operations and log message spam. Disabling ccss will also prevent
the func_callcompletion and chan_dahdi modules from loading.
Makefile: Add module-list-* targets.
Try "make module-list-deprecated" to see what modules
are on their way out the door.
app_mixmonitor: Add 's' (skip) option to delay recording.
This change introduces a new 's()' (skip) option to the MixMonitor
application. Example:
MixMonitor(${UNIQUEID}.wav,s(3))
This skips recording for the first 3 seconds before writing audio to the file.
Existing MixMonitor behavior remains unchanged when the 's' option is not used.
app_queue.c: Only announce to head caller if announce_to_first_user
When announce_to_first_user is false, no announcements are played to the head caller
Upgrade Notes:
res_geolocation: Fix multiple issues with XML generation.
Geolocation: In order to correct bugs in both code and
documentation, the following changes to the parameters for GML geolocation
locations are now in effect:
The documented but unimplemented crs (coordinate reference system) element
has been added to the location_info parameter that indicates whether the 2d
or 3d reference system is to be used. If the crs isn't valid for the shape
specified, an error will be generated. The default depends on the shape
specified.
The Circle, Ellipse and ArcBand shapes MUST use a 2d crs. If crs isn't
specified, it will default to 2d for these shapes.
The Sphere, Ellipsoid and Prism shapes MUST use a 3d crs. If crs isn't
specified, it will default to 3d for these shapes.
The Point and Polygon shapes may use either crs. The default crs is 2d
however so if 3d positions are used, the crs must be explicitly set to 3d.
The geoloc show gml_shape_defs CLI command has been updated to show which
coordinate reference systems are valid for each shape.
The pos3d element has been removed in favor of allowing the pos element
to include altitude if the crs is 3d. The number of values in the pos
element MUST be 2 if the crs is 2d and 3 if the crs is 3d. An error
will be generated for any other combination.
The angle unit-of-measure for shapes that use angles should now be included
in the respective parameter. The default is degrees. There were some
inconsistent references to orientation_uom in some documentation but that
parameter never worked and is now removed. See examples below.
Examples...
The threadpool_* options in pjsip.conf have now
been deprecated though they continue to be read and used.
They have been replaced with taskpool options that give greater
control over the underlying taskpool used for PJSIP. An alembic
upgrade script has been added to add these options to realtime
as well.
app_directed_pickup.c: Change some log messages from NOTICE to VERBOSE.
In an effort to reduce log spam, two normal progress
"pickup attempted" log messages from app_directed_pickup have been changed
from NOTICE to VERBOSE(3). This puts them on par with other normal
dialplan progress messages.
Developer Notes:
ccss: Add option to ccss.conf to globally disable it.
A new API ast_is_cc_enabled() has been added. It should be
used to ensure that CCSS is enabled before making any other ast_cc_* calls.
chan_websocket: Add ability to place a MARK in the media stream.
Apps can now send a MARK_MEDIA command with an optional correlation_id parameter to chan_websocket which will be placed in the
media frame queue. When that frame is dequeued after all intervening media
has been played to the core, chan_websocket will send a MEDIA_MARK_PROCESSED event to the app with the same correlation_id
(if any).
chan_websocket: Add capability for JSON control messages and events.
The chan_websocket plain-text control and event messages are now
deprecated (but remain the default) in favor of JSON formatted messages.
See https://docs.asterisk.org/Configuration/Channel-Drivers/WebSocket for
more information.
A "transport_data" parameter has been added to the
26.1 Snapshot 4 (known as 26.1-snapshot-4 in the launcher) is the fourth snapshot for Java Edition 26.1, released on January 20, 2026, which changes the models of baby horses, donkeys, and mules, as well as zombie and skeleton horses, adds new tags, and fixes bugs.
Full changelog: https://minecraft.wiki/Java_Edition_26.1-snapshot-4