❌

Lees weergave

Extended Stable Updates for Desktop

Β The Extended Stable channel has been updated to 142.0.7444.265Β for Windows and Mac which will roll out over the coming days/weeks.

A full list of changes in this build is available in the log. Interested in switching release channels? Find out how here. If you find a new issue, please let us know by filing a bug. The community help forum is also a great place to reach out for help or learn about common issues.

Harry Souders
Google Chrome
  •  

Stable Channel Update for Desktop

The Stable channel has been updated to 143.0.7499.192/.193 for Windows/MacΒ  andΒ 143.0.7499.192Β for Linux, which will roll out over the coming days/weeks. A full list of changes in this build is available in theΒ Log.

Security Fixes and Rewards

Note: Access to bug details and links may be kept restricted until a majority of users are updated with a fix. We will also retain restrictions if the bug exists in a third party library that other projects similarly depend on, but haven’t yet fixed.


Note: Access to bug details and links may be kept restricted until a majority of users are updated with a fix.

We will also retain restrictions if the bug exists in a third party library that other projects similarly depend on,

but haven’t yet fixed.


This update includes 1 security fix.

Below, we highlight fixes that were contributed by external researchers.

Please see the Chrome Security Page for more information.



[TBD][463155954] High CVE-2026-0628: Insufficient policy enforcement in WebView tag. Reported by Gal Weizman on 2025-11-23


We would also like to thank all security researchers that worked with us during the development cycle to prevent security bugs from ever reaching the stable channel.

Many of our security bugs are detected using AddressSanitizer, MemorySanitizer, UndefinedBehaviorSanitizer, Control Flow Integrity, libFuzzer, or AFL.

Interested in switching release channels? Find out howΒ here. If you find a new issue, please let us know byΒ filing a bug. TheΒ community help forumΒ is also a great place to reach out for help or learn about common issues.


Harry Souders
Google Chrome
  •  

Xml Notepad 2.9.0.17

Fix issue #463: Don't add a missing XML declaration on save.
Fix issue #460: Remove formatting for XML elements that are not allowed to contain whitespace (XSD Schema content model is Empty, Mixed, or TextOnly).

  •  

Xml Notepad 2.9.0.16

Fix issue #430: Autoformat on Save with empty XML-Elements.
Formatting Options has new setting to format Xml attributes each on a separate line.

  •  

Xml Notepad 2.9.0.15

Fix issue #425: "No byte order mark on save" option throws stream closed exception add unit test.
Apply dark mode to window titlebar.

  •  

Xml Notepad 2.9.0.14

Fix issue #418: check setttings-file for "read-only".
Fix issue #398: XmlNotepad detects xml-errors at empty nillable xsd:date Elements, but xml is correct

  •  

Xml Notepad 2.9.0.13

Issue 409: Not able to validate XML against multiple not referenced Schemas
Issue 329: Incomplete schema validation of large XML files ( > ~20 MB).
Report invalid characters undex 0x20.
Fix unit tests so they run on Windows 11, including a work around for dotnet/winforms#10244.

  •  

Xml Notepad 2.9.0.12

Issue 324: Generate xml from schema, see ttps://youtu.be/5I_q1oXz02I.
Issue 385:: "XML Reload" removes loaded XSLT. You can now get auto-reload when xml file changes on disk
and you can turn off the prompt in options dialog and it will reapply the XSLT automatically.
update to WebView2 version 1.0.2739.15
Also preserve the selection in the XML tree view across file reloads.

  •  

Xml Notepad 2.9.0.11

Issue 382: Add progress bar on long XSLT transform operations.
Issue 379: Add Preserve Whitespace option so your XSLT transforms can output the whitespace correctly.
Bug 383: Reload of a "not loaded" file
Bug 381: Multiple instances resets the settings
Bug 380: Opening bad XML file keeps watching the file

  •  

Xml Notepad 2.9.0.10

Issue 382: Add progress bar on long XSLT transform operations.
Issue 379: Add Preserve Whitespace option so your XSLT transforms can output the whitespace correctly.
Bug 383: Reload of a "not loaded" file
Bug 381: Multiple instances resets the settings
Bug 380: Opening bad XML file keeps watching the file

  •  

v1.7.0.9

What's Changed

This release is only to provide an updated TestFlight build since the current build has expired.
There are no notable changes since the published 1.7.0.8 version.

πŸ”§ Additional changes

⬆️ Dependency upgrades

Full Changelog: v1.7.0.8...v1.7.0.9

  •  

Part-DB 2.4.0

Part-DB 2.4.0

Tip

If you like Part-DB, consider donating to support the development. Press the sponsor button on the main github page, for more info.

Important

If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8

