The Asterisk Development Team would like to announce
the release of Asterisk 20.4.0.
The release artifacts are available for immediate download at
https://github.com/asterisk/asterisk/releases/tag/20.4.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 20.4.0
Links:
Summary:
- app.h: Move declaration of ast_getdata_result before its first use
- doc: Remove obsolete CHANGES-staging and UPGRADE-staging
- .github: Updates for AsteriskReleaser
- app_voicemail: fix imap compilation errors
- res_musiconhold: avoid moh state access on unlocked chan
- utils: add lock timestamps for DEBUG_THREADS
- .github: Back out triggering PROpenedOrUpdated by label
- .github: Move publish docs to new file CreateDocs.yml
- rest-api: Updates for new documentation site
- .github: Remove result check from PROpenUpdateGateTests
- .github: Fix use of ‘contains’
- .github: Add recheck label test to additional jobs
- .github: Fix recheck label typos
- .github: Fix recheck label manipulation
- .github: Allow PR submit checks to be re-run by label
- app_voicemail_imap: Fix message count when IMAP server is unavailable
- res_pjsip_rfc3326: Prefer Q.850 cause code over SIP.
- res_pjsip_session: Added new function calls to avoid ABI issues.
- app_queue: Add force_longest_waiting_caller option.
- pjsip_transport_events.c: Use %zu printf specifier for size_t.
- res_crypto.c: Gracefully handle potential key filename truncation.
- configure: Remove obsolete and deprecated constructs.
- res_fax_spandsp.c: Clean up a spaces/tabs issue
- ast-db-manage: Synchronize revisions between comments and code.
- test_statis_endpoints: Fix channel_messages test again
- res_crypto.c: Avoid using the non-portable ALLPERMS macro.
- tcptls: when disabling a server port, we should set the accept_fd to -1.
- AMI: Add parking position parameter to Park action
- test_stasis_endpoints.c: Make channel_messages more stable
- build: Fix a few gcc 13 issues
- .github: Rework for merge approval
- ast-db-manage: Fix alembic branching error caused by #122.
- app_followme: fix issue with enable_callee_prompt=no (#88)
- sounds: Update download URL to use HTTPS.
- configure: Makefile downloader enable follow redirects.
- res_musiconhold: Add option to loop last file.
- chan_dahdi: Fix Caller ID presentation for FXO ports.
- AMI: Add CoreShowChannelMap action.
- sig_analog: Add fuller Caller ID support.
- res_stasis.c: Add new type ‘sdp_label’ for bridge creation.
- app_queue: Preserve reason for realtime queues
- .github: Fix issues with cherry-pick-reminder
- indications: logging changes
- .github Ignore error when adding reviewrs to PR
- .github: Update field descriptions for AsteriskReleaser
- callerid: Allow specifying timezone for date/time.
- logrotate: Fix duplicate log entries.
- chan_pjsip: Allow topology/session refreshes in early media state
- chan_dahdi: Fix broken hidecallerid setting.
- .github: Change title of AsteriskReleaser job
- asterisk.c: Fix option warning for remote console.
- .github: Don’t add cherry-pick reminder if it’s already present
- .github: Fix quoting in PROpenedOrUpdated
- .github: Add cherry-pick reminder to new PRs
- configure: fix test code to match gethostbyname_r prototype.
- res_pjsip_pubsub.c: Use pjsip version for pending NOTIFY check. (#77)
- res_sorcery_memory_cache.c: Fix memory leak
- xml.c: Process XML Inclusions recursively.
- .github: Tweak improvement issue type language.
- .github: Tweak new feature language, and move feature requests elsewhere.
- .github: Fix staleness check to only run on certain labels.
User Notes:
-
AMI: Add parking position parameter to Park action
New ParkingSpace parameter has been added to AMI action Park.
-
res_musiconhold: Add option to loop last file.
The loop_last option in musiconhold.conf now
allows the last file in the directory to be looped once reached. -
AMI: Add CoreShowChannelMap action.
New AMI action CoreShowChannelMap has been added.
-
sig_analog: Add fuller Caller ID support.
Additional Caller ID properties are now supported on
incoming calls to FXS stations, namely the
redirecting reason and call qualifier. -
res_stasis.c: Add new type ‘sdp_label’ for bridge creation.
When creating a bridge using the ARI the ‘type’ argument now
accepts a new value ‘sdp_label’ which will configure the bridge to add
labels for each stream in the SDP with the corresponding channel id. -
app_queue: Preserve reason for realtime queues
Make paused reason in realtime queues persist an
Asterisk restart. This was fixed for non-realtime
queues in ASTERISK_25732.
Upgrade Notes:
-
app_queue: Preserve reason for realtime queues
Add a new column to the queue_member table:
reason_paused VARCHAR(80) so the reason can be preserved.
Closed Issues:
- #45: [bug]: Non-bundled PJSIP check for evsub pending NOTIFY check is insufficient/ineffective
- #55: [bug]: res_sorcery_memory_cache: Memory leak when calling sorcery_memory_cache_open
- #64: [bug]: app_voicemail_imap wrong behavior when losing IMAP connection
- #65: [bug]: heap overflow by default at startup
- #66: [improvement]: Fix preserve reason of pause when Asterisk is restared for realtime queues
- #73: [new-feature]: pjsip: Allow topology/session refreshes in early media state
- #87: [bug]: app_followme: Setting enable_callee_prompt=no breaks timeout
- #89: [improvement]: indications: logging changes
- #91: [improvement]: Add parameter on ARI bridge create to allow it to send SDP labels
- #94: [new-feature]: sig_analog: Add full Caller ID support for incoming calls
- #96: [bug]: make install-logrotate causes logrotate to fail on service restart
- #98: [new-feature]: callerid: Allow timezone to be specified at runtime
- #100: [bug]: sig_analog: hidecallerid setting is broken
- #102: [bug]: Strange warning – ‘T’ option is not compatible with remote console mode and has no effect.
- #104: [improvement]: Add AMI action to get a list of connected channels
- #108: [new-feature]: fair handling of calls in multi-queue scenarios
- #110: [improvement]: utils – add lock timing information with DEBUG_THREADS
- #116: [bug]: SIP Reason: “Call completed elsewhere” no longer propagating
- #120: [bug]: chan_dahdi: Fix broken presentation for FXO caller ID
- #122: [new-feature]: res_musiconhold: Add looplast option
- #133: [bug]: unlock channel after moh state access
- #136: [bug]: Makefile downloader does not follow redirects.
- #145: [bug]: ABI issue with pjproject and pjsip_inv_session
- #155: [bug]: GCC 13 is catching a few new trivial issues
- #158: [bug]: test_stasis_endpoints.c: Unit test channel_messages is unstable
- #174: [bug]: app_voicemail imap compile errors
- #200: [bug]: Regression: In app.h an enum is used before its declaration.