Fri, 11 Oct 2024 10:34:15 +0200SVGHMI: add ForEach widget example
Edouard Tisserant <edouard@beremiz.fr> [Fri, 11 Oct 2024 10:34:15 +0200] rev 4026
SVGHMI: add ForEach widget example

Fri, 11 Oct 2024 10:18:57 +0200SVGHMI: Extend ForEach widget to expose range, position and size in a way comparable with ScrollBar widget.
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 11 Oct 2024 10:18:57 +0200] rev 4025
SVGHMI: Extend ForEach widget to expose range, position and size in a way comparable with ScrollBar widget.

Fri, 11 Oct 2024 09:31:34 +0200SVGHMI: code cleanup
Edouard Tisserant <edouard@beremiz.fr> [Fri, 11 Oct 2024 09:31:34 +0200] rev 4024
SVGHMI: code cleanup

Mon, 30 Sep 2024 16:21:11 +0200MQTT: Add status global variable MQTT_STATUS_n, one per MQTT client
Edouard Tisserant <edouard@beremiz.fr> [Mon, 30 Sep 2024 16:21:11 +0200] rev 4023
MQTT: Add status global variable MQTT_STATUS_n, one per MQTT client

Thu, 26 Sep 2024 15:28:10 +0200MQTT: strip unsupported types from type choice dropdown, better wrong type detection in build.
Edouard Tisserant <edouard@beremiz.fr> [Thu, 26 Sep 2024 15:28:10 +0200] rev 4022
MQTT: strip unsupported types from type choice dropdown, better wrong type detection in build.

Thu, 26 Sep 2024 09:40:09 +0200MQTT: remove debug prints
Edouard Tisserant <edouard@beremiz.fr> [Thu, 26 Sep 2024 09:40:09 +0200] rev 4021
MQTT: remove debug prints

Wed, 25 Sep 2024 11:10:33 +0200MQTT: add JSON fixed size 1D array support. WIP. Parsing array still broken.
Edouard Tisserant <edouard@beremiz.fr> [Wed, 25 Sep 2024 11:10:33 +0200] rev 4020
MQTT: add JSON fixed size 1D array support. WIP. Parsing array still broken.

Fri, 20 Sep 2024 15:30:22 +0200MQTT: do not convert to UPPERCASE json keys.
Edouard Tisserant <edouard@beremiz.fr> [Fri, 20 Sep 2024 15:30:22 +0200] rev 4019
MQTT: do not convert to UPPERCASE json keys.

Fri, 20 Sep 2024 15:12:53 +0200MQTT: added support for strings in JSON payload only.
Edouard Tisserant <edouard@beremiz.fr> [Fri, 20 Sep 2024 15:12:53 +0200] rev 4018
MQTT: added support for strings in JSON payload only.

Thu, 19 Sep 2024 15:12:45 +0200MQTT: remove accidentally committed debug printfs + cosmetic
Edouard Tisserant <edouard@beremiz.fr> [Thu, 19 Sep 2024 15:12:45 +0200] rev 4017
MQTT: remove accidentally committed debug printfs + cosmetic

Thu, 19 Sep 2024 12:06:53 +0200MQTT: fix invocation of json_scanf (use pointers, not values...)
Edouard Tisserant <edouard@beremiz.fr> [Thu, 19 Sep 2024 12:06:53 +0200] rev 4016
MQTT: fix invocation of json_scanf (use pointers, not values...)

Thu, 19 Sep 2024 12:05:35 +0200MQTT: fix bisection failing when topics start with same substring.
Edouard Tisserant <edouard@beremiz.fr> [Thu, 19 Sep 2024 12:05:35 +0200] rev 4015
MQTT: fix bisection failing when topics start with same substring.

Tue, 17 Sep 2024 11:17:24 +0200MQTT: Update available type choices when data types are changed in the IDE
Edouard Tisserant <edouard@beremiz.fr> [Tue, 17 Sep 2024 11:17:24 +0200] rev 4014
MQTT: Update available type choices when data types are changed in the IDE

