<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en" xmlns="http://www.w3.org/2005/Atom"><title>Recent changes to tickets</title><link href="https://sourceforge.net/p/xtu/tickets/" rel="alternate"/><link href="https://sourceforge.net/p/xtu/tickets/feed.atom" rel="self"/><id>https://sourceforge.net/p/xtu/tickets/</id><updated>2023-11-26T08:44:11.054000Z</updated><subtitle>Recent changes to tickets</subtitle><entry><title>#17 Ini-file reader/writer for PSM settings</title><link href="https://sourceforge.net/p/xtu/tickets/17/?limit=25#8189" rel="alternate"/><published>2023-11-26T08:44:11.054000Z</published><updated>2023-11-26T08:44:11.054000Z</updated><author><name>Nils Paulsson</name><uri>https://sourceforge.net/u/lonfield/</uri></author><id>https://sourceforge.netaa4173283e3269163839be44ab762ad98c53f8aa</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;ul&gt;
&lt;li&gt;Description has changed:&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Diff:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gd"&gt;--- old&lt;/span&gt;
&lt;span class="gi"&gt;+++ new&lt;/span&gt;
&lt;span class="gu"&gt;@@ -1 +1,3 @@&lt;/span&gt;
&lt;span class="w"&gt; &lt;/span&gt;Add an existing or write s simple INI-file reader/writer to provide run-time configuration parameters to a PSM. This module is preferably a simple, minimalistic implementation, having nothing more than what is needed to only deal with INI-files.
&lt;span class="gi"&gt;+&lt;/span&gt;
&lt;span class="gi"&gt;+One possible API to integrate is https://github.com/brofield/simpleini&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;</summary></entry><entry><title>#17 Ini-file reader/writer for PSM settings</title><link href="https://sourceforge.net/p/xtu/tickets/17/?limit=25#0275" rel="alternate"/><published>2023-11-26T08:43:43.369000Z</published><updated>2023-11-26T08:43:43.369000Z</updated><author><name>Nils Paulsson</name><uri>https://sourceforge.net/u/lonfield/</uri></author><id>https://sourceforge.net4b3929e0e0b00df66e44eab551e138e73a0c4ccd</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;One possible API to integrate is &lt;a href="https://github.com/brofield/simpleini" rel="nofollow"&gt;https://github.com/brofield/simpleini&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>#26 A better log solution for the PSM</title><link href="https://sourceforge.net/p/xtu/tickets/26/?limit=25#9039" rel="alternate"/><published>2023-11-19T11:12:32.099000Z</published><updated>2023-11-19T11:12:32.099000Z</updated><author><name>Nils Paulsson</name><uri>https://sourceforge.net/u/lonfield/</uri></author><id>https://sourceforge.net26c23de815962c334088005e469fc87ba28cb969</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;ul&gt;
&lt;li&gt;Description has changed:&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Diff:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gd"&gt;--- old&lt;/span&gt;
&lt;span class="gi"&gt;+++ new&lt;/span&gt;
&lt;span class="gu"&gt;@@ -1,3 +1,5 @@&lt;/span&gt;
&lt;span class="gd"&gt;-There is a need for a better log solution for the PSM. The current one is just a simplistic message printer, essentially  without any logic for saving to file, supressing repetitive messages, selectable time stamp source, etc. There are quite a few open source libraries that may be a good approach for integration. Also, it turns out that there may be a case for the PSM to be able to generate exceptions. Not as a generic solution for error handling, but as a mean of integrate expected error generation with the testing framework (Catch 2). Catch can catch (hep) exceptions but critical erros such as SIGABRT is not as easy to catch and test by the testing framework. Exceptions as such shall however NOT be elevated to the PIM and there is a very simple reason for that. Exceptions, callbacks, SIG*** are all asynchronous, or of-sequence execution paths. I.e. they break the expected instruction sequence defined by a procedure (i.e. a program). &lt;/span&gt;
&lt;span class="gi"&gt;+There is a need for a better log solution for the PSM. The current one is just a simplistic message printer, essentially  without any logic for saving to file, supressing repetitive messages, selectable time stamp source, etc. There are quite a few open source libraries that may be a good approach for integration. Also, it turns out that there may be a case for the PSM to be able to generate exceptions. Not as a generic solution for error handling, but as a mean of integrate expected error generation with the testing framework (Catch 2). Catch can catch (hep) exceptions but critical erros such as SIGABRT is not as easy to catch and test by the testing framework. Exceptions as such shall however NOT be elevated to the PIM.&lt;/span&gt;

