<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://doc.expecco.de/index.php?action=history&amp;feed=atom&amp;title=Release_Notes_26.x</id>
	<title>Release Notes 26.x - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://doc.expecco.de/index.php?action=history&amp;feed=atom&amp;title=Release_Notes_26.x"/>
	<link rel="alternate" type="text/html" href="https://doc.expecco.de/index.php?title=Release_Notes_26.x&amp;action=history"/>
	<updated>2026-08-27T11:22:27Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in expecco Wiki (Version 26.x)</subtitle>
	<generator>MediaWiki 1.44.2</generator>
	<entry>
		<id>https://doc.expecco.de/index.php?title=Release_Notes_26.x&amp;diff=31776&amp;oldid=prev</id>
		<title>Cg: /* Release 26.2 (Q4 2026) */</title>
		<link rel="alternate" type="text/html" href="https://doc.expecco.de/index.php?title=Release_Notes_26.x&amp;diff=31776&amp;oldid=prev"/>
		<updated>2026-08-25T14:38:37Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Release 26.2 (Q4 2026)&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 25. August 2026, 14:38 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 15:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 15:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: &#039;&#039;&#039;NEW&#039;&#039;&#039; [[SNMP Plugin Reference/en|SNMP]] support, reimplemented in expecco itself - no &#039;&#039;net-snmp&#039;&#039; installation is needed any more, and the blocks behave identically on every supported platform. SNMP v1, v2c and v3 (authentication with MD5, SHA-1 or one of the SHA-2 protocols of RFC 7860, encryption with DES or AES-128); a whole table read by one block with its rows and their INDEX decoded (ifTable, ipAddrTable, tcpConnTable, ...); many devices asked the same question at once, in parallel; traps and informs both received and sent. An up to date set of MIB modules (net-snmp 5.9.5.2) is delivered, so the names of SNMPv2-MIB, IF-MIB, IP-MIB, TCP-MIB and friends resolve out of the box - the deprecated RFC1213-MIB groups (&#039;&#039;at&#039;&#039;, &#039;&#039;egp&#039;&#039;, &#039;&#039;ipRouteTable&#039;&#039;) are not part of it and are shown numerically, add &#039;&#039;RFC1213-MIB.txt&#039;&#039; to a MIB directory (&quot;Add MIB Directory&quot;) if a device still needs those names. Fixes on the way: object identifiers were corrupted on 64bit systems, which made most SNMP blocks return wrong values.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: &#039;&#039;&#039;NEW&#039;&#039;&#039; [[SNMP Plugin Reference/en|SNMP]] support, reimplemented in expecco itself - no &#039;&#039;net-snmp&#039;&#039; installation is needed any more, and the blocks behave identically on every supported platform. SNMP v1, v2c and v3 (authentication with MD5, SHA-1 or one of the SHA-2 protocols of RFC 7860, encryption with DES or AES-128); a whole table read by one block with its rows and their INDEX decoded (ifTable, ipAddrTable, tcpConnTable, ...); many devices asked the same question at once, in parallel; traps and informs both received and sent. An up to date set of MIB modules (net-snmp 5.9.5.2) is delivered, so the names of SNMPv2-MIB, IF-MIB, IP-MIB, TCP-MIB and friends resolve out of the box - the deprecated RFC1213-MIB groups (&#039;&#039;at&#039;&#039;, &#039;&#039;egp&#039;&#039;, &#039;&#039;ipRouteTable&#039;&#039;) are not part of it and are shown numerically, add &#039;&#039;RFC1213-MIB.txt&#039;&#039; to a MIB directory (&quot;Add MIB Directory&quot;) if a device still needs those names. Fixes on the way: object identifiers were corrupted on 64bit systems, which made most SNMP blocks return wrong values.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: the [[Remote Access/en#From expecco actions|Remote Access]] plugin gained &#039;&#039;&#039;native&#039;&#039;&#039; (pure-Smalltalk, via &amp;lt;code&amp;gt;exept:libcrypt/ssh&amp;lt;/code&amp;gt;) SSH and SFTP action blocks — SSH open/close, execute command (with optional stdin), execute a list of commands (each on its own channel or in one persistent shell), password authentication, and SFTP upload (from a file, String or stream), download (to a file and/or a stream, streamed without buffering), list, delete, rename and make-directory; each block ships with a runnable Test/Demo network. No external &amp;lt;code&amp;gt;ssh&amp;lt;/code&amp;gt;/&amp;lt;code&amp;gt;plink&amp;lt;/code&amp;gt; binary is required.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: the [[Remote Access/en#From expecco actions|Remote Access]] plugin gained &#039;&#039;&#039;native&#039;&#039;&#039; (pure-Smalltalk, via &amp;lt;code&amp;gt;exept:libcrypt/ssh&amp;lt;/code&amp;gt;) SSH and SFTP action blocks — SSH open/close, execute command (with optional stdin), execute a list of commands (each on its own channel or in one persistent shell), password authentication, and SFTP upload (from a file, String or stream), download (to a file and/or a stream, streamed without buffering), list, delete, rename and make-directory; each block ships with a runnable Test/Demo network. No external &amp;lt;code&amp;gt;ssh&amp;lt;/code&amp;gt;/&amp;lt;code&amp;gt;plink&amp;lt;/code&amp;gt; binary is required.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: documentation can now be given in &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[&lt;/del&gt;[https://www.markdownguide.org/basic-syntax&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;/|&lt;/del&gt;markdown format&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]&lt;/del&gt;].&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: documentation can now be given in [https://www.markdownguide.org/basic-syntax&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &lt;/ins&gt;markdown format].&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Fix: JSON printer&#039;s recursive store detection was generating false positives&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Fix: JSON printer&#039;s recursive store detection was generating false positives&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Fix: wrong (not detected) error handling in UDP send/receive operation under Windows.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Fix: wrong (not detected) error handling in UDP send/receive operation under Windows.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Cg</name></author>
	</entry>
	<entry>
		<id>https://doc.expecco.de/index.php?title=Release_Notes_26.x&amp;diff=31775&amp;oldid=prev</id>
		<title>Cg: /* Release 26.2 (Q4 2026) */</title>
		<link rel="alternate" type="text/html" href="https://doc.expecco.de/index.php?title=Release_Notes_26.x&amp;diff=31775&amp;oldid=prev"/>
		<updated>2026-08-25T14:37:47Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Release 26.2 (Q4 2026)&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 25. August 2026, 14:37 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 15:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 15:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: &#039;&#039;&#039;NEW&#039;&#039;&#039; [[SNMP Plugin Reference/en|SNMP]] support, reimplemented in expecco itself - no &#039;&#039;net-snmp&#039;&#039; installation is needed any more, and the blocks behave identically on every supported platform. SNMP v1, v2c and v3 (authentication with MD5, SHA-1 or one of the SHA-2 protocols of RFC 7860, encryption with DES or AES-128); a whole table read by one block with its rows and their INDEX decoded (ifTable, ipAddrTable, tcpConnTable, ...); many devices asked the same question at once, in parallel; traps and informs both received and sent. An up to date set of MIB modules (net-snmp 5.9.5.2) is delivered, so the names of SNMPv2-MIB, IF-MIB, IP-MIB, TCP-MIB and friends resolve out of the box - the deprecated RFC1213-MIB groups (&#039;&#039;at&#039;&#039;, &#039;&#039;egp&#039;&#039;, &#039;&#039;ipRouteTable&#039;&#039;) are not part of it and are shown numerically, add &#039;&#039;RFC1213-MIB.txt&#039;&#039; to a MIB directory (&quot;Add MIB Directory&quot;) if a device still needs those names. Fixes on the way: object identifiers were corrupted on 64bit systems, which made most SNMP blocks return wrong values.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: &#039;&#039;&#039;NEW&#039;&#039;&#039; [[SNMP Plugin Reference/en|SNMP]] support, reimplemented in expecco itself - no &#039;&#039;net-snmp&#039;&#039; installation is needed any more, and the blocks behave identically on every supported platform. SNMP v1, v2c and v3 (authentication with MD5, SHA-1 or one of the SHA-2 protocols of RFC 7860, encryption with DES or AES-128); a whole table read by one block with its rows and their INDEX decoded (ifTable, ipAddrTable, tcpConnTable, ...); many devices asked the same question at once, in parallel; traps and informs both received and sent. An up to date set of MIB modules (net-snmp 5.9.5.2) is delivered, so the names of SNMPv2-MIB, IF-MIB, IP-MIB, TCP-MIB and friends resolve out of the box - the deprecated RFC1213-MIB groups (&#039;&#039;at&#039;&#039;, &#039;&#039;egp&#039;&#039;, &#039;&#039;ipRouteTable&#039;&#039;) are not part of it and are shown numerically, add &#039;&#039;RFC1213-MIB.txt&#039;&#039; to a MIB directory (&quot;Add MIB Directory&quot;) if a device still needs those names. Fixes on the way: object identifiers were corrupted on 64bit systems, which made most SNMP blocks return wrong values.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: the [[Remote Access/en#From expecco actions|Remote Access]] plugin gained &#039;&#039;&#039;native&#039;&#039;&#039; (pure-Smalltalk, via &amp;lt;code&amp;gt;exept:libcrypt/ssh&amp;lt;/code&amp;gt;) SSH and SFTP action blocks — SSH open/close, execute command (with optional stdin), execute a list of commands (each on its own channel or in one persistent shell), password authentication, and SFTP upload (from a file, String or stream), download (to a file and/or a stream, streamed without buffering), list, delete, rename and make-directory; each block ships with a runnable Test/Demo network. No external &amp;lt;code&amp;gt;ssh&amp;lt;/code&amp;gt;/&amp;lt;code&amp;gt;plink&amp;lt;/code&amp;gt; binary is required.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: the [[Remote Access/en#From expecco actions|Remote Access]] plugin gained &#039;&#039;&#039;native&#039;&#039;&#039; (pure-Smalltalk, via &amp;lt;code&amp;gt;exept:libcrypt/ssh&amp;lt;/code&amp;gt;) SSH and SFTP action blocks — SSH open/close, execute command (with optional stdin), execute a list of commands (each on its own channel or in one persistent shell), password authentication, and SFTP upload (from a file, String or stream), download (to a file and/or a stream, streamed without buffering), list, delete, rename and make-directory; each block ships with a runnable Test/Demo network. No external &amp;lt;code&amp;gt;ssh&amp;lt;/code&amp;gt;/&amp;lt;code&amp;gt;plink&amp;lt;/code&amp;gt; binary is required.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: documentation can now be given in [[https://www.markdownguide.org/basic-syntax/|markdown format]].&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Fix: JSON printer&#039;s recursive store detection was generating false positives&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Fix: JSON printer&#039;s recursive store detection was generating false positives&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Fix: wrong (not detected) error handling in UDP send/receive operation under Windows.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Fix: wrong (not detected) error handling in UDP send/receive operation under Windows.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Cg</name></author>
	</entry>
	<entry>
		<id>https://doc.expecco.de/index.php?title=Release_Notes_26.x&amp;diff=31758&amp;oldid=prev</id>
		<title>Cg: /* Release 26.2 (Q4 2026) */</title>
		<link rel="alternate" type="text/html" href="https://doc.expecco.de/index.php?title=Release_Notes_26.x&amp;diff=31758&amp;oldid=prev"/>
		<updated>2026-08-25T13:16:00Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Release 26.2 (Q4 2026)&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 25. August 2026, 13:16 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 16:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 16:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: the [[Remote Access/en#From expecco actions|Remote Access]] plugin gained &#039;&#039;&#039;native&#039;&#039;&#039; (pure-Smalltalk, via &amp;lt;code&amp;gt;exept:libcrypt/ssh&amp;lt;/code&amp;gt;) SSH and SFTP action blocks — SSH open/close, execute command (with optional stdin), execute a list of commands (each on its own channel or in one persistent shell), password authentication, and SFTP upload (from a file, String or stream), download (to a file and/or a stream, streamed without buffering), list, delete, rename and make-directory; each block ships with a runnable Test/Demo network. No external &amp;lt;code&amp;gt;ssh&amp;lt;/code&amp;gt;/&amp;lt;code&amp;gt;plink&amp;lt;/code&amp;gt; binary is required.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: the [[Remote Access/en#From expecco actions|Remote Access]] plugin gained &#039;&#039;&#039;native&#039;&#039;&#039; (pure-Smalltalk, via &amp;lt;code&amp;gt;exept:libcrypt/ssh&amp;lt;/code&amp;gt;) SSH and SFTP action blocks — SSH open/close, execute command (with optional stdin), execute a list of commands (each on its own channel or in one persistent shell), password authentication, and SFTP upload (from a file, String or stream), download (to a file and/or a stream, streamed without buffering), list, delete, rename and make-directory; each block ships with a runnable Test/Demo network. No external &amp;lt;code&amp;gt;ssh&amp;lt;/code&amp;gt;/&amp;lt;code&amp;gt;plink&amp;lt;/code&amp;gt; binary is required.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Fix: JSON printer&#039;s recursive store detection was generating false positives&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Fix: JSON printer&#039;s recursive store detection was generating false positives&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Fix: &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;falsche&lt;/del&gt; (&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;nicht&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;erkannte&lt;/del&gt;) &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Fehlererkennung&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;bei&lt;/del&gt; UDP send/receive &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;unter&lt;/del&gt; Windows.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Fix: &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;wrong&lt;/ins&gt; (&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;not&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;detected&lt;/ins&gt;) &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;error&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;handling in&lt;/ins&gt; UDP send/receive &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;operation under&lt;/ins&gt; Windows.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Fix: Python Bridge: fix/workaround &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;um&lt;/del&gt; Python&#039;s &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Verhalten&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;nach&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Abbruch&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;eines&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Threads der&lt;/del&gt; in &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;einer&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;blockierenden&lt;/del&gt; I/O &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Operation&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;fest&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;steckt&lt;/del&gt; (&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;global&lt;/del&gt; Interpreter Lock). &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Führte&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;zu&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;einer&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Blockade&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;von&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;expecco&lt;/del&gt; (&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;gesperrte&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Critical&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Region,&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;die&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;nicht&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;entsperrt&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;wurde&lt;/del&gt;). &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Aus&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;dieser&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Situation&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;kam&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;man&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;nur&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;durch&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Eingabe&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;von CTRL&lt;/del&gt;-C &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;oder&lt;/del&gt; Pause &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;in&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;den&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Debugger&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;und&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;dann&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;mit&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Abort&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;wieder&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;in&lt;/del&gt; expecco&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;.&lt;/del&gt; Python Bridge &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;musste&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;danach&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;neu&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;gestared&lt;/del&gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;werden&lt;/del&gt;.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Fix: Python Bridge: fix/workaround &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;addressing&lt;/ins&gt; Python&#039;s &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;behavior&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;when&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;a&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;thread&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;stuck&lt;/ins&gt; in &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;a&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;blocking&lt;/ins&gt; I/O &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;operation&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;is&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;terminated&lt;/ins&gt; (&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;due to the Global&lt;/ins&gt; Interpreter Lock). &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;This&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;issue&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;caused&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;expecco&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;to&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;hang&lt;/ins&gt; (&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;a&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;critical&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;region&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;remained&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;locked&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;and&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;was not released&lt;/ins&gt;). &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;The&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;only&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;way&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;to&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;recover&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;was&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;to&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;press&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Ctrl&lt;/ins&gt;-C &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;or&lt;/ins&gt; Pause &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;to&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;enter&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;the&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;debugger,&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;then&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;abort&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;to&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;return&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;to&lt;/ins&gt; expecco&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;; the&lt;/ins&gt; Python Bridge &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;had&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;to&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;be&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;restarted&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;afterwards&lt;/ins&gt;.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Improvement: better Python syntax highlighter&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Improvement: better Python syntax highlighter&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Improvement: more (full set) of ANSI escape sequences handled by the terminal emulator (req&#039;d eg. for the SSH remote terminal access). Also hardened against malicious ANSI escape bombs (invalid escape sequences)&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Release 26.1 (Q2 2026) ==&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Release 26.1 (Q2 2026) ==&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Cg</name></author>
	</entry>
	<entry>
		<id>https://doc.expecco.de/index.php?title=Release_Notes_26.x&amp;diff=31757&amp;oldid=prev</id>
		<title>Cg: /* Release 26.2 (Q4 2026) */</title>
		<link rel="alternate" type="text/html" href="https://doc.expecco.de/index.php?title=Release_Notes_26.x&amp;diff=31757&amp;oldid=prev"/>
		<updated>2026-08-25T13:12:09Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Release 26.2 (Q4 2026)&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 25. August 2026, 13:12 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 16:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 16:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: the [[Remote Access/en#From expecco actions|Remote Access]] plugin gained &#039;&#039;&#039;native&#039;&#039;&#039; (pure-Smalltalk, via &amp;lt;code&amp;gt;exept:libcrypt/ssh&amp;lt;/code&amp;gt;) SSH and SFTP action blocks — SSH open/close, execute command (with optional stdin), execute a list of commands (each on its own channel or in one persistent shell), password authentication, and SFTP upload (from a file, String or stream), download (to a file and/or a stream, streamed without buffering), list, delete, rename and make-directory; each block ships with a runnable Test/Demo network. No external &amp;lt;code&amp;gt;ssh&amp;lt;/code&amp;gt;/&amp;lt;code&amp;gt;plink&amp;lt;/code&amp;gt; binary is required.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: the [[Remote Access/en#From expecco actions|Remote Access]] plugin gained &#039;&#039;&#039;native&#039;&#039;&#039; (pure-Smalltalk, via &amp;lt;code&amp;gt;exept:libcrypt/ssh&amp;lt;/code&amp;gt;) SSH and SFTP action blocks — SSH open/close, execute command (with optional stdin), execute a list of commands (each on its own channel or in one persistent shell), password authentication, and SFTP upload (from a file, String or stream), download (to a file and/or a stream, streamed without buffering), list, delete, rename and make-directory; each block ships with a runnable Test/Demo network. No external &amp;lt;code&amp;gt;ssh&amp;lt;/code&amp;gt;/&amp;lt;code&amp;gt;plink&amp;lt;/code&amp;gt; binary is required.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Fix: JSON printer&#039;s recursive store detection was generating false positives&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Fix: JSON printer&#039;s recursive store detection was generating false positives&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Fix: falsche (nicht erkannte) Fehlererkennung bei UDP send/receive unter Windows.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Fix: Python Bridge: fix/workaround um Python&#039;s Verhalten nach Abbruch eines Threads der in einer blockierenden I/O Operation fest steckt (global Interpreter Lock). Führte zu einer Blockade von expecco (gesperrte Critical Region, die nicht entsperrt wurde). Aus dieser Situation kam man nur durch Eingabe von CTRL-C oder Pause in den Debugger und dann mit Abort wieder in expecco. Python Bridge musste danach neu gestared werden.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Improvement: better Python syntax highlighter&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Improvement: better Python syntax highlighter&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Cg</name></author>
	</entry>
	<entry>
		<id>https://doc.expecco.de/index.php?title=Release_Notes_26.x&amp;diff=31744&amp;oldid=prev</id>
		<title>Sv: 26.2: native Remote Access SSH/SFTP action blocks (link to main article)</title>
		<link rel="alternate" type="text/html" href="https://doc.expecco.de/index.php?title=Release_Notes_26.x&amp;diff=31744&amp;oldid=prev"/>
		<updated>2026-08-21T18:19:01Z</updated>

		<summary type="html">&lt;p&gt;26.2: native Remote Access SSH/SFTP action blocks (link to main article)&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 21. August 2026, 18:19 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 14:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 14:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: full ipV6 UDP support (mostly socketAddress fixes and multicast support)&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: full ipV6 UDP support (mostly socketAddress fixes and multicast support)&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: &#039;&#039;&#039;NEW&#039;&#039;&#039; [[SNMP Plugin Reference/en|SNMP]] support, reimplemented in expecco itself - no &#039;&#039;net-snmp&#039;&#039; installation is needed any more, and the blocks behave identically on every supported platform. SNMP v1, v2c and v3 (authentication with MD5, SHA-1 or one of the SHA-2 protocols of RFC 7860, encryption with DES or AES-128); a whole table read by one block with its rows and their INDEX decoded (ifTable, ipAddrTable, tcpConnTable, ...); many devices asked the same question at once, in parallel; traps and informs both received and sent. An up to date set of MIB modules (net-snmp 5.9.5.2) is delivered, so the names of SNMPv2-MIB, IF-MIB, IP-MIB, TCP-MIB and friends resolve out of the box - the deprecated RFC1213-MIB groups (&#039;&#039;at&#039;&#039;, &#039;&#039;egp&#039;&#039;, &#039;&#039;ipRouteTable&#039;&#039;) are not part of it and are shown numerically, add &#039;&#039;RFC1213-MIB.txt&#039;&#039; to a MIB directory (&quot;Add MIB Directory&quot;) if a device still needs those names. Fixes on the way: object identifiers were corrupted on 64bit systems, which made most SNMP blocks return wrong values.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: &#039;&#039;&#039;NEW&#039;&#039;&#039; [[SNMP Plugin Reference/en|SNMP]] support, reimplemented in expecco itself - no &#039;&#039;net-snmp&#039;&#039; installation is needed any more, and the blocks behave identically on every supported platform. SNMP v1, v2c and v3 (authentication with MD5, SHA-1 or one of the SHA-2 protocols of RFC 7860, encryption with DES or AES-128); a whole table read by one block with its rows and their INDEX decoded (ifTable, ipAddrTable, tcpConnTable, ...); many devices asked the same question at once, in parallel; traps and informs both received and sent. An up to date set of MIB modules (net-snmp 5.9.5.2) is delivered, so the names of SNMPv2-MIB, IF-MIB, IP-MIB, TCP-MIB and friends resolve out of the box - the deprecated RFC1213-MIB groups (&#039;&#039;at&#039;&#039;, &#039;&#039;egp&#039;&#039;, &#039;&#039;ipRouteTable&#039;&#039;) are not part of it and are shown numerically, add &#039;&#039;RFC1213-MIB.txt&#039;&#039; to a MIB directory (&quot;Add MIB Directory&quot;) if a device still needs those names. Fixes on the way: object identifiers were corrupted on 64bit systems, which made most SNMP blocks return wrong values.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: the [[Remote Access/en#From expecco actions|Remote Access]] plugin gained &#039;&#039;&#039;native&#039;&#039;&#039; (pure-Smalltalk, via &amp;lt;code&amp;gt;exept:libcrypt/ssh&amp;lt;/code&amp;gt;) SSH and SFTP action blocks — SSH open/close, execute command (with optional stdin), execute a list of commands (each on its own channel or in one persistent shell), password authentication, and SFTP upload (from a file, String or stream), download (to a file and/or a stream, streamed without buffering), list, delete, rename and make-directory; each block ships with a runnable Test/Demo network. No external &amp;lt;code&amp;gt;ssh&amp;lt;/code&amp;gt;/&amp;lt;code&amp;gt;plink&amp;lt;/code&amp;gt; binary is required.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Fix: JSON printer&#039;s recursive store detection was generating false positives&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Fix: JSON printer&#039;s recursive store detection was generating false positives&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Improvement: better Python syntax highlighter&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Improvement: better Python syntax highlighter&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Sv</name></author>
	</entry>
	<entry>
		<id>https://doc.expecco.de/index.php?title=Release_Notes_26.x&amp;diff=31741&amp;oldid=prev</id>
		<title>Sv: 26.2: the four SNMP entries consolidated into one</title>
		<link rel="alternate" type="text/html" href="https://doc.expecco.de/index.php?title=Release_Notes_26.x&amp;diff=31741&amp;oldid=prev"/>
		<updated>2026-08-21T12:10:26Z</updated>

		<summary type="html">&lt;p&gt;26.2: the four SNMP entries consolidated into one&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 21. August 2026, 12:10 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 13:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 13:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: improved SSDP service announcement&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: improved SSDP service announcement&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: full ipV6 UDP support (mostly socketAddress fixes and multicast support)&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: full ipV6 UDP support (mostly socketAddress fixes and multicast support)&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: &#039;&#039;&#039;NEW&#039;&#039;&#039; [[SNMP Plugin Reference/en|SNMP]] support, reimplemented in expecco itself - no &#039;&#039;net-snmp&#039;&#039; installation is needed any more, and the blocks behave identically on every supported platform. SNMP v1, v2c and v3 (authentication with MD5, SHA-1 or one of the SHA-2 protocols of RFC 7860, encryption with DES or AES-128); a whole table read by one block with its rows and their INDEX decoded (ifTable, ipAddrTable, tcpConnTable, ...); many devices asked the same question at once, in parallel; traps and informs both received and sent. An up to date set of MIB modules (net-snmp 5.9.5.2) is delivered, so the names of SNMPv2-MIB, IF-MIB, IP-MIB, TCP-MIB and friends resolve out of the box - the deprecated RFC1213-MIB groups (&#039;&#039;at&#039;&#039;, &#039;&#039;egp&#039;&#039;, &#039;&#039;ipRouteTable&#039;&#039;) are not part of it and are shown numerically, add &#039;&#039;RFC1213-MIB.txt&#039;&#039; to a MIB directory (&quot;Add MIB Directory&quot;) if a device still needs those names. Fixes on the way: object identifiers were corrupted on 64bit systems, which made most SNMP blocks return wrong values.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: new [[SNMP Plugin Reference/en|SNMP]] blocks: read a whole table (ifTable, ipAddrTable, tcpConnTable, ...) with its rows and their INDEX decoded, ask many devices the same question at once, and receive traps and informs with a trap listener as well as send them.&lt;/div&gt;&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-added&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Improvement: the [[SNMP Plugin Reference/en|&#039;&#039;&#039;SNMP&#039;&#039;&#039;]] blocks no longer use the external &#039;&#039;net-snmp&#039;&#039; library; SNMP v1, v2c and v3 (authentication with MD5, SHA-1 or one of the SHA-2 protocols of RFC 7860, encryption with DES or AES-128) are now implemented in expecco itself and behave identically on all supported platforms.&lt;/div&gt;&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-added&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Improvement: an up to date set of MIB modules (from net-snmp 5.9.5.2) is delivered with the SNMP library, so symbolic names such as those of IF-MIB, IP-MIB or TCP-MIB are resolved out of the box. The deprecated RFC1213-MIB groups (&#039;&#039;at&#039;&#039;, &#039;&#039;egp&#039;&#039; and &#039;&#039;ipRouteTable&#039;&#039;) are no longer part of it and are shown numerically instead; add &#039;&#039;RFC1213-MIB.txt&#039;&#039; to a MIB directory (&quot;Add MIB Directory&quot;) if a device still requires those names.&lt;/div&gt;&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-added&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Fix: SNMP object identifiers were corrupted on 64bit systems, so that most SNMP blocks returned wrong values.&lt;/div&gt;&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-added&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Fix: JSON printer&#039;s recursive store detection was generating false positives&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Fix: JSON printer&#039;s recursive store detection was generating false positives&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Improvement: better Python syntax highlighter&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Improvement: better Python syntax highlighter&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Sv</name></author>
	</entry>
	<entry>
		<id>https://doc.expecco.de/index.php?title=Release_Notes_26.x&amp;diff=31740&amp;oldid=prev</id>
		<title>Sv: 26.2 SNMP: link to the plugin page, SHA-2, tables and traps</title>
		<link rel="alternate" type="text/html" href="https://doc.expecco.de/index.php?title=Release_Notes_26.x&amp;diff=31740&amp;oldid=prev"/>
		<updated>2026-08-21T12:05:47Z</updated>

		<summary type="html">&lt;p&gt;26.2 SNMP: link to the plugin page, SHA-2, tables and traps&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 21. August 2026, 12:05 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 13:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 13:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: improved SSDP service announcement&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: improved SSDP service announcement&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: full ipV6 UDP support (mostly socketAddress fixes and multicast support)&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: full ipV6 UDP support (mostly socketAddress fixes and multicast support)&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: new [[SNMP Plugin Reference/en|SNMP]] blocks: read a whole table (ifTable, ipAddrTable, tcpConnTable, ...) with its rows and their INDEX decoded, ask many devices the same question at once, and receive traps and informs with a trap listener as well as send them.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Improvement: the &#039;&#039;&#039;SNMP&#039;&#039;&#039; blocks no longer use the external &#039;&#039;net-snmp&#039;&#039; library; SNMP v1, v2c and v3 (authentication with MD5 or SHA-&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;1&lt;/del&gt;, encryption with DES or AES-128) are now implemented in expecco itself and behave identically on all supported platforms.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Improvement: the &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[SNMP Plugin Reference/en|&lt;/ins&gt;&#039;&#039;&#039;SNMP&#039;&#039;&#039;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt; blocks no longer use the external &#039;&#039;net-snmp&#039;&#039; library; SNMP v1, v2c and v3 (authentication with MD5&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;, SHA-1&lt;/ins&gt; or&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; one of the&lt;/ins&gt; SHA-&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;2 protocols of RFC 7860&lt;/ins&gt;, encryption with DES or AES-128) are now implemented in expecco itself and behave identically on all supported platforms.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Improvement: an up to date set of MIB modules (from net-snmp 5.9.5.2) is delivered with the SNMP library, so symbolic names such as those of IF-MIB, IP-MIB or TCP-MIB are resolved out of the box. The deprecated RFC1213-MIB groups (&#039;&#039;at&#039;&#039;, &#039;&#039;egp&#039;&#039; and &#039;&#039;ipRouteTable&#039;&#039;) are no longer part of it and are shown numerically instead; add &#039;&#039;RFC1213-MIB.txt&#039;&#039; to a MIB directory (&quot;Add MIB Directory&quot;) if a device still requires those names.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Improvement: an up to date set of MIB modules (from net-snmp 5.9.5.2) is delivered with the SNMP library, so symbolic names such as those of IF-MIB, IP-MIB or TCP-MIB are resolved out of the box. The deprecated RFC1213-MIB groups (&#039;&#039;at&#039;&#039;, &#039;&#039;egp&#039;&#039; and &#039;&#039;ipRouteTable&#039;&#039;) are no longer part of it and are shown numerically instead; add &#039;&#039;RFC1213-MIB.txt&#039;&#039; to a MIB directory (&quot;Add MIB Directory&quot;) if a device still requires those names.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Fix: SNMP object identifiers were corrupted on 64bit systems, so that most SNMP blocks returned wrong values.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Fix: SNMP object identifiers were corrupted on 64bit systems, so that most SNMP blocks returned wrong values.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Sv</name></author>
	</entry>
	<entry>
		<id>https://doc.expecco.de/index.php?title=Release_Notes_26.x&amp;diff=31733&amp;oldid=prev</id>
		<title>Sv: 26.2: SNMP without net-snmp, current MIBs, 64bit OID fix</title>
		<link rel="alternate" type="text/html" href="https://doc.expecco.de/index.php?title=Release_Notes_26.x&amp;diff=31733&amp;oldid=prev"/>
		<updated>2026-08-16T14:38:25Z</updated>

		<summary type="html">&lt;p&gt;26.2: SNMP without net-snmp, current MIBs, 64bit OID fix&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 16. August 2026, 14:38 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 13:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 13:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: improved SSDP service announcement&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: improved SSDP service announcement&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: full ipV6 UDP support (mostly socketAddress fixes and multicast support)&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: full ipV6 UDP support (mostly socketAddress fixes and multicast support)&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Improvement: the &#039;&#039;&#039;SNMP&#039;&#039;&#039; blocks no longer use the external &#039;&#039;net-snmp&#039;&#039; library; SNMP v1, v2c and v3 (authentication with MD5 or SHA-1, encryption with DES or AES-128) are now implemented in expecco itself and behave identically on all supported platforms.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Improvement: an up to date set of MIB modules (from net-snmp 5.9.5.2) is delivered with the SNMP library, so symbolic names such as those of IF-MIB, IP-MIB or TCP-MIB are resolved out of the box. The deprecated RFC1213-MIB groups (&#039;&#039;at&#039;&#039;, &#039;&#039;egp&#039;&#039; and &#039;&#039;ipRouteTable&#039;&#039;) are no longer part of it and are shown numerically instead; add &#039;&#039;RFC1213-MIB.txt&#039;&#039; to a MIB directory (&quot;Add MIB Directory&quot;) if a device still requires those names.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Fix: SNMP object identifiers were corrupted on 64bit systems, so that most SNMP blocks returned wrong values.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Fix: JSON printer&#039;s recursive store detection was generating false positives&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Fix: JSON printer&#039;s recursive store detection was generating false positives&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Improvement: better Python syntax highlighter&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Improvement: better Python syntax highlighter&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Sv</name></author>
	</entry>
	<entry>
		<id>https://doc.expecco.de/index.php?title=Release_Notes_26.x&amp;diff=31732&amp;oldid=prev</id>
		<title>Cg: /* Release 26.2 (Q4 2026) */</title>
		<link rel="alternate" type="text/html" href="https://doc.expecco.de/index.php?title=Release_Notes_26.x&amp;diff=31732&amp;oldid=prev"/>
		<updated>2026-08-14T11:17:31Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Release 26.2 (Q4 2026)&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 14. August 2026, 11:17 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 12:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 12:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: TEAM support; multiple teams users can live-edit the same suite for merge, group development, passing work to other users or demonstration. &lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: TEAM support; multiple teams users can live-edit the same suite for merge, group development, passing work to other users or demonstration. &lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: improved SSDP service announcement&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: improved SSDP service announcement&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Fix&lt;/del&gt;: full ipV6 UDP support (mostly socketAddress fixes and multicast support)&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Feature&lt;/ins&gt;: full ipV6 UDP support (mostly socketAddress fixes and multicast support)&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Fix: JSON printer&#039;s recursive store detection was generating false positives&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Improvement: better Python syntax highlighter&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Release 26.1 (Q2 2026) ==&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Release 26.1 (Q2 2026) ==&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Cg</name></author>
	</entry>
	<entry>
		<id>https://doc.expecco.de/index.php?title=Release_Notes_26.x&amp;diff=31577&amp;oldid=prev</id>
		<title>Cg: /* Release 26.2 (Q4 2026) */</title>
		<link rel="alternate" type="text/html" href="https://doc.expecco.de/index.php?title=Release_Notes_26.x&amp;diff=31577&amp;oldid=prev"/>
		<updated>2026-08-05T10:32:16Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Release 26.2 (Q4 2026)&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 5. August 2026, 10:32 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 5:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 5:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: [[ElementaryBlock_Element/en#Scheme_Blocks_(Bridged)|bridged Scheme]] (currently only Racket Scheme) action blocks&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: [[ElementaryBlock_Element/en#Scheme_Blocks_(Bridged)|bridged Scheme]] (currently only Racket Scheme) action blocks&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: [[ElementaryBlock_Element/en#Octave_Blocks_(Bridged)|bridged Octave/Matlab]] action blocks&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: [[ElementaryBlock_Element/en#Octave_Blocks_(Bridged)|bridged Octave/Matlab]] action blocks&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: bridged C# action blocks&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[Expecco_API/en#C#_Actions|&lt;/ins&gt;bridged C#&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt; action blocks&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: &#039;&#039;&#039;NEW&#039;&#039;&#039; AI Coding provider &quot;&#039;&#039;&#039;Claude Code (subscription)&#039;&#039;&#039;&quot; — uses your existing Claude subscription via the locally installed &#039;&#039;Claude Code&#039;&#039; command line program instead of an API key, so no key has to be entered and no per-token API charges are billed. Choose it like any other provider in the settings dialog (Plugins → AI Coding); the API key, endpoint URL and proxy fields are hidden for it because they do not apply, and the authentication method reads &quot;Subscription (external login)&quot;. It requires &#039;&#039;Claude Code&#039;&#039; to be installed and logged in once (run &amp;lt;code&amp;gt;claude&amp;lt;/code&amp;gt; in a terminal and complete the login). The model is selectable either as a tier alias (&#039;&#039;sonnet&#039;&#039;, &#039;&#039;opus&#039;&#039;, &#039;&#039;haiku&#039;&#039; — always the current model of that tier) or as a pinned model id.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: &#039;&#039;&#039;NEW&#039;&#039;&#039; AI Coding provider &quot;&#039;&#039;&#039;Claude Code (subscription)&#039;&#039;&#039;&quot; — uses your existing Claude subscription via the locally installed &#039;&#039;Claude Code&#039;&#039; command line program instead of an API key, so no key has to be entered and no per-token API charges are billed. Choose it like any other provider in the settings dialog (Plugins → AI Coding); the API key, endpoint URL and proxy fields are hidden for it because they do not apply, and the authentication method reads &quot;Subscription (external login)&quot;. It requires &#039;&#039;Claude Code&#039;&#039; to be installed and logged in once (run &amp;lt;code&amp;gt;claude&amp;lt;/code&amp;gt; in a terminal and complete the login). The model is selectable either as a tier alias (&#039;&#039;sonnet&#039;&#039;, &#039;&#039;opus&#039;&#039;, &#039;&#039;haiku&#039;&#039; — always the current model of that tier) or as a pinned model id.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: two new AI actions that work on the selected &#039;&#039;&#039;class&#039;&#039;&#039; rather than on a single method, reachable from the &#039;&#039;&#039;AI&#039;&#039;&#039; menu of the class browser: &quot;&#039;&#039;&#039;Explain Class&#039;&#039;&#039;&quot; explains the class as a whole — what it is responsible for, what its instance variables hold and how its protocols fit together — and &quot;&#039;&#039;&#039;Generate Class Documentation&#039;&#039;&#039;&quot; proposes a class documentation text which the &quot;[Apply]&quot; button installs into the class&#039; documentation.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Feature: two new AI actions that work on the selected &#039;&#039;&#039;class&#039;&#039;&#039; rather than on a single method, reachable from the &#039;&#039;&#039;AI&#039;&#039;&#039; menu of the class browser: &quot;&#039;&#039;&#039;Explain Class&#039;&#039;&#039;&quot; explains the class as a whole — what it is responsible for, what its instance variables hold and how its protocols fit together — and &quot;&#039;&#039;&#039;Generate Class Documentation&#039;&#039;&#039;&quot; proposes a class documentation text which the &quot;[Apply]&quot; button installs into the class&#039; documentation.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Cg</name></author>
	</entry>
</feed>