Fri, 13 Sep 2024 14:28:07 +0200MQTT: remove standalone MQTT clien generator code.
Edouard Tisserant <edouard@beremiz.fr> [Fri, 13 Sep 2024 14:28:07 +0200] rev 4013
MQTT: remove standalone MQTT clien generator code.

Code was inherited from OPC-UA extension, but not properly maintained.

Fri, 13 Sep 2024 14:26:55 +0200MQTT: add JSON payload corresponding to IEC Structured types
Edouard Tisserant <edouard@beremiz.fr> [Fri, 13 Sep 2024 14:26:55 +0200] rev 4012
MQTT: add JSON payload corresponding to IEC Structured types

- uses https://github.com/cesanta/frozen
- frozen.c is added as a resulting c file in generat_C (fix toolchain_gcc.py as it was breaking dependency checking)
- structured types are converted to C #define, in turn generating json_scanf and json_printf statements

Thu, 05 Sep 2024 15:55:46 +0200MQTT: WIP supporting structured types : do not crash when generating C code if using location with no size
Edouard Tisserant <edouard@beremiz.fr> [Thu, 05 Sep 2024 15:55:46 +0200] rev 4011
MQTT: WIP supporting structured types : do not crash when generating C code if using location with no size

Fri, 30 Aug 2024 15:17:03 +0200MQTT: add dropdown to select type assigned to a topic
Edouard Tisserant <edouard@beremiz.fr> [Fri, 30 Aug 2024 15:17:03 +0200] rev 4010
MQTT: add dropdown to select type assigned to a topic

Fri, 30 Aug 2024 11:54:36 +0200MQTT+IDE: Allow user to associate IEC structure datatype to a topic.
Edouard Tisserant <edouard@beremiz.fr> [Fri, 30 Aug 2024 11:54:36 +0200] rev 4009
MQTT+IDE: Allow user to associate IEC structure datatype to a topic.

Fri, 30 Aug 2024 11:50:23 +0200IDE: allow structures to be located.
Edouard Tisserant <edouard@beremiz.fr> [Fri, 30 Aug 2024 11:50:23 +0200] rev 4008
IDE: allow structures to be located.

Sat, 07 Sep 2024 12:50:57 +0200merge MQTT grafted from python2 branch - untested
Edouard Tisserant <edouard.tisserant@gmail.com> [Sat, 07 Sep 2024 12:50:57 +0200] rev 4007
merge MQTT grafted from python2 branch - untested

Thu, 22 Aug 2024 12:16:45 +0200MQTT: add test projects, to be later included in automated testing.
Edouard Tisserant <edouard@beremiz.fr> [Thu, 22 Aug 2024 12:16:45 +0200] rev 4006
MQTT: add test projects, to be later included in automated testing.

Thu, 22 Aug 2024 12:15:31 +0200MQTT: add SSL support
Edouard Tisserant <edouard@beremiz.fr> [Thu, 22 Aug 2024 12:15:31 +0200] rev 4005
MQTT: add SSL support

Thu, 08 Aug 2024 14:56:13 +0200SVGHMI: cosmetic
Edouard Tisserant <edouard@beremiz.fr> [Thu, 08 Aug 2024 14:56:13 +0200] rev 4004
SVGHMI: cosmetic

Tue, 06 Aug 2024 15:25:57 +0200SVGHMI: Fix watchdog not cleanly restarting browser because not waiting for stop operation to finish before restarting.
Edouard Tisserant <edouard@beremiz.fr> [Tue, 06 Aug 2024 15:25:57 +0200] rev 4003
SVGHMI: Fix watchdog not cleanly restarting browser because not waiting for stop operation to finish before restarting.