&lt;span class="gd"&gt;-The fundamental computer architecture execution is based on history-preserving procedures. That is the reason we have a stack, a.k.a. a LIFO-queue. Exceptions et al, are not preserving history, but are history agnostic and asynchronous. The PIM already has a solidly defined support for that - The event driven state machiens, which is the same as a FIFO-queue. Thus, if the underlaying PSM need to generate an exception, this shall be converted to an event in the PIM.&lt;/span&gt;
&lt;span class="gi"&gt;+One log-library candidate is https://github.com/SergiusTheBest/plog&lt;/span&gt;
&lt;span class="gi"&gt;+&lt;/span&gt;
&lt;span class="gi"&gt;+Exceptions, callbacks, SIG*** are all asynchronous, or of-sequence execution paths. I.e. they break the expected instruction sequence defined by a procedure (i.e. a program). The fundamental computer architecture execution is based on history-preserving procedures. That is the reason we have a stack, a.k.a. a LIFO-queue. Exceptions et al, are not preserving history, but are history agnostic and asynchronous. The PIM already has a solidly defined support for that - The event driven state machiens, which is the same as a FIFO-queue. Thus, if the underlaying PSM need to generate an exception, this shall be converted to an event in the PIM.&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;</summary></entry><entry><title>A better log solution for the PSM</title><link href="https://sourceforge.net/p/xtu/tickets/26/" rel="alternate"/><published>2023-11-19T11:09:55.076000Z</published><updated>2023-11-19T11:09:55.076000Z</updated><author><name>Nils Paulsson</name><uri>https://sourceforge.net/u/lonfield/</uri></author><id>https://sourceforge.neteeb186c9c08054e2a7a386c285196662127db61d</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;There is a need for a better log solution for the PSM. The current one is just a simplistic message printer, essentially  without any logic for saving to file, supressing repetitive messages, selectable time stamp source, etc. There are quite a few open source libraries that may be a good approach for integration. Also, it turns out that there may be a case for the PSM to be able to generate exceptions. Not as a generic solution for error handling, but as a mean of integrate expected error generation with the testing framework (Catch 2). Catch can catch (hep) exceptions but critical erros such as SIGABRT is not as easy to catch and test by the testing framework. Exceptions as such shall however NOT be elevated to the PIM and there is a very simple reason for that. Exceptions, callbacks, SIG*** are all asynchronous, or of-sequence execution paths. I.e. they break the expected instruction sequence defined by a procedure (i.e. a program). &lt;/p&gt;
&lt;p&gt;The fundamental computer architecture execution is based on history-preserving procedures. That is the reason we have a stack, a.k.a. a LIFO-queue. Exceptions et al, are not preserving history, but are history agnostic and asynchronous. The PIM already has a solidly defined support for that - The event driven state machiens, which is the same as a FIFO-queue. Thus, if the underlaying PSM need to generate an exception, this shall be converted to an event in the PIM.&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>A better log solution for the PSM</title><link href="https://sourceforge.net/p/xtu/tickets/26/" rel="alternate"/><published>2023-11-19T11:09:55.076000Z</published><updated>2023-11-19T11:09:55.076000Z</updated><author><name>Nils Paulsson</name><uri>https://sourceforge.net/u/lonfield/</uri></author><id>https://sourceforge.net848abc5f42490ed5b9cbb84ef6c5142e6dc646c2</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Ticket 26 has been modified: A better log solution for the PSM&lt;br/&gt;
Edited By: Nils Paulsson (lonfield)&lt;br/&gt;
Description updated:&lt;br/&gt;
--- description-old&lt;/p&gt;
&lt;p&gt;+++ description-new&lt;/p&gt;
&lt;p&gt;@@ -1,3 +1,5 @@&lt;/p&gt;
&lt;p&gt;-There is a need for a better log solution for the PSM. The current one is just a simplistic message printer, essentially  without any logic for saving to file, supressing repetitive messages, selectable time stamp source, etc. There are quite a few open source libraries that may be a good approach for integration. Also, it turns out that there may be a case for the PSM to be able to generate exceptions. Not as a generic solution for error handling, but as a mean of integrate expected error generation with the testing framework (Catch 2). Catch can catch (hep) exceptions but critical erros such as SIGABRT is not as easy to catch and test by the testing framework. Exceptions as such shall however NOT be elevated to the PIM and there is a very simple reason for that. Exceptions, callbacks, SIG*** are all asynchronous, or of-sequence execution paths. I.e. they break the expected instruction sequence defined by a procedure (i.e. a program). &lt;br/&gt;
+There is a need for a better log solution for the PSM. The current one is just a simplistic message printer, essentially  without any logic for saving to file, supressing repetitive messages, selectable time stamp source, etc. There are quite a few open source libraries that may be a good approach for integration. Also, it turns out that there may be a case for the PSM to be able to generate exceptions. Not as a generic solution for error handling, but as a mean of integrate expected error generation with the testing framework (Catch 2). Catch can catch (hep) exceptions but critical erros such as SIGABRT is not as easy to catch and test by the testing framework. Exceptions as such shall however NOT be elevated to the PIM.&lt;/p&gt;
&lt;p&gt;-The fundamental computer architecture execution is based on history-preserving procedures. That is the reason we have a stack, a.k.a. a LIFO-queue. Exceptions et al, are not preserving history, but are history agnostic and asynchronous. The PIM already has a solidly defined support for that - The event driven state machiens, which is the same as a FIFO-queue. Thus, if the underlaying PSM need to generate an exception, this shall be converted to an event in the PIM.&lt;br/&gt;
+One log-library candidate is &lt;a href="https://github.com/SergiusTheBest/plog" rel="nofollow"&gt;https://github.com/SergiusTheBest/plog&lt;/a&gt;&lt;br/&gt;
+&lt;br/&gt;
+Exceptions, callbacks, SIG*** are all asynchronous, or of-sequence execution paths. I.e. they break the expected instruction sequence defined by a procedure (i.e. a program). The fundamental computer architecture execution is based on history-preserving procedures. That is the reason we have a stack, a.k.a. a LIFO-queue. Exceptions et al, are not preserving history, but are history agnostic and asynchronous. The PIM already has a solidly defined support for that - The event driven state machiens, which is the same as a FIFO-queue. Thus, if the underlaying PSM need to generate an exception, this shall be converted to an event in the PIM.&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>The QueuedBridgeT use case is ambigious</title><link href="https://sourceforge.net/p/xtu/tickets/25/" rel="alternate"/><published>2022-11-06T10:32:27.763000Z</published><updated>2022-11-06T10:32:27.763000Z</updated><author><name>Nils Paulsson</name><uri>https://sourceforge.net/u/lonfield/</uri></author><id>https://sourceforge.net9dd7cf5082d691a85ad879b7b6a8014e1a401e03</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;The template QueuedBridgeT provide a queue. In the case of a distributed bridge it is not clear what the queue shall be used for. On the requiring side there is a need for a dynamic queue to prevent a lock when issuing a new signal between e.g. the ZMQ Request &amp;amp; Reply. On the Providing side it would be good to have a small, but still, queue to reduce the probability for a lock when the provider's scheduler has much to do. Thus, these two use cases are not the same and thus the meaning of a queued bridge is ambuigious.&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Add deadlock protection in bridges</title><link href="https://sourceforge.net/p/xtu/tickets/24/" rel="alternate"/><published>2021-11-30T19:57:36.180000Z</published><updated>2021-11-30T19:57:36.180000Z</updated><author><name>Nils Paulsson</name><uri>https://sourceforge.net/u/lonfield/</uri></author><id>https://sourceforge.net4e4e613f3605649110cdcb21196b8bb95dbbd965</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;When 2 domains are sending signals to each other (in opposit direction) there is a possibility for a deadlock when both FIFO:s (Domain A -&amp;gt; Domain B,  Domain B -&amp;gt; Domain A) are full. Add some form of protection to prevent deadlock. &lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>#22 Remove event wrappers</title><link href="https://sourceforge.net/p/xtu/tickets/22/?limit=25#ca0b" rel="alternate"/><published>2021-10-26T18:06:53.106000Z</published><updated>2021-10-26T18:06:53.106000Z</updated><author><name>Nils Paulsson</name><uri>https://sourceforge.net/u/lonfield/</uri></author><id>https://sourceforge.netcfec99a5f0939c74bf60be3c0f5cb7fd9b620001</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;status&lt;/strong&gt;: open --&amp;gt; closed&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;</summary></entry><entry><title>Benchmark WiKi</title><link href="https://sourceforge.net/p/xtu/tickets/23/" rel="alternate"/><published>2021-07-05T18:55:31.164000Z</published><updated>2021-07-05T18:55:31.164000Z</updated><author><name>Nils Paulsson</name><uri>https://sourceforge.net/u/lonfield/</uri></author><id>https://sourceforge.net1e14dc9ca4cfe02fcb98599d986f14f3bce3fd64</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Write a wiki page for benchmark results. Shall cover Intel 6600, AMD Threadripper, Raspberry Pi 4, Raspberry Pi 2.&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>#19 Configurable object pool sizes</title><link href="https://sourceforge.net/p/xtu/tickets/19/?limit=25#25ad" rel="alternate"/><published>2021-06-02T21:06:27.440000Z</published><updated>2021-06-02T21:06:27.440000Z</updated><author><name>Nils Paulsson</name><uri>https://sourceforge.net/u/lonfield/</uri></author><id>https://sourceforge.net79fddcb7d3a98a1f5bf6d1da7357ea3c70353afb</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Milestone&lt;/strong&gt;: 2.0 --&amp;gt; 3.0&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;</summary></entry></feed>