Asterisk Release 21.0.0

Home » Uncategorized » Asterisk Release 21.0.0
Uncategorized No Comments

The Asterisk Development Team would like to announce
the release of asterisk-21.0.0.

The release artifacts are available for immediate download at
https://github.com/asterisk/asterisk/releases/tag/21.0.0
and https://downloads.asterisk.org/pub/telephony/asterisk

This release resolves issues reported by the community
and would have not been possible without your participation.

Thank You!

Change Log for Release asterisk-21.0.0
========================================

Links:
—————————————-

– [Full ChangeLog](https://downloads.asterisk.org/pub/telephony/asterisk/releases/ChangeLog-21.0.0.md)
– [GitHub Diff](https://github.com/asterisk/asterisk/compare/21.0.0-pre1…21.0.0)
– [Tarball](https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-21.0.0.tar.gz)
– [Downloads](https://downloads.asterisk.org/pub/telephony/asterisk)

Summary:
—————————————-

– Update master branch for Asterisk 21
– translate.c: Prefer better codecs upon translate ties.
– chan_skinny: Remove deprecated module.
– app_osplookup: Remove deprecated module.
– chan_mgcp: Remove deprecated module.
– chan_alsa: Remove deprecated module.
– pbx_builtins: Remove deprecated and defunct functionality.
– chan_sip: Remove deprecated module.
– app_cdr: Remove deprecated application and option.
– app_macro: Remove deprecated module.
– res_monitor: Remove deprecated module.
– http.c: Minor simplification to HTTP status output.
– app_osplookup: Remove obsolete sample config.
– say.c: Fix French time playback. (#42)
– core: Cleanup gerrit and JIRA references. (#58)
– utils.h: Deprecate `ast_gethostbyname()`. (#79)
– res_pjsip_pubsub: Add new pubsub module capabilities. (#82)
– app_sla: Migrate SLA applications out of app_meetme.
– rest-api: Ran make ari stubs to fix resource_endpoints inconsistency
– .github: Update AsteriskReleaser for security releases
– users.conf: Deprecate users.conf configuration.
– Update version for Asterisk 21
– Remove unneeded CHANGES and UPGRADE files
– res_pjsip_pubsub: Add body_type to test_handler for unit tests
– ari-stubs: Fix more local anchor references
– ari-stubs: Fix more local anchor references
– ari-stubs: Fix broken documentation anchors
– res_pjsip_session: Send Session Interval too small response
– .github: Update workflow-application-token-action to v2
– app_dial: Fix infinite loop when sending digits.
– app_voicemail: Fix for loop declarations
– alembic: Fix quoting of the 100rel column
– pbx.c: Fix gcc 12 compiler warning.
– app_audiosocket: Fixed timeout with -1 to avoid busy loop.
– download_externals: Fix a few version related issues
– main/refer.c: Fix double free in refer_data_destructor + potential leak
– sig_analog: Add Called Subscriber Held capability.
– Revert “app_stack: Print proper exit location for PBXless channels.”
– install_prereq: Fix dependency install on aarch64.
– res_pjsip.c: Set contact_user on incoming call local Contact header
– extconfig: Allow explicit DB result set ordering to be disabled.
– rest-api: Run make ari-stubs
– res_pjsip_header_funcs: Make prefix argument optional.
– pjproject_bundled: Increase PJSIP_MAX_MODULE to 38
– manager: Tolerate stasis messages with no channel snapshot.
– Remove unneeded CHANGES and UPGRADE files

User Notes:
—————————————-

– ### sig_analog: Add Called Subscriber Held capability.
Called Subscriber Held is now supported for analog
FXS channels, using the calledsubscriberheld option. This allows
a station user to go on hook when receiving an incoming call
and resume from another phone on the same line by going on hook,
without disconnecting the call.

– ### res_pjsip_header_funcs: Make prefix argument optional.
The prefix argument to PJSIP_HEADERS is now
optional. If not specified, all header names will be
returned.

– ### http.c: Minor simplification to HTTP status output.
For bound addresses, the HTTP status page now combines the bound
address and bound port in a single line. Additionally, the SSL bind
address has been renamed to TLS.

Upgrade Notes:
—————————————-

– ### utils.h: Deprecate `ast_gethostbyname()`. (#79)
ast_gethostbyname() has been deprecated and will be removed
in Asterisk 23. New code should use `ast_sockaddr_resolve()` and
`ast_sockaddr_resolve_first_af()`.

– ### app_sla: Migrate SLA applications out of app_meetme.
The SLAStation and SLATrunk applications have been moved
from app_meetme to app_sla. If you are using these applications and have
autoload=no, you will need to explicitly load this module in modules.conf.

– ### users.conf: Deprecate users.conf configuration.
The users.conf config is now deprecated
and will be removed in a future version of Asterisk.

– ### res_monitor: Remove deprecated module.
This module was deprecated in Asterisk 16
and is now being removed in accordance with
the Asterisk Module Deprecation policy.
This also removes the ‘w’ and ‘W’ options
for app_queue.
MixMonitor should be default and only option
for all settings that previously used either
Monitor or MixMonitor.

– ### app_osplookup: Remove deprecated module.
This module was deprecated in Asterisk 19
and is now being removed in accordance with
the Asterisk Module Deprecation policy.

– ### app_cdr: Remove deprecated application and option.
The previously deprecated NoCDR application has been removed.
Additionally, the previously deprecated ‘e’ option to the ResetCDR
application has been removed.

– ### app_macro: Remove deprecated module.
This module was deprecated in Asterisk 16
and is now being removed in accordance with
the Asterisk Module Deprecation policy.
For most modules that interacted with app_macro,
this change is limited to no longer looking for
the current context from the macrocontext when set.
The following modules have additional impacts:
app_dial – no longer supports M^ connected/redirecting macro
app_minivm – samples written using macro will no longer work.
The sample needs to be re-written
app_queue – can no longer call a macro on the called party’s
channel. Use gosub which is currently supported
ccss – no callback macro, gosub only
app_voicemail – no macro support
channel – remove macrocontext and priority, no connected
line or redirection macro options
options – stdexten is deprecated to gosub as the default
and only options
pbx – removed macrolock
pbx_dundi – no longer look for macro
snmp – removed macro context, exten, and priority

– ### translate.c: Prefer better codecs upon translate ties.
When setting up translation between two codecs the quality was not taken into account,
resulting in suboptimal translation. The quality is now taken into account,
which can reduce the number of translation steps required, and improve the resulting quality.

– ### chan_sip: Remove deprecated module.
This module was deprecated in Asterisk 17
and is now being removed in accordance with
the Asterisk Module Deprecation policy.

– ### chan_alsa: Remove deprecated module.
This module was deprecated in Asterisk 19
and is now being removed in accordance with
the Asterisk Module Deprecation policy.

– ### pbx_builtins: Remove deprecated and defunct functionality.
The previously deprecated ImportVar and SetAMAFlags
applications have now been removed.

– ### chan_mgcp: Remove deprecated module.
This module was deprecated in Asterisk 19
and is now being removed in accordance with
the Asterisk Module Deprecation policy.

– ### chan_skinny: Remove deprecated module.
This module was deprecated in Asterisk 19
and is now being removed in accordance with
the Asterisk Module Deprecation policy.

Closed Issues:
—————————————-

– #37: [Bug]: contrib/scripts/install_prereq tries to install armhf packages on aarch64 Debian platforms
– #39: [Bug]: Remove .gitreview from repository.
– #41: [Bug]: say.c Time announcement does not say o’clock for the French language
– #50: [improvement]: app_sla: Migrate SLA applications from app_meetme
– #78: [improvement]: Deprecate ast_gethostbyname()
– #81: [improvement]: Enhance and add additional PJSIP pubsub callbacks
– #179: [bug]: Queue strategy “Linear” with Asterisk 20 on Realtime
– #183: [deprecation]: Deprecate users.conf
– #226: [improvement]: Apply contact_user to incoming calls
– #230: [bug]: PJSIP_RESPONSE_HEADERS function documentation is misleading
– #240: [new-feature]: sig_analog: Add Called Subscriber Held capability
– #253: app_gosub patch appear to have broken predial handlers that utilize macros that call gosubs
– #255: [bug]: pjsip_endpt_register_module: Assertion “Too many modules registered”
– #263: [bug]: download_externals doesn’t always handle versions correctly
– #267: [bug]: ari: refer with display_name key in request body leads to crash
– #274: [bug]: Syntax Error in SQL Code
– #275: [bug]:Asterisk make now requires ASTCFLAGS=’-std=gnu99 -Wdeclaration-after-statement’
– #277: [bug]: pbx.c: Compiler error with gcc 12.2
– #281: [bug]: app_dial: Infinite loop if called channel hangs up while receiving digits
– #335: [bug]: res_pjsip_pubsub: The bad_event unit test causes a SEGV in build_resource_tree