New features

  • Added info provider for Buerklin (thanks to @mkne, #1151)
  • Show part IDs in project BOMs

Improvements

  • Use more performant hash algorithms for cache keys
  • Increase label generator PDF preview height to show PDF toolbar (@mkne , #1171)
  • Show info provider capabilities in fixed order

Bug fixes

  • Fixed exception if DigiKey has no media for a part (#1154)

Miscellaneous

  • Updated dependencies

New Contributors

Full Changelog: v2.3.0...v2.4.0

  •  

Asterisk Release 22.7.0

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

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

Repository: https://github.com/asterisk/asterisk
Tag: 22.7.0

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

Thank You!

Change Log for Release asterisk-22.7.0

Links:

Summary:

  • Commits: 52
  • Commit Authors: 16
  • Issues Resolved: 36
  • Security Advisories Resolved: 0

User Notes:

  • res_stir_shaken: Add STIR_SHAKEN_ATTESTATION dialplan function.

    The STIR_SHAKEN_ATTESTATION dialplan function has been added
    which will allow suppressing attestation on a call-by-call basis
    regardless of the profile attached to the outgoing endpoint.

  • func_channel: Allow R/W of ADSI CPE capability setting.

    CHANNEL(adsicpe) can now be read or written to change
    the channels' ADSI CPE capability setting.

  • func_hangupcause.c: Add access to Reason headers via HANGUPCAUSE()

    Added a new option to HANGUPCAUSE to access additional
    information about hangup reason. Reason headers from pjsip
    could be read using 'tech_extended' cause type.

  • func_math: Add DIGIT_SUM function.

    The DIGIT_SUM function can be used to return the digit sum of
    a number.

  • app_sf: Add post-digit timer option to ReceiveSF.

    The 't' option for ReceiveSF now allows for a timer since
    the last digit received, in addition to the number-wide timeout.

  • app_dial: Allow fractional seconds for dial timeouts.

    The answer and progress dial timeouts now have millisecond
    precision, instead of having to be whole numbers.

  • chan_dahdi: Add DAHDI_CHANNEL function.

    The DAHDI_CHANNEL function allows for getting/setting
    certain properties about DAHDI channels from the dialplan.

Upgrade Notes:

  • app_queue.c: Fix error in Queue parameter documentation.

    As part of Asterisk 21, macros were removed from Asterisk.
    This resulted in argument order changing for the Queue dialplan
    application since the macro argument was removed. Upgrade notice was
    missed when this was done, so this upgrade note has been added to
    provide a record of such and a notice to users who may have not upgraded
    yet.

  • res_audiosocket: add message types for all slin sample rates

    New audiosocket message types 0x11 - 0x18 has been added
    for slin12, slin16, slin24, slin32, slin44, slin48, slin96, and
    slin192 audio. External applications using audiosocket may need to be
    updated to support these message types if the audiosocket channel is
    created with one of these audio formats.

  • taskpool: Add taskpool API, switch Stasis to using it.

    The threadpool_* options in stasis.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 stasis.

Developer Notes:

  • chan_pjsip: Add technology-specific off-nominal hangup cause to events.

    A "tech_cause" parameter has been added to the
    ChannelHangupRequest and ChannelDestroyed ARI event messages and a "TechCause"
    parameter has been added to the HangupRequest, SoftHangupRequest and Hangup
    AMI event messages. For chan_pjsip, these will be set to the last SIP
    response status code for off-nominally terminated calls. The parameter is
    suppressed for nominal termination.

  • ARI: The bridges play and record APIs now handle sample rates > 8K correctly.

    The ARI /bridges/play and /bridges/record REST APIs have new
    parameters that allow the caller to specify the format to be used on the
    "Announcer" and "Recorder" channels respecitvely.

  • taskpool: Add taskpool API, switch Stasis to using it.

    The taskpool API has been added for common usage of a
    pool of taskprocessors. It is suggested to use this API instead of the
    threadpool+taskprocessor approach.

Commit Authors:

  • Anthony Minessale: (1)
  • Bastian Triller: (1)
  • Ben Ford: (2)
  • Christoph Moench-Tegeder: (1)
  • George Joseph: (9)
  • Igor Goncharovsky: (1)
  • Joshua C. Colp: (6)
  • Max Grobecker: (1)
  • Nathan Monfils: (1)
  • Naveen Albert: (18)
  • Roman Pertsev: (1)
  • Sean Bright: (3)
  • Sven Kube: (3)
  • Tinet-mucw: (1)
  • gauravs456: (1)
  • phoneben: (2)

  •  

Asterisk Release 21.12.0

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

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

Repository: https://github.com/asterisk/asterisk
Tag: 21.12.0

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.12.0

Links:

Summary:

  • Commits: 20
  • Commit Authors: 10
  • Issues Resolved: 13
  • Security Advisories Resolved: 0

User Notes:

  • func_hangupcause.c: Add access to Reason headers via HANGUPCAUSE()

    Added a new option to HANGUPCAUSE to access additional
    information about hangup reason. Reason headers from pjsip
    could be read using 'tech_extended' cause type.

  • chan_dahdi: Add DAHDI_CHANNEL function.

    The DAHDI_CHANNEL function allows for getting/setting
    certain properties about DAHDI channels from the dialplan.

Upgrade Notes:

  • res_audiosocket: add message types for all slin sample rates

    New audiosocket message types 0x11 - 0x18 has been added
    for slin12, slin16, slin24, slin32, slin44, slin48, slin96, and
    slin192 audio. External applications using audiosocket may need to be
    updated to support these message types if the audiosocket channel is
    created with one of these audio formats.

Developer Notes:

Commit Authors:

  • Bastian Triller: (1)
  • Ben Ford: (1)
  • George Joseph: (4)
  • Igor Goncharovsky: (1)
  • Max Grobecker: (1)
  • Nathan Monfils: (1)
  • Naveen Albert: (4)
  • Sean Bright: (3)
  • Sven Kube: (3)
  • phoneben: (1)

  •  

Asterisk Release 23.1.0

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

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

Repository: https://github.com/asterisk/asterisk
Tag: 23.1.0

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

Thank You!

Change Log for Release asterisk-23.1.0

Links:

Summary:

  • Commits: 53
  • Commit Authors: 17
  • Issues Resolved: 37
  • Security Advisories Resolved: 0

User Notes:

  • res_stir_shaken: Add STIR_SHAKEN_ATTESTATION dialplan function.

    The STIR_SHAKEN_ATTESTATION dialplan function has been added
    which will allow suppressing attestation on a call-by-call basis
    regardless of the profile attached to the outgoing endpoint.

  • func_channel: Allow R/W of ADSI CPE capability setting.

    CHANNEL(adsicpe) can now be read or written to change
    the channels' ADSI CPE capability setting.

  • func_hangupcause.c: Add access to Reason headers via HANGUPCAUSE()

    Added a new option to HANGUPCAUSE to access additional
    information about hangup reason. Reason headers from pjsip
    could be read using 'tech_extended' cause type.

  • func_math: Add DIGIT_SUM function.

    The DIGIT_SUM function can be used to return the digit sum of
    a number.

  • app_sf: Add post-digit timer option to ReceiveSF.

    The 't' option for ReceiveSF now allows for a timer since
    the last digit received, in addition to the number-wide timeout.

  • app_dial: Allow fractional seconds for dial timeouts.

    The answer and progress dial timeouts now have millisecond
    precision, instead of having to be whole numbers.

  • chan_dahdi: Add DAHDI_CHANNEL function.

    The DAHDI_CHANNEL function allows for getting/setting
    certain properties about DAHDI channels from the dialplan.

Upgrade Notes:

  • app_queue.c: Fix error in Queue parameter documentation.

    As part of Asterisk 21, macros were removed from Asterisk.
    This resulted in argument order changing for the Queue dialplan
    application since the macro argument was removed. Upgrade notice was
    missed when this was done, so this upgrade note has been added to
    provide a record of such and a notice to users who may have not upgraded
    yet.

  • res_audiosocket: add message types for all slin sample rates

    New audiosocket message types 0x11 - 0x18 has been added
    for slin12, slin16, slin24, slin32, slin44, slin48, slin96, and
    slin192 audio. External applications using audiosocket may need to be
    updated to support these message types if the audiosocket channel is
    created with one of these audio formats.

  • taskpool: Add taskpool API, switch Stasis to using it.

    The threadpool_* options in stasis.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 stasis.

Developer Notes:

  • chan_pjsip: Add technology-specific off-nominal hangup cause to events.

    A "tech_cause" parameter has been added to the
    ChannelHangupRequest and ChannelDestroyed ARI event messages and a "TechCause"
    parameter has been added to the HangupRequest, SoftHangupRequest and Hangup
    AMI event messages. For chan_pjsip, these will be set to the last SIP
    response status code for off-nominally terminated calls. The parameter is
    suppressed for nominal termination.

  • ARI: The bridges play and record APIs now handle sample rates > 8K correctly.

    The ARI /bridges/play and /bridges/record REST APIs have new
    parameters that allow the caller to specify the format to be used on the
    "Announcer" and "Recorder" channels respecitvely.

  • taskpool: Add taskpool API, switch Stasis to using it.

    The taskpool API has been added for common usage of a
    pool of taskprocessors. It is suggested to use this API instead of the
    threadpool+taskprocessor approach.

Commit Authors:

  • Allan Nathanson: (1)
  • Anthony Minessale: (1)
  • Bastian Triller: (1)
  • Ben Ford: (2)
  • Christoph Moench-Tegeder: (1)
  • George Joseph: (9)
  • Igor Goncharovsky: (1)
  • Joshua C. Colp: (6)
  • Max Grobecker: (1)
  • Nathan Monfils: (1)
  • Naveen Albert: (18)
  • Roman Pertsev: (1)
  • Sean Bright: (3)
  • Sven Kube: (3)
  • Tinet-mucw: (1)
  • gauravs456: (1)
  • phoneben: (2)

  •  

Asterisk Release 20.17.0

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

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

Repository: https://github.com/asterisk/asterisk
Tag: 20.17.0

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

Thank You!

Change Log for Release asterisk-20.17.0

Links:

Summary:

  • Commits: 50
  • Commit Authors: 16
  • Issues Resolved: 34
  • Security Advisories Resolved: 0

User Notes:

  • res_stir_shaken: Add STIR_SHAKEN_ATTESTATION dialplan function.

    The STIR_SHAKEN_ATTESTATION dialplan function has been added
    which will allow suppressing attestation on a call-by-call basis
    regardless of the profile attached to the outgoing endpoint.

  • func_channel: Allow R/W of ADSI CPE capability setting.

    CHANNEL(adsicpe) can now be read or written to change
    the channels' ADSI CPE capability setting.

  • func_hangupcause.c: Add access to Reason headers via HANGUPCAUSE()

    Added a new option to HANGUPCAUSE to access additional
    information about hangup reason. Reason headers from pjsip
    could be read using 'tech_extended' cause type.

  • func_math: Add DIGIT_SUM function.

    The DIGIT_SUM function can be used to return the digit sum of
    a number.

  • app_sf: Add post-digit timer option to ReceiveSF.

    The 't' option for ReceiveSF now allows for a timer since
    the last digit received, in addition to the number-wide timeout.

  • app_dial: Allow fractional seconds for dial timeouts.

    The answer and progress dial timeouts now have millisecond
    precision, instead of having to be whole numbers.

  • chan_dahdi: Add DAHDI_CHANNEL function.

    The DAHDI_CHANNEL function allows for getting/setting
    certain properties about DAHDI channels from the dialplan.

Upgrade Notes:

  • res_audiosocket: add message types for all slin sample rates

    New audiosocket message types 0x11 - 0x18 has been added
    for slin12, slin16, slin24, slin32, slin44, slin48, slin96, and
    slin192 audio. External applications using audiosocket may need to be
    updated to support these message types if the audiosocket channel is
    created with one of these audio formats.

  • taskpool: Add taskpool API, switch Stasis to using it.

    The threadpool_* options in stasis.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 stasis.

Developer Notes:

  • chan_pjsip: Add technology-specific off-nominal hangup cause to events.

    A "tech_cause" parameter has been added to the
    ChannelHangupRequest and ChannelDestroyed ARI event messages and a "TechCause"
    parameter has been added to the HangupRequest, SoftHangupRequest and Hangup
    AMI event messages. For chan_pjsip, these will be set to the last SIP
    response status code for off-nominally terminated calls. The parameter is
    suppressed for nominal termination.

  • ARI: The bridges play and record APIs now handle sample rates > 8K correctly.

    The ARI /bridges/play and /bridges/record REST APIs have new
    parameters that allow the caller to specify the format to be used on the
    "Announcer" and "Recorder" channels respecitvely.

  • taskpool: Add taskpool API, switch Stasis to using it.

    The taskpool API has been added for common usage of a
    pool of taskprocessors. It is suggested to use this API instead of the
    threadpool+taskprocessor approach.

Commit Authors:

  • Anthony Minessale: (1)
  • Bastian Triller: (1)
  • Ben Ford: (1)
  • Christoph Moench-Tegeder: (1)
  • George Joseph: (9)
  • Igor Goncharovsky: (1)
  • Joshua C. Colp: (6)
  • Max Grobecker: (1)
  • Nathan Monfils: (1)
  • Naveen Albert: (17)
  • Roman Pertsev: (1)
  • Sean Bright: (3)
  • Sven Kube: (3)
  • Tinet-mucw: (1)
  • gauravs456: (1)
  • phoneben: (2)

  •  

Asterisk Release 23.1.0-rc2

The Asterisk Development Team would like to announce
release candidate 2 of asterisk-23.1.0.

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

Repository: https://github.com/asterisk/asterisk
Tag: 23.1.0-rc2

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

Thank You!

Change Log for Release asterisk-23.1.0-rc2

Links:

Summary:

  • Commits: 1
  • Commit Authors: 1
  • Issues Resolved: 1
  • Security Advisories Resolved: 0

User Notes:

Upgrade Notes:

Developer Notes:

Commit Authors:

  • George Joseph: (1)

Issue and Commit Detail:

Closed Issues:

  • 1578: [bug]: Deadlock with externalMedia custom channel id and cpp map channel backend

Commits By Author:

  • George Joseph (1):

Commit List:

  • channelstorage: Allow storage driver read locking to be skipped.

Commit Details:

channelstorage: Allow storage driver read locking to be skipped.

Author: George Joseph
Date: 2025-11-06

After PR #1498 added read locking to channelstorage_cpp_map_name_id, if ARI
channels/externalMedia was called with a custom channel id AND the
cpp_map_name_id channel storage backend is in use, a deadlock can occur when
hanging up the channel. It's actually triggered in
channel.c:__ast_channel_alloc_ap() when it gets a write lock on the
channelstorage driver then subsequently does a lookup for channel uniqueid
which now does a read lock. This is an invalid operation and causes the lock
state to get "bad". When the channels try to hang up, a write lock is
attempted again which hangs and causes the deadlock.

Now instead of the cpp_map_name_id channelstorage driver "get" APIs
automatically performing a read lock, they take a "lock" parameter which
allows a caller who already has a write lock to indicate that the "get" API
must not attempt its own lock. This prevents the state from getting mesed up.

The ao2_legacy driver uses the ao2 container's recursive mutex so doesn't
have this issue but since it also implements the common channelstorage API,
it needed its "get" implementations updated to take the lock parameter. They
just don't use it.

Resolves: #1578

  •  

Asterisk Release 22.7.0-rc2

The Asterisk Development Team would like to announce
release candidate 2 of asterisk-22.7.0.

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

Repository: https://github.com/asterisk/asterisk
Tag: 22.7.0-rc2

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

Thank You!

Change Log for Release asterisk-22.7.0-rc2

Links:

Summary:

  • Commits: 1
  • Commit Authors: 1
  • Issues Resolved: 1
  • Security Advisories Resolved: 0

User Notes:

Upgrade Notes:

Developer Notes:

Commit Authors:

  • George Joseph: (1)

Issue and Commit Detail:

Closed Issues:

  • 1578: [bug]: Deadlock with externalMedia custom channel id and cpp map channel backend

Commits By Author:

  • George Joseph (1):

Commit List:

  • channelstorage: Allow storage driver read locking to be skipped.

Commit Details:

channelstorage: Allow storage driver read locking to be skipped.

Author: George Joseph
Date: 2025-11-06

After PR #1498 added read locking to channelstorage_cpp_map_name_id, if ARI
channels/externalMedia was called with a custom channel id AND the
cpp_map_name_id channel storage backend is in use, a deadlock can occur when
hanging up the channel. It's actually triggered in
channel.c:__ast_channel_alloc_ap() when it gets a write lock on the
channelstorage driver then subsequently does a lookup for channel uniqueid
which now does a read lock. This is an invalid operation and causes the lock
state to get "bad". When the channels try to hang up, a write lock is
attempted again which hangs and causes the deadlock.

Now instead of the cpp_map_name_id channelstorage driver "get" APIs
automatically performing a read lock, they take a "lock" parameter which
allows a caller who already has a write lock to indicate that the "get" API
must not attempt its own lock. This prevents the state from getting mesed up.

The ao2_legacy driver uses the ao2 container's recursive mutex so doesn't
have this issue but since it also implements the common channelstorage API,
it needed its "get" implementations updated to take the lock parameter. They
just don't use it.

Resolves: #1578

  •  

Asterisk Release 21.12.0-rc2

The Asterisk Development Team would like to announce
release candidate 2 of asterisk-21.12.0.

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

Repository: https://github.com/asterisk/asterisk
Tag: 21.12.0-rc2

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.12.0-rc2

Links:

Summary:

  • Commits: 1
  • Commit Authors: 1
  • Issues Resolved: 1
  • Security Advisories Resolved: 0

User Notes:

Upgrade Notes:

Developer Notes:

Commit Authors:

  • George Joseph: (1)

Issue and Commit Detail:

Closed Issues:

  • 1578: [bug]: Deadlock with externalMedia custom channel id and cpp map channel backend

Commits By Author:

  • George Joseph (1):

Commit List:

  • channelstorage: Allow storage driver read locking to be skipped.

Commit Details:

channelstorage: Allow storage driver read locking to be skipped.

Author: George Joseph
Date: 2025-11-06

After PR #1498 added read locking to channelstorage_cpp_map_name_id, if ARI
channels/externalMedia was called with a custom channel id AND the
cpp_map_name_id channel storage backend is in use, a deadlock can occur when
hanging up the channel. It's actually triggered in
channel.c:__ast_channel_alloc_ap() when it gets a write lock on the
channelstorage driver then subsequently does a lookup for channel uniqueid
which now does a read lock. This is an invalid operation and causes the lock
state to get "bad". When the channels try to hang up, a write lock is
attempted again which hangs and causes the deadlock.

Now instead of the cpp_map_name_id channelstorage driver "get" APIs
automatically performing a read lock, they take a "lock" parameter which
allows a caller who already has a write lock to indicate that the "get" API
must not attempt its own lock. This prevents the state from getting mesed up.

The ao2_legacy driver uses the ao2 container's recursive mutex so doesn't
have this issue but since it also implements the common channelstorage API,
it needed its "get" implementations updated to take the lock parameter. They
just don't use it.

Resolves: #1578

  •  

Asterisk Release 20.17.0-rc2

The Asterisk Development Team would like to announce
release candidate 2 of asterisk-20.17.0.

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

Repository: https://github.com/asterisk/asterisk
Tag: 20.17.0-rc2

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

Thank You!

Change Log for Release asterisk-20.17.0-rc2

Links:

Summary:

  • Commits: 1
  • Commit Authors: 1
  • Issues Resolved: 1
  • Security Advisories Resolved: 0

User Notes:

Upgrade Notes:

Developer Notes:

Commit Authors:

  • George Joseph: (1)

Issue and Commit Detail:

Closed Issues:

  • 1578: [bug]: Deadlock with externalMedia custom channel id and cpp map channel backend

Commits By Author:

  • George Joseph (1):

Commit List:

  • channelstorage: Allow storage driver read locking to be skipped.

Commit Details:

channelstorage: Allow storage driver read locking to be skipped.

Author: George Joseph
Date: 2025-11-06

After PR #1498 added read locking to channelstorage_cpp_map_name_id, if ARI
channels/externalMedia was called with a custom channel id AND the
cpp_map_name_id channel storage backend is in use, a deadlock can occur when
hanging up the channel. It's actually triggered in
channel.c:__ast_channel_alloc_ap() when it gets a write lock on the
channelstorage driver then subsequently does a lookup for channel uniqueid
which now does a read lock. This is an invalid operation and causes the lock
state to get "bad". When the channels try to hang up, a write lock is
attempted again which hangs and causes the deadlock.

Now instead of the cpp_map_name_id channelstorage driver "get" APIs
automatically performing a read lock, they take a "lock" parameter which
allows a caller who already has a write lock to indicate that the "get" API
must not attempt its own lock. This prevents the state from getting mesed up.

The ao2_legacy driver uses the ao2 container's recursive mutex so doesn't
have this issue but since it also implements the common channelstorage API,
it needed its "get" implementations updated to take the lock parameter. They
just don't use it.

Resolves: #1578

  •  

Asterisk Release 22.7.0-rc1

The Asterisk Development Team would like to announce
release candidate 1 of asterisk-22.7.0.

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

Repository: https://github.com/asterisk/asterisk
Tag: 22.7.0-rc1

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

Thank You!

Change Log for Release asterisk-22.7.0-rc1

Links:

Summary:

  • Commits: 53
  • Commit Authors: 16
  • Issues Resolved: 35
  • Security Advisories Resolved: 0

User Notes:

  • res_stir_shaken: Add STIR_SHAKEN_ATTESTATION dialplan function.

    The STIR_SHAKEN_ATTESTATION dialplan function has been added
    which will allow suppressing attestation on a call-by-call basis
    regardless of the profile attached to the outgoing endpoint.

  • func_channel: Allow R/W of ADSI CPE capability setting.

    CHANNEL(adsicpe) can now be read or written to change
    the channels' ADSI CPE capability setting.

  • func_hangupcause.c: Add access to Reason headers via HANGUPCAUSE()

    Added a new option to HANGUPCAUSE to access additional
    information about hangup reason. Reason headers from pjsip
    could be read using 'tech_extended' cause type.

  • func_math: Add DIGIT_SUM function.

    The DIGIT_SUM function can be used to return the digit sum of
    a number.

  • app_sf: Add post-digit timer option to ReceiveSF.

    The 't' option for ReceiveSF now allows for a timer since
    the last digit received, in addition to the number-wide timeout.

  • app_dial: Allow fractional seconds for dial timeouts.

    The answer and progress dial timeouts now have millisecond
    precision, instead of having to be whole numbers.

  • chan_dahdi: Add DAHDI_CHANNEL function.

    The DAHDI_CHANNEL function allows for getting/setting
    certain properties about DAHDI channels from the dialplan.

Upgrade Notes:

  • pjsip: Move from threadpool to taskpool

    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_queue.c: Fix error in Queue parameter documentation.

    As part of Asterisk 21, macros were removed from Asterisk.
    This resulted in argument order changing for the Queue dialplan
    application since the macro argument was removed. Upgrade notice was
    missed when this was done, so this upgrade note has been added to
    provide a record of such and a notice to users who may have not upgraded
    yet.

  • res_audiosocket: add message types for all slin sample rates

    New audiosocket message types 0x11 - 0x18 has been added
    for slin12, slin16, slin24, slin32, slin44, slin48, slin96, and
    slin192 audio. External applications using audiosocket may need to be
    updated to support these message types if the audiosocket channel is
    created with one of these audio formats.

  • taskpool: Add taskpool API, switch Stasis to using it.

    The threadpool_* options in stasis.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 stasis.

Developer Notes:

  • chan_pjsip: Add technology-specific off-nominal hangup cause to events.

    A "tech_cause" parameter has been added to the
    ChannelHangupRequest and ChannelDestroyed ARI event messages and a "TechCause"
    parameter has been added to the HangupRequest, SoftHangupRequest and Hangup
    AMI event messages. For chan_pjsip, these will be set to the last SIP
    response status code for off-nominally terminated calls. The parameter is
    suppressed for nominal termination.

  • ARI: The bridges play and record APIs now handle sample rates > 8K correctly.

    The ARI /bridges/play and /bridges/record REST APIs have new
    parameters that allow the caller to specify the format to be used on the
    "Announcer" and "Recorder" channels respecitvely.

  • taskpool: Add taskpool API, switch Stasis to using it.

    The taskpool API has been added for common usage of a
    pool of taskprocessors. It is suggested to use this API instead of the
    threadpool+taskprocessor approach.

Commit Authors:

  • Anthony Minessale: (1)
  • Bastian Triller: (1)
  • Ben Ford: (2)
  • Christoph Moench-Tegeder: (1)
  • Gauravs456: (1)
  • George Joseph: (8)
  • Igor Goncharovsky: (1)
  • Joshua C. Colp: (8)
  • Max Grobecker: (1)
  • Nathan Monfils: (1)
  • Naveen Albert: (18)
  • Phoneben: (2)
  • Roman Pertsev: (1)
  • Sean Bright: (3)
  • Sven Kube: (3)
  • Tinet-Mucw: (1)

  •  

Asterisk Release 23.1.0-rc1

The Asterisk Development Team would like to announce
release candidate 1 of asterisk-23.1.0.

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

Repository: https://github.com/asterisk/asterisk
Tag: 23.1.0-rc1

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

Thank You!

Change Log for Release asterisk-23.1.0-rc1

Links:

Summary:

  • Commits: 54
  • Commit Authors: 17
  • Issues Resolved: 36
  • Security Advisories Resolved: 0

User Notes:

  • res_stir_shaken: Add STIR_SHAKEN_ATTESTATION dialplan function.

    The STIR_SHAKEN_ATTESTATION dialplan function has been added
    which will allow suppressing attestation on a call-by-call basis
    regardless of the profile attached to the outgoing endpoint.

  • func_channel: Allow R/W of ADSI CPE capability setting.

    CHANNEL(adsicpe) can now be read or written to change
    the channels' ADSI CPE capability setting.

  • func_hangupcause.c: Add access to Reason headers via HANGUPCAUSE()

    Added a new option to HANGUPCAUSE to access additional
    information about hangup reason. Reason headers from pjsip
    could be read using 'tech_extended' cause type.

  • func_math: Add DIGIT_SUM function.

    The DIGIT_SUM function can be used to return the digit sum of
    a number.

  • app_sf: Add post-digit timer option to ReceiveSF.

    The 't' option for ReceiveSF now allows for a timer since
    the last digit received, in addition to the number-wide timeout.

  • app_dial: Allow fractional seconds for dial timeouts.

    The answer and progress dial timeouts now have millisecond
    precision, instead of having to be whole numbers.

  • chan_dahdi: Add DAHDI_CHANNEL function.

    The DAHDI_CHANNEL function allows for getting/setting
    certain properties about DAHDI channels from the dialplan.

Upgrade Notes:

  • pjsip: Move from threadpool to taskpool

    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_queue.c: Fix error in Queue parameter documentation.

    As part of Asterisk 21, macros were removed from Asterisk.
    This resulted in argument order changing for the Queue dialplan
    application since the macro argument was removed. Upgrade notice was
    missed when this was done, so this upgrade note has been added to
    provide a record of such and a notice to users who may have not upgraded
    yet.

  • res_audiosocket: add message types for all slin sample rates

    New audiosocket message types 0x11 - 0x18 has been added
    for slin12, slin16, slin24, slin32, slin44, slin48, slin96, and
    slin192 audio. External applications using audiosocket may need to be
    updated to support these message types if the audiosocket channel is
    created with one of these audio formats.

  • taskpool: Add taskpool API, switch Stasis to using it.

    The threadpool_* options in stasis.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 stasis.

Developer Notes:

  • chan_pjsip: Add technology-specific off-nominal hangup cause to events.

    A "tech_cause" parameter has been added to the
    ChannelHangupRequest and ChannelDestroyed ARI event messages and a "TechCause"
    parameter has been added to the HangupRequest, SoftHangupRequest and Hangup
    AMI event messages. For chan_pjsip, these will be set to the last SIP
    response status code for off-nominally terminated calls. The parameter is
    suppressed for nominal termination.

  • ARI: The bridges play and record APIs now handle sample rates > 8K correctly.

    The ARI /bridges/play and /bridges/record REST APIs have new
    parameters that allow the caller to specify the format to be used on the
    "Announcer" and "Recorder" channels respecitvely.

  • taskpool: Add taskpool API, switch Stasis to using it.

    The taskpool API has been added for common usage of a
    pool of taskprocessors. It is suggested to use this API instead of the
    threadpool+taskprocessor approach.

Commit Authors:

  • Allan Nathanson: (1)
  • Anthony Minessale: (1)
  • Bastian Triller: (1)
  • Ben Ford: (2)
  • Christoph Moench-Tegeder: (1)
  • Gauravs456: (1)
  • George Joseph: (8)
  • Igor Goncharovsky: (1)
  • Joshua C. Colp: (8)
  • Max Grobecker: (1)
  • Nathan Monfils: (1)
  • Naveen Albert: (18)
  • Phoneben: (2)
  • Roman Pertsev: (1)
  • Sean Bright: (3)
  • Sven Kube: (3)
  • Tinet-Mucw: (1)

  •  

HeidiSQL Linux v12.14.1.1

12.14.1.1 - 2025-12-11

⛰️ Features

  • Shell script for creating macOS app bundle - (af24108)
  • Support XML formatting in grid popup text editor - (913fc9d)
  • Switch to grayscale icons on inactive query tabs - (917e046)
  • Support SSH tunnel configuration per commandline - (35a5225)
  • Display some known file type icons in file open/save dialog - (b4c0566)
  • Finalize keyboard shortcut customization in preferences - (637d2d6)
  • Add new keyboard shortcut editors on preferences dialog - (cc4e6f1)
  • Keep time fractions intact for CSV exports - (06322de)
  • Use custom folder icons in tree on file dialogs, in non-Windows mode - (3094d79)
  • Show NULL values in system variables listing - (06b44eb)
  • Highlight same text in grids based on all selected rows - (afc9d8c)
  • Support fractional UNIX timestamps in grids - (65c1472)
  • Add "source table: xyz" hint to query result column headers - (2863a80)
  • Support click on path parts on top label of file dialog - (98b796b)
  • Convert all save/open dialogs to the new custom one - (4a8c53c)
  • Create file-save dialog with linebreaks selector - (d5d34ad)
  • Recreate basic TExtFileOpenDialog without OS owned dialog and room for customization - (bac0d7a)
  • Full support for different icon packs, Silk and Icons8 - (dbca69d)
  • Add 206 Silk icons into new TImageList - (769afa5)
  • Require libsybdb5 in DEB package - (e1781f9)
  • Mark MS SQL protocols like named pipe as unsupported, advise the user to change to TCP/IP - (b20f121)
  • Dirty and basic support for MS SQL - (3df3673)
  • Show more detailed backtrace in crash dialog - (bc0a7de)
  • Support SSH passwords via sshpass - (f2b2dc3)

πŸš€ Enhancements

  • Position session manager centered over main form, ignore position set by user - (571c671)
  • Align bottom buttons on session manager - (ca7aad6)
  • Set font style and color of size column in tree - (f987c81)
  • Move RightEdge on SQL editors out of sight - (2a23e26)
  • Light text color instead of ghosted/ugly icon for unseen tree nodes - (76aefb3)
  • Disable tree option asDoubleClickInsertsNodeText by default - (1c9321c)

πŸ› Bug Fixes

  • Connect MS SQL query to session transaction, run .ExecSQL - (59191da)
  • Prevent SQL delimiter being set to PostgreSQL quotes - (a3acc04)
  • Crash when grid-exporting without required key - (ff6050f)
  • Delete CLI-created session settings from registry after disconnect - (8778d40)
  • Another broken thousand separator - (24f3e36)
  • New attempt to hide SynEdit caret when unfocused - (03f4a5f)
  • A TSpeedButton connected to a TAction, and a TMenuItem were not auto-checking - (42abf46)
  • Database icon in Icons8 list too small - (dda44be)
  • Cannot save new table when added column was removed - (1fe709a)
  • Compile without MS SQL support on macOS - (9a4d841)
  • Query batch stops at second last query if it has errors but StopOnErrors is off - (6e40c62)
  • Drag'n drop on Linux requires VT.DragType = dtVCL - (4fd646c)
  • Enable drag'n drop in table editor and session manager - (9afc60f)
  • Detected empty text DEFAULT value for table columns - (4c0617d)
  • Append quick filter without linebreak - (8ea3b94)
  • Wrong icon sizes, disable right-click select for column list so selection is kept - (a145fc5)
  • Remove dead code, fix some compiler hints - (79bcd1d)
  • Bad position of TEdit on TInplaceEditorLink - (8d119a0)
  • Quick filter > "more values" submenu not created/shown - (8696e61)
  • Empty KeyStrokes list on text editor - (db00c83)
  • Broken caption on inline text edit button - (1730956)
  • User queries not showing up in log panel - (222a386)
  • Do not edit grid cell on right-click, and set HotCursor on DBtree - (0257867)
  • Flashing main form in background after cancel session manager - (0563b4d)
  • Work around empty space artifact in ShellListView - (cf9ed85)
  • Move all Application event assignments to .lpr file - (64919d6)
  • Confusion with (selected) folder icons - (b488ca2)
  • Tree with keyboard actions shows wrong captions - (5e20c53)
  • Binary result values displayed as 000... - (4322372)
  • TMySQLQuery.TableName() returns wrong string, and introduce apphelpers.GetAppDir - (bb517d7)
  • Crash in AnyGridPaintText with no query result - (59659f0)
  • Error: (4004) Variable identifier expected - (13a0127)
  • Crash in printer dialog with 0 printers available - (6eecdd8)
  • Missing file for previous commit - (857cca8)
  • Some remaining issues in the new file-open/save dialogs - (34e3f32)
  • Work around out-of-view item in left tree after FormShow - (ec4c237)
  • Navigate to directory of currently loaded file when user opens dialog for loading another file - (251f632)
  • Broken support for non UTF-8 encoding - (fe65231)
  • Prompt to overwrite only if file exists - (91de2fc)
  • Add encoding selector to file-open dialog - (56b783d)
  • Crash when app exits, with deleted TSynGutterSeparator - (00627ae)
  • Optical stuff, add bookmark icons for SynEdit - (29d1abc)
  • Use GetApplicationName in InitMoFile as well, plus documentation - (93bf989)
  • Make LCLTranslator independent of executable filename - (0469dd9)
  • Make GetAppConfigDir independent of executable filename - (9e2611e)
  • Make translation filename independent of executable filename - (5d487bb)
  • More painting related crashes on QT, this time in OperationRunning() - (fbe32db)
  • Compiler warnings, re-enable active line background - (a1c84ae)
  • Two crashes in QT caused by aggressive control repainting - (7650efe)
  • Hide library files which ldconfig shows up but don't exist - (85cf230)
  • Provide at least one libmysql for macOS, plus its dependencies - (1fbc2ab)
  • Fix compiler errors on macOS, set DYLD_LIBRARY_PATH run param to fix wrong path for libssl - (58b210a)
  • Wrong integer size/type for ClientFlag in mysql_real_connect - (3213fe9)

βš™οΈ Miscellaneous Tasks

  • Bump version to 12.14.1.1 - (1a2f1f3)
  • Use Lazarus logo in readme - (aa49736)
  • Remove now unused doc, written for converting to Lazarus - (b01e732)
  • Fix generation of .deb - (e95aca8)
  • Fix missing Package variable - (13c55ce)
  • Using v4 of git-cliff-action - (81d613b)

Contributors

[12.13.1.1] - 2025-11-03

⛰️ Features

  • Sort session folders at top per setting - (93dc936)
  • Filter box in user manager - (b57b764)
  • Add checkbox "Open file after creation" to grid export dialog - (613f4d8)
  • Allow sorting columns in table designer - (8541eb4)

πŸš€ Enhancements

  • Make file exit action OS friendly - (1f19d00)

πŸ› Bug Fixes

  • List procedures in PostgreSQL - (db902f7)
  • Missing DELETE HISTORY privilege on MariaDB - (f7b80db)
  • Prevent crash in auto-refresh action - (2c25e04)
  • Bad message with no library selected - (f9a486b)
  • Generate missing values for geometry columns - (eb1b5ea)
  • Allow modify length of index with binary column - (173efeb)
  • End global "edit function" mode for grid editing early - (5cac850)
  • Take care for escaped ENUM definitions - (328fb72)
  • Support return data type of stored function containing white spaces - (d7b1faa)
  • Safety replacement for folder separator when renaming a session or folder - (18a21ef)
  • Leave away schema when double-click table for inserting into query editor - (b72f259)
  • Sticky empty-password warning after setting a non-empty one - (f2028e1)
  • Support double dollar quotes on PostgreSQL - (caeae88)

πŸ“š Documentation

  • (CHANGELOG) Proper changelog - (79bb279)

βš™οΈ Miscellaneous Tasks

  • Bumping version to 12.13.1.1 - (bf23332)
  • Using correct target of build-* - (16a54a5)
  • Fixing some blantant mistakes - (76dfa98)
  • New category: Enhancements - (dd1ad34)
  • Removing unnecessary tx-push recipe - (d293d64)
  • Forgot to copy .ini files on run-* - (c513e53)
  • Completing run-gtk2, run-qt5 - (04650d9)
  • Adding empty tx-push to Makefile - (3ceed39)
  • Adjusting workflow to skip secrets detection - (14dd9ce)
  • Adding usage of secrets.mk - (123a2e7)
  • Forgot to change the output folder - (78f1415)
  • First batch of changes - (2bee126)

New Contributors ❀️

  • @gcarreno made their first contribution
  • @ansgarbecker made their first contribution
  • @ made their first contribution

Note

For a list of all the changes up to date, please read CHANGELOG.md.

  •  

HeidiSQL Windows 12.14.0.7165

Note: You can already get a preview of v13 for Windows, built on the same codebase as the Linux version. See the
download page for a zip package.

3rd party updates:

  • update SQLite library to v3.51.0

Bugfixes and enhancements:

  • fix: crash when grid-exporting without required key (issue #2311)
  • fix: cannot save new table when added column was removed (issue #2326)
  • fix: delete CLI-created session settings from registry after disconnect (issue #2162)
  • fix: query batch stops at second last query if it has errors but StopOnErrors is off (issue #2317)
  • feat: support SSH tunnel configuration per commandline (issue #2322)
  • disable tree option asDoubleClickInsertsNodeText by default (issue #2307)
  • fix: require elevation per build button only if app directory is not writable by user (issue #2305)
  • feat: keep time fractions intact for CSV exports (issue #2098)
  • fix: crash in AnyGridPaintText with no query result
  • feat: show NULL values in system variables listing (issue #1281)
  • feat: highlight same text in grids based on all selected rows
  • fix: crash in printer dialog with 0 printers available (issue #2283)
  • feat: support fractional UNIX timestamps in grids (issue #884)
  • feat: add "source table: xyz" hint to query result column headers https://www.heidisql.com/forum.php?t=44554

  •  

HeidiSQL Linux v12.13.1.1

[12.13.1.1] - 2025-11-03

⛰️ Features

  • Sort session folders at top per setting - (93dc936)
  • Filter box in user manager - (b57b764)
  • Add checkbox "Open file after creation" to grid export dialog - (613f4d8)
  • Allow sorting columns in table designer - (8541eb4)

πŸš€ Enhancements

  • Make file exit action OS friendly - (1f19d00)

πŸ› Bug Fixes

  • List procedures in PostgreSQL - (db902f7)
  • Missing DELETE HISTORY privilege on MariaDB - (f7b80db)
  • Prevent crash in auto-refresh action - (2c25e04)
  • Bad message with no library selected - (f9a486b)
  • Generate missing values for geometry columns - (eb1b5ea)
  • Allow modify length of index with binary column - (173efeb)
  • End global "edit function" mode for grid editing early - (5cac850)
  • Take care for escaped ENUM definitions - (328fb72)
  • Support return data type of stored function containing white spaces - (d7b1faa)
  • Safety replacement for folder separator when renaming a session or folder - (18a21ef)
  • Leave away schema when double-click table for inserting into query editor - (b72f259)
  • Sticky empty-password warning after setting a non-empty one - (f2028e1)
  • Support double dollar quotes on PostgreSQL - (caeae88)

πŸ“š Documentation

  • (CHANGELOG) Proper changelog - (79bb279)

βš™οΈ Miscellaneous Tasks

  • Bumping version to 12.13.1.1 - (bf23332)
  • Using correct target of build-* - (16a54a5)
  • Fixing some blantant mistakes - (76dfa98)
  • New category: Enhancements - (dd1ad34)
  • Removing unnecessary tx-push recipe - (d293d64)
  • Forgot to copy .ini files on run-* - (c513e53)
  • Completing run-gtk2, run-qt5 - (04650d9)
  • Adding empty tx-push to Makefile - (3ceed39)
  • Adjusting workflow to skip secrets detection - (14dd9ce)
  • Adding usage of secrets.mk - (123a2e7)
  • Forgot to change the output folder - (78f1415)
  • First batch of changes - (2bee126)

Note

For a list of all the changes up to date, please read CHANGELOG.md.

Tip

This version has problems loading libmariadb library. The issue will be fixed in the next release. To work around in this release you may switch to libmysqlclient instead. If the library drop-down does not show libmysqlclient, install it via sudo apt install libmysqlclient-dev.

  •  

12.10

Get it from the download page

3rd party updates:

  • Issue #2076: exchange 32 bit SSL libraries with their 64 bit pendants, fixing SSL connections with libpq and libmariadb

  •  
❌