SIGN IN SIGN UP

Fix thread-unsafe concurrent modification of m_pipes in SocketBase.ProcessTerm (#1154)

* Initial plan

* Fix thread-unsafe concurrent modification of m_pipes in SocketBase.ProcessTerm

Agent-Logs-Url: https://github.com/zeromq/netmq/sessions/414caa2a-c46e-4c61-8633-737221f630a1

Co-authored-by: drewnoakes <350947+drewnoakes@users.noreply.github.com>

* Replace List<Pipe> with ImmutableArray for thread-safe m_pipes, add regression test

Agent-Logs-Url: https://github.com/zeromq/netmq/sessions/18e27ca4-e99b-4f9a-b7c1-26e6972e6d19

Co-authored-by: drewnoakes <350947+drewnoakes@users.noreply.github.com>

* Scope System.Collections.Immutable to non-CoreApp TFMs, upgrade to 10.0.7

Agent-Logs-Url: https://github.com/zeromq/netmq/sessions/ba8d4260-afb2-4255-a0d3-1d487bb70cb7

Co-authored-by: drewnoakes <350947+drewnoakes@users.noreply.github.com>

* Fix two pre-existing flaky tests: MultiplePublishers ordering race and ReceiveMessageWithTimeout AutoResetEvent self-consumption

Agent-Logs-Url: https://github.com/zeromq/netmq/sessions/2c8d5680-a206-428d-9218-a720bcbfbc4e

Co-authored-by: drewnoakes <350947+drewnoakes@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: drewnoakes <350947+drewnoakes@users.noreply.github.com>
C
Copilot committed
a9940cf07a8d0972ee53ca65b780d40e0eb53ce1
Parent: ffe3b37
Committed by GitHub <noreply@github.com> on 4/30/2026, 11:02:46 PM