Thu, 01 Aug 2024 12:11:11 +0200MQTT: WIP, re-organized disconnection handling, now keep track of connection status and reconnect accordingly.
Edouard Tisserant <edouard@beremiz.fr> [Thu, 01 Aug 2024 12:11:11 +0200] rev 4002
MQTT: WIP, re-organized disconnection handling, now keep track of connection status and reconnect accordingly.

This fixes bug with non-reconnecting to broker when having no published variables.

Thu, 01 Aug 2024 12:09:28 +0200MQTT: link to SSL only when needed.
Edouard Tisserant <edouard@beremiz.fr> [Thu, 01 Aug 2024 12:09:28 +0200] rev 4001
MQTT: link to SSL only when needed.

Wed, 24 Jul 2024 15:14:02 +0200IDE: Fix "Save" toolbar button and file menu entry not appearing when extension makes changes
Edouard Tisserant <edouard@beremiz.fr> [Wed, 24 Jul 2024 15:14:02 +0200] rev 4000
IDE: Fix "Save" toolbar button and file menu entry not appearing when extension makes changes

Tue, 23 Jul 2024 17:05:59 +0200MQTT: WIP fix modified status not being set when adding and modifying topics or attributes.
Edouard Tisserant <edouard@beremiz.fr> [Tue, 23 Jul 2024 17:05:59 +0200] rev 3999
MQTT: WIP fix modified status not being set when adding and modifying topics or attributes.

Fix loading of CSV that was not applying model types, and that not checking conformance either.

Tue, 23 Jul 2024 15:30:04 +0200MQTT: WIP, PLC starts even if MQTT client can't connect broker, and publish+subscribe again when reconnecting.
Edouard Tisserant <edouard@beremiz.fr> [Tue, 23 Jul 2024 15:30:04 +0200] rev 3998
MQTT: WIP, PLC starts even if MQTT client can't connect broker, and publish+subscribe again when reconnecting.

Tue, 23 Jul 2024 11:05:46 +0200MQTT: WIP, destroys paho client during failure handling at init and at cleanup. Use mutex to protect retrieve.
Edouard Tisserant <edouard@beremiz.fr> [Tue, 23 Jul 2024 11:05:46 +0200] rev 3997
MQTT: WIP, destroys paho client during failure handling at init and at cleanup. Use mutex to protect retrieve.

Mon, 22 Jul 2024 16:13:27 +0200MQTT: Implements reconnecting in publish thread in case thread is waken-up but client is disconnected.
Edouard Tisserant <edouard@beremiz.fr> [Mon, 22 Jul 2024 16:13:27 +0200] rev 3996
MQTT: Implements reconnecting in publish thread in case thread is waken-up but client is disconnected.

Note: paho's lostConnection callback got already disabled in previous commit.

Mon, 22 Jul 2024 16:09:12 +0200MQTT: take C part away from python code for readability.
Edouard Tisserant <edouard@beremiz.fr> [Mon, 22 Jul 2024 16:09:12 +0200] rev 3995
MQTT: take C part away from python code for readability.

C lines change a bit because of unnecessary escaping for '\'.

Mon, 22 Jul 2024 12:12:33 +0200MQTT: WIP, prevent crash after disconnect. Disable auto-reconnect on connection lost callback.
Edouard Tisserant <edouard@beremiz.fr> [Mon, 22 Jul 2024 12:12:33 +0200] rev 3994
MQTT: WIP, prevent crash after disconnect. Disable auto-reconnect on connection lost callback.

Thu, 18 Jul 2024 12:05:26 +0200MQTT: Stop publish thread properly on PLC stop
Edouard Tisserant <edouard@beremiz.fr> [Thu, 18 Jul 2024 12:05:26 +0200] rev 3993
MQTT: Stop publish thread properly on PLC stop

Thu, 18 Jul 2024 11:42:08 +0200MQTT: Fix overkill use of wx sizer
Edouard Tisserant <edouard@beremiz.fr> [Thu, 18 Jul 2024 11:42:08 +0200] rev 3992
MQTT: Fix overkill use of wx sizer

Thu, 18 Jul 2024 11:28:38 +0200MQTT: Fix crash when browsing locations
Edouard Tisserant <edouard@beremiz.fr> [Thu, 18 Jul 2024 11:28:38 +0200] rev 3991
MQTT: Fix crash when browsing locations

Wed, 17 Jul 2024 17:02:32 +0200MQTT: WIP. Added handling of received messages (subscriptions)
Edouard Tisserant <edouard@beremiz.fr> [Wed, 17 Jul 2024 17:02:32 +0200] rev 3990
MQTT: WIP. Added handling of received messages (subscriptions)

Dropped perfect hash in favor of bisection
Also fixed indentation (tabs)

Tue, 16 Jul 2024 09:41:45 +0200MQTT: WIP, added publish thread waking-up when published variables change.
Edouard Tisserant <edouard@beremiz.fr> [Tue, 16 Jul 2024 09:41:45 +0200] rev 3989
MQTT: WIP, added publish thread waking-up when published variables change.

Mon, 15 Jul 2024 09:40:11 +0200MQTT: WIP, subscibed topics have no "Retained" attribute.
Edouard Tisserant <edouard@beremiz.fr> [Mon, 15 Jul 2024 09:40:11 +0200] rev 3988
MQTT: WIP, subscibed topics have no "Retained" attribute.

Allow subscribed and published data models to be different, by removing "Retained" column.

Fri, 12 Jul 2024 15:36:17 +0200MQTT: WIP, now publishes initial values at init.
Edouard Tisserant <edouard@beremiz.fr> [Fri, 12 Jul 2024 15:36:17 +0200] rev 3987
MQTT: WIP, now publishes initial values at init.

Fri, 12 Jul 2024 11:24:06 +0200MQTT: WIP, now connects to broker. Added MQTT 3 support and protocol version selection in IDE.
Edouard Tisserant <edouard@beremiz.fr> [Fri, 12 Jul 2024 11:24:06 +0200] rev 3986
MQTT: WIP, now connects to broker. Added MQTT 3 support and protocol version selection in IDE.

Wed, 10 Jul 2024 11:10:05 +0200MQTT: (WIP) Fix OpenSSL linking.
Edouard Tisserant <edouard@beremiz.fr> [Wed, 10 Jul 2024 11:10:05 +0200] rev 3985
MQTT: (WIP) Fix OpenSSL linking.

Tue, 09 Jul 2024 11:46:19 +0200MQTT: still WIP, generated C code builds and link.
Edouard Tisserant <edouard@beremiz.fr> [Tue, 09 Jul 2024 11:46:19 +0200] rev 3984
MQTT: still WIP, generated C code builds and link.

Tue, 09 Jul 2024 11:44:49 +0200Extensions: add optional arguments to ThirdPartyPath
Edouard Tisserant <edouard@beremiz.fr> [Tue, 09 Jul 2024 11:44:49 +0200] rev 3983
Extensions: add optional arguments to ThirdPartyPath

ThirdPartyPath("name", "path1", "path2") will resolve by default into "../name/path1/path2"

Thu, 04 Jul 2024 11:24:04 +0200GCC BUILD: Prevent Memory Error when compiling huge projects.
Edouard Tisserant <edouard@beremiz.fr> [Thu, 04 Jul 2024 11:24:04 +0200] rev 3982
GCC BUILD: Prevent Memory Error when compiling huge projects.

Also deleted dead code.

Wed, 03 Jul 2024 11:44:01 +0200MQTT WIP: intermediate state, added perfect hash to map topic to variables
Edouard Tisserant <edouard@beremiz.fr> [Wed, 03 Jul 2024 11:44:01 +0200] rev 3981
MQTT WIP: intermediate state, added perfect hash to map topic to variables

Fri, 14 Jun 2024 15:56:12 +0200MQTT WIP: intermediate state, implementing MQTT client C code generator.
Edouard Tisserant <edouard@beremiz.fr> [Fri, 14 Jun 2024 15:56:12 +0200] rev 3980
MQTT WIP: intermediate state, implementing MQTT client C code generator.

Wed, 12 Jun 2024 11:45:09 +0200WIP: Add skeleton for MQTT extension based on part of OPC-UA extension.
Edouard Tisserant <edouard@beremiz.fr> [Wed, 12 Jun 2024 11:45:09 +0200] rev 3979
WIP: Add skeleton for MQTT extension based on part of OPC-UA extension.

For now generated code makes no sense but persistently-configurable-C-generating-extension infrastructure is there.

Tue, 20 Aug 2024 01:51:08 +0200Merge remote-tracking branch 'origin/python3' into python3
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 20 Aug 2024 01:51:08 +0200] rev 3978
Merge remote-tracking branch 'origin/python3' into python3

Fri, 16 Aug 2024 16:30:50 +0200C runtime: Fix PLCObject.hpp preventing build.
etisserant <edouard.tisserant@gmail.com> [Fri, 16 Aug 2024 16:30:50 +0200] rev 3977
C runtime: Fix PLCObject.hpp preventing build.

Sat, 17 Aug 2024 18:44:12 +0200IDE: generalize EVT_GRID_CELL_CHANG{ING->ED} (WxPy4)
Edouard Tisserant <edouard.tisserant@gmail.com> [Sat, 17 Aug 2024 18:44:12 +0200] rev 3976
IDE: generalize EVT_GRID_CELL_CHANG{ING->ED} (WxPy4)

Tue, 20 Aug 2024 01:26:58 +0200IDE: hopefully last fix about float type being passed to WxPy4.
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 20 Aug 2024 01:26:58 +0200] rev 3975
IDE: hopefully last fix about float type being passed to WxPy4.

Tue, 20 Aug 2024 01:25:39 +0200IDE: enhance variable forcing contextual menu
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 20 Aug 2024 01:25:39 +0200] rev 3974
IDE: enhance variable forcing contextual menu

Tue, 20 Aug 2024 01:13:14 +0200IDE: fix completion
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 20 Aug 2024 01:13:14 +0200] rev 3973
IDE: fix completion

uses ctrl key on Mac
update internal variable list before listing them
avoid exception if empty list
apply selection when pressing return or enter

Tue, 20 Aug 2024 00:35:00 +0200IDE: Workaround some reported WxPython/MacOS problems.
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 20 Aug 2024 00:35:00 +0200] rev 3972
IDE: Workaround some reported WxPython/MacOS problems.

SetSelection should be used instead of SetStringSelection , and FindString must use case_sensitive=True

Tue, 20 Aug 2024 00:31:45 +0200IDE: Fix search result not showing single occurrences
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 20 Aug 2024 00:31:45 +0200] rev 3971
IDE: Fix search result not showing single occurrences

Sun, 18 Aug 2024 18:23:18 +0200IDE: remove warning if editing location leads to no change
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 18 Aug 2024 18:23:18 +0200] rev 3970
IDE: remove warning if editing location leads to no change

Tue, 20 Aug 2024 00:23:45 +0200IDE: Use 8x8 grid by default
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 20 Aug 2024 00:23:45 +0200] rev 3969
IDE: Use 8x8 grid by default

Tue, 20 Aug 2024 00:20:59 +0200IDE: Fix exception when connecting complex types
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 20 Aug 2024 00:20:59 +0200] rev 3968
IDE: Fix exception when connecting complex types

Tue, 20 Aug 2024 00:02:27 +0200LocalRuntime: no crash if zombie PLC prevents erasing workdir
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 20 Aug 2024 00:02:27 +0200] rev 3967
LocalRuntime: no crash if zombie PLC prevents erasing workdir