Mon, 12 Aug 2019 13:09:55 +0200SVGHMI: added extraction of SVG bounding boxes, obtained from "inkscape -S", and passed to XSLT transform as variable. svghmi
Edouard Tisserant [Mon, 12 Aug 2019 13:09:55 +0200] rev 2756
SVGHMI: added extraction of SVG bounding boxes, obtained from "inkscape -S", and passed to XSLT transform as variable.

Mon, 12 Aug 2019 13:06:11 +0200Allow using docutil.get_inkscape_path() on Linux also. svghmi
Edouard Tisserant [Mon, 12 Aug 2019 13:06:11 +0200] rev 2755
Allow using docutil.get_inkscape_path() on Linux also.

Fri, 09 Aug 2019 12:12:24 +0200SVGHMI: little fixes to make the build go through svghmi
Edouard Tisserant [Fri, 09 Aug 2019 12:12:24 +0200] rev 2754
SVGHMI: little fixes to make the build go through

Fri, 09 Aug 2019 12:11:31 +0200SVGHMI: Added XSLT transformation, Makefile to get XSLT from ysl2 (copy of plcopen/Makefile) and a minimal stylesheet to start with. svghmi
Edouard Tisserant [Fri, 09 Aug 2019 12:11:31 +0200] rev 2753
SVGHMI: Added XSLT transformation, Makefile to get XSLT from ysl2 (copy of plcopen/Makefile) and a minimal stylesheet to start with.

Fri, 09 Aug 2019 12:07:33 +0200Moved XSLT model query python code so that XSLT part can be reused for other transformations (i.e. in SVGHMI) svghmi
Edouard Tisserant [Fri, 09 Aug 2019 12:07:33 +0200] rev 2752
Moved XSLT model query python code so that XSLT part can be reused for other transformations (i.e. in SVGHMI)

Thu, 08 Aug 2019 15:56:17 +0200Complete SVGUI test minimal skeleton so that it builds. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 08 Aug 2019 15:56:17 +0200] rev 2751
Complete SVGUI test minimal skeleton so that it builds.

Wed, 07 Aug 2019 14:18:22 +0200intermediate commit, work in progress svghmi
Edouard Tisserant [Wed, 07 Aug 2019 14:18:22 +0200] rev 2750
intermediate commit, work in progress

Thu, 18 Jul 2019 14:09:33 +0200Use a POU Library's Generate_C to collect all variables in SVGHMI. svghmi
Edouard Tisserant [Thu, 18 Jul 2019 14:09:33 +0200] rev 2749
Use a POU Library's Generate_C to collect all variables in SVGHMI.

Wed, 17 Jul 2019 09:44:44 +0200merged svghmi
Edouard Tisserant [Wed, 17 Jul 2019 09:44:44 +0200] rev 2748
merged

Wed, 17 Jul 2019 09:44:11 +0200Enable svghmi plugin in features, and small fixes to skeleton. svghmi
Edouard Tisserant [Wed, 17 Jul 2019 09:44:11 +0200] rev 2747
Enable svghmi plugin in features, and small fixes to skeleton.

Mon, 15 Jul 2019 09:05:00 +0200Merged default in svghmi svghmi
Edouard Tisserant [Mon, 15 Jul 2019 09:05:00 +0200] rev 2746
Merged default in svghmi

Fri, 12 Jul 2019 11:58:22 +0200Skeleton for svghmi extension svghmi
Edouard Tisserant [Fri, 12 Jul 2019 11:58:22 +0200] rev 2745
Skeleton for svghmi extension

Wed, 30 Jun 2021 15:44:32 +0200IDE: Allow POU Libraries to inject PLC Configurations globals during build.
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 30 Jun 2021 15:44:32 +0200] rev 2744
IDE: Allow POU Libraries to inject PLC Configurations globals during build.

Wed, 30 Jun 2021 16:46:14 +0300WIP: initial setup.
Ivan Tyagov <ivan@nexedi.com> [Wed, 30 Jun 2021 16:46:14 +0300] rev 2743
WIP: initial setup.

Wed, 16 Jun 2021 12:15:02 +0200IDE: Fixed variable traces graphs RingBuffers. Removed an apparently useless wxCallAfter in trend graph that was leading to pydeadobject exception on wxGTK when double-clicking.
Edouard Tisserant [Wed, 16 Jun 2021 12:15:02 +0200] rev 2742
IDE: Fixed variable traces graphs RingBuffers. Removed an apparently useless wxCallAfter in trend graph that was leading to pydeadobject exception on wxGTK when double-clicking.

Mon, 14 Jun 2021 16:48:39 +0200IDE: Cleaned up some useless tests in variable trace data handling code, changed from bare numpy arrays to RingBuffers inorder to avoid RAM outage and crash after long tracing session.
Edouard Tisserant [Mon, 14 Jun 2021 16:48:39 +0200] rev 2741
IDE: Cleaned up some useless tests in variable trace data handling code, changed from bare numpy arrays to RingBuffers inorder to avoid RAM outage and crash after long tracing session.

Fri, 11 Jun 2021 11:56:07 +0200IDE: Log: Prevent crash when display progress on empty log.
Edouard Tisserant [Fri, 11 Jun 2021 11:56:07 +0200] rev 2740
IDE: Log: Prevent crash when display progress on empty log.

Thu, 10 Jun 2021 09:40:05 +0200Copy description when DnD variables from CodeFile CTN to POUs
Edouard Tisserant [Thu, 10 Jun 2021 09:40:05 +0200] rev 2739
Copy description when DnD variables from CodeFile CTN to POUs

Tue, 25 May 2021 15:05:38 +0200Runtime: Fix exception "Worker is disabled" when connecting while PLC runtime is starting.
Edouard Tisserant [Tue, 25 May 2021 15:05:38 +0200] rev 2738
Runtime: Fix exception "Worker is disabled" when connecting while PLC runtime is starting.

Pyro/wamp/UI delegate jobs to Worker, causing race condition if worker isn't already started.
Added a function to ensure that Worker is already created when pyro or UI starts

Mon, 24 May 2021 14:33:54 +0200Finished fixing Wx IDs abuse. There was still some wasted IDs because of wx.NewId calls in many places where it wasn't needed, and those IDs were not re-used. As a consequence Beremiz was making exception crashing after a few hours of intensive use.
Edouard Tisserant [Mon, 24 May 2021 14:33:54 +0200] rev 2737
Finished fixing Wx IDs abuse. There was still some wasted IDs because of wx.NewId calls in many places where it wasn't needed, and those IDs were not re-used. As a consequence Beremiz was making exception crashing after a few hours of intensive use.

Wed, 12 May 2021 11:36:56 +0200Add ThirPartyPath call in util.path module, so that individual extensions don't have to each implement same logic to find dependencies
Edouard Tisserant [Wed, 12 May 2021 11:36:56 +0200] rev 2736
Add ThirPartyPath call in util.path module, so that individual extensions don't have to each implement same logic to find dependencies

Thu, 01 Apr 2021 15:51:24 +0200IDE: Add a shortcut to project "Clean" action : F9
Edouard Tisserant [Thu, 01 Apr 2021 15:51:24 +0200] rev 2735
IDE: Add a shortcut to project "Clean" action : F9

Mon, 29 Mar 2021 15:46:02 +0200Fixed misuse of GridCellEditor in DurationCellEditor, potentially leading to crash on windows.
Edouard Tisserant [Mon, 29 Mar 2021 15:46:02 +0200] rev 2734
Fixed misuse of GridCellEditor in DurationCellEditor, potentially leading to crash on windows.

Tue, 23 Mar 2021 05:08:51 +0100Allow using spin() from ProcessLogger even with no logger given.
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 23 Mar 2021 05:08:51 +0100] rev 2733
Allow using spin() from ProcessLogger even with no logger given.

Wed, 10 Mar 2021 09:59:18 +0100Runtime: Added PostStart methot to PLCObject, called after PLC is started, with all libraries and python object already created, and python extensions "Start" methods being called.
Edouard Tisserant [Wed, 10 Mar 2021 09:59:18 +0100] rev 2732
Runtime: Added PostStart methot to PLCObject, called after PLC is started, with all libraries and python object already created, and python extensions "Start" methods being called.
This is called before python thread processing py_eval blocks starts. Example purpose: attach additional ressource to web services

Tue, 02 Mar 2021 10:11:45 +0100IDE: Fix logging of external process execution time so that it is visible on windows as well.
Edouard Tisserant [Tue, 02 Mar 2021 10:11:45 +0100] rev 2731
IDE: Fix logging of external process execution time so that it is visible on windows as well.

Tue, 02 Mar 2021 09:42:50 +0100IDE: Process Logging : Add annotation in log so that user can see build is still alive and how long external process takes.
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 02 Mar 2021 09:42:50 +0100] rev 2730
IDE: Process Logging : Add annotation in log so that user can see build is still alive and how long external process takes.

Tue, 02 Mar 2021 09:28:44 +0100IDE: Iec2CSettings: Log wasn't available in case of exception when launching iec2c.
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 02 Mar 2021 09:28:44 +0100] rev 2729
IDE: Iec2CSettings: Log wasn't available in case of exception when launching iec2c.

Tue, 02 Mar 2021 09:25:55 +0100IDE: Log: Cosmetic changes, refactoring
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 02 Mar 2021 09:25:55 +0100] rev 2728
IDE: Log: Cosmetic changes, refactoring

Mon, 01 Mar 2021 15:45:13 +0100IDE: Make ST code generation more verbose, since it can be really long in case of big programs, and it is better to let the user know build is still in progress.
Edouard Tisserant [Mon, 01 Mar 2021 15:45:13 +0100] rev 2727
IDE: Make ST code generation more verbose, since it can be really long in case of big programs, and it is better to let the user know build is still in progress.

Sun, 28 Feb 2021 21:45:10 +0100IDE: Fixed log console that was not updating line by line smoothly when building.
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 28 Feb 2021 21:45:10 +0100] rev 2726
IDE: Fixed log console that was not updating line by line smoothly when building.

Fri, 09 Apr 2021 09:45:28 +0200merge
Edouard Tisserant [Fri, 09 Apr 2021 09:45:28 +0200] rev 2725
merge

Tue, 02 Feb 2021 13:47:48 +0100Merge
Tomaz Orac [Tue, 02 Feb 2021 13:47:48 +0100] rev 2724
Merge

Thu, 28 Jan 2021 14:51:16 +0000merge
Mario de Sousa <msousa@fe.up.pt> [Thu, 28 Jan 2021 14:51:16 +0000] rev 2723
merge

Thu, 28 Jan 2021 14:50:26 +0000modbus plugin: add (user accessible) transaction bool flags for servers/slaves; FIX BUG in previous commit affecting RTU slaves.
Mario de Sousa <msousa@fe.up.pt> [Thu, 28 Jan 2021 14:50:26 +0000] rev 2722
modbus plugin: add (user accessible) transaction bool flags for servers/slaves; FIX BUG in previous commit affecting RTU slaves.

Thu, 28 Jan 2021 14:17:40 +0000modbus plugin: add (user accessible) transaction counters for servers/slaves
Mario de Sousa <msousa@fe.up.pt> [Thu, 28 Jan 2021 14:17:40 +0000] rev 2721
modbus plugin: add (user accessible) transaction counters for servers/slaves

Tue, 23 Feb 2021 16:16:12 +0100PLCObject : Ensure that PreStart is executed before starting PLC. Also, make sure that python thread doesn't enter in a start/stop loop when ordered to stop.
Edouard Tisserant [Tue, 23 Feb 2021 16:16:12 +0100] rev 2720
PLCObject : Ensure that PreStart is executed before starting PLC. Also, make sure that python thread doesn't enter in a start/stop loop when ordered to stop.

Mon, 18 Jan 2021 10:59:28 +0100Merge
Edouard Tisserant [Mon, 18 Jan 2021 10:59:28 +0100] rev 2719
Merge

Fri, 25 Dec 2020 17:12:02 +0000merge
Mario de Sousa <msousa@fe.up.pt> [Fri, 25 Dec 2020 17:12:02 +0000] rev 2718
merge

Fri, 25 Dec 2020 17:11:38 +0000modbus plugin: add/fix comments
Mario de Sousa <msousa@fe.up.pt> [Fri, 25 Dec 2020 17:11:38 +0000] rev 2717
modbus plugin: add/fix comments

Mon, 21 Dec 2020 22:35:07 +0000merge
Mario de Sousa <msousa@fe.up.pt> [Mon, 21 Dec 2020 22:35:07 +0000] rev 2716
merge

Mon, 21 Dec 2020 22:32:03 +0000Modbus plugin: fix bug - map BOOL flag onto C u8 (was incorrectly mapped onto u16)
Mario de Sousa <msousa@fe.up.pt> [Mon, 21 Dec 2020 22:32:03 +0000] rev 2715
Modbus plugin: fix bug - map BOOL flag onto C u8 (was incorrectly mapped onto u16)

Mon, 21 Dec 2020 22:26:36 +0000Modbus plugin: map status of MB transaction onto 2 located BYTE vars (instead of a singlw WORD var).
Mario de Sousa <msousa@fe.up.pt> [Mon, 21 Dec 2020 22:26:36 +0000] rev 2714
Modbus plugin: map status of MB transaction onto 2 located BYTE vars (instead of a singlw WORD var).

Mon, 21 Dec 2020 21:15:47 +0000Modbus plugin: provide user programs feedback on current connection status mapped onto a WORD located variable
Mario de Sousa <msousa@fe.up.pt> [Mon, 21 Dec 2020 21:15:47 +0000] rev 2713
Modbus plugin: provide user programs feedback on current connection status mapped onto a WORD located variable

Wed, 13 Jan 2021 10:28:09 +0100Removed harmful assert in ProcessLogger.
Edouard Tisserant [Wed, 13 Jan 2021 10:28:09 +0100] rev 2712
Removed harmful assert in ProcessLogger.

ProcessLogger was having an assert in constructor when missing logger, leading to systematic exception when testing options accepted by compiler. This exception was silenced in ProjectController, and then MatIEC was always called without options.

Tue, 22 Dec 2020 18:05:05 +0100Fix missing import, consequence of bad resolution of conflicting hg graft of f0a822ef9fa0 into d15a997859b1
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 22 Dec 2020 18:05:05 +0100] rev 2711
Fix missing import, consequence of bad resolution of conflicting hg graft of f0a822ef9fa0 into d15a997859b1

Tue, 14 Jan 2020 11:04:18 +0100plc_debug.c/var_acces.c : whitespace cleanup and other cosmetic changes
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 14 Jan 2020 11:04:18 +0100] rev 2710
plc_debug.c/var_acces.c : whitespace cleanup and other cosmetic changes

Fri, 03 Jul 2020 14:02:04 +0200Prevent global python_poll blocks to be created when accidentally adding content to C-File OnChange column.
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 03 Jul 2020 14:02:04 +0200] rev 2709
Prevent global python_poll blocks to be created when accidentally adding content to C-File OnChange column.

Mon, 11 May 2020 11:10:38 +0200DEBUG: (IDE side) fixed wrong implementation of anti-rapid-fire leading to systematic delay in subscribing
Edouard Tisserant [Mon, 11 May 2020 11:10:38 +0200] rev 2708
DEBUG: (IDE side) fixed wrong implementation of anti-rapid-fire leading to systematic delay in subscribing

Tue, 11 Feb 2020 13:56:48 +0100XSLTransform.py: added get_error_log()
Edouard Tisserant [Tue, 11 Feb 2020 13:56:48 +0100] rev 2707
XSLTransform.py: added get_error_log()

Mon, 31 Aug 2020 13:54:08 +0200Attempt to workaround problem reported about empty plc.xml after unrelated crash. Now, if etree model is corrupted in a way tostring() would generate an empty string, exception prevents saving.
Edouard Tisserant [Mon, 31 Aug 2020 13:54:08 +0200] rev 2706
Attempt to workaround problem reported about empty plc.xml after unrelated crash. Now, if etree model is corrupted in a way tostring() would generate an empty string, exception prevents saving.

Thu, 03 Sep 2020 11:16:08 +0200docsvg.py : Better error message when inkscape is not installed.
Edouard Tisserant [Thu, 03 Sep 2020 11:16:08 +0200] rev 2705
docsvg.py : Better error message when inkscape is not installed.

Sat, 04 Apr 2020 09:41:32 +0200Fix unmatched "Courier" font for monospace fonts on latest ubuntu 20.04. Selected "FreeMono" instead, present since at least 18.04
Edouard Tisserant <edouard.tisserant@gmail.com> [Sat, 04 Apr 2020 09:41:32 +0200] rev 2704
Fix unmatched "Courier" font for monospace fonts on latest ubuntu 20.04. Selected "FreeMono" instead, present since at least 18.04

Mon, 13 Jul 2020 13:56:42 +0200Python Runtime: order of execution of extension's init() and cleanup() now reflects order of appearance of extensions in configuration tree.
Edouard Tisserant [Mon, 13 Jul 2020 13:56:42 +0200] rev 2703
Python Runtime: order of execution of extension's init() and cleanup() now reflects order of appearance of extensions in configuration tree.

Tue, 22 Dec 2020 14:53:15 +0100Runtime: change PLCObject 'BlobAsFile' method to allow customization by overriding
Edouard Tisserant [Tue, 22 Dec 2020 14:53:15 +0100] rev 2702
Runtime: change PLCObject 'BlobAsFile' method to allow customization by overriding

Mon, 21 Dec 2020 11:10:27 +0100WebInterface: better wording for wiping PLC content: "Repair"
Edouard Tisserant [Mon, 21 Dec 2020 11:10:27 +0100] rev 2701
WebInterface: better wording for wiping PLC content: "Repair"

Fri, 18 Dec 2020 11:50:28 +0100runtime: added restart/reset button in web settings. Accidentaly fixed web settings logging feature.
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 18 Dec 2020 11:50:28 +0100] rev 2700
runtime: added restart/reset button in web settings. Accidentaly fixed web settings logging feature.

Thu, 10 Dec 2020 15:48:15 +0100Add a little test to see OnChange's .count .first .last in action
Edouard Tisserant [Thu, 10 Dec 2020 15:48:15 +0100] rev 2699
Add a little test to see OnChange's .count .first .last in action

Thu, 10 Dec 2020 14:54:42 +0100Fixed "Onchange" object added in previous commit
Edouard Tisserant [Thu, 10 Dec 2020 14:54:42 +0100] rev 2698
Fixed "Onchange" object added in previous commit

Thu, 10 Dec 2020 11:37:27 +0100Python Safe Globals now have more reliable triggering of OnChange call. Added "Onchange" object to accessible runtime variables that let user python code see count of changes and first and last values.
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 10 Dec 2020 11:37:27 +0100] rev 2697
Python Safe Globals now have more reliable triggering of OnChange call. Added "Onchange" object to accessible runtime variables that let user python code see count of changes and first and last values.

Fri, 20 Nov 2020 11:17:40 +0100Project tree: avoid flickering and glitches in notebook when selecting some still not opened ConfigTreeNode
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 20 Nov 2020 11:17:40 +0100] rev 2696
Project tree: avoid flickering and glitches in notebook when selecting some still not opened ConfigTreeNode

Wed, 18 Nov 2020 23:06:16 +0100Project tree: Clicking on ConfigTreeNode should have same behaviour as for POUS and other IEC types : simple click to select and double click to open.
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 18 Nov 2020 23:06:16 +0100] rev 2695
Project tree: Clicking on ConfigTreeNode should have same behaviour as for POUS and other IEC types : simple click to select and double click to open.

Wed, 18 Nov 2020 10:15:44 +0100py_ext: better handling of coma separated OnChange attribute for python safe global variables.
Edouard Tisserant [Wed, 18 Nov 2020 10:15:44 +0100] rev 2694
py_ext: better handling of coma separated OnChange attribute for python safe global variables.

Mon, 02 Nov 2020 10:56:09 +0100Allow customization of generated py_ext OnChange calls, by adding a static method to PythonFileCTNMixin that can the be later hot patched.
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 02 Nov 2020 10:56:09 +0100] rev 2693
Allow customization of generated py_ext OnChange calls, by adding a static method to PythonFileCTNMixin that can the be later hot patched.

Tue, 20 Oct 2020 00:23:52 +0200PY_EXT: OnChange is now a coma separated list of callables. Updated tests/python accordingly.
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 20 Oct 2020 00:23:52 +0200] rev 2692
PY_EXT: OnChange is now a coma separated list of callables. Updated tests/python accordingly.

Tue, 15 Sep 2020 13:57:06 +0200Modbus: fixed typo in ctype typing.
Edouard Tisserant [Tue, 15 Sep 2020 13:57:06 +0200] rev 2691
Modbus: fixed typo in ctype typing.

Fri, 11 Sep 2020 13:46:41 +0200MODBUS: Fix saving of websettings.
Edouard Tisserant [Fri, 11 Sep 2020 13:46:41 +0200] rev 2690
MODBUS: Fix saving of websettings.

Thu, 10 Sep 2020 16:08:26 +0200Runtime/PLCObject : move call to PreStartPLC right after call to the "start" method of all python extensions, and then just before the start of the python loop executing python_* blocks.
Edouard Tisserant [Thu, 10 Sep 2020 16:08:26 +0200] rev 2689
Runtime/PLCObject : move call to PreStartPLC right after call to the "start" method of all python extensions, and then just before the start of the python loop executing python_* blocks.

Thu, 13 Aug 2020 19:00:38 +0100Modbus plugin: reformat code, and add comment.
Mario de Sousa <msousa@fe.up.pt> [Thu, 13 Aug 2020 19:00:38 +0100] rev 2688
Modbus plugin: reformat code, and add comment.

Thu, 13 Aug 2020 18:42:02 +0100Modbus plugin: fix runtime periodic timer (don't use POSIX timer)
Mario de Sousa <msousa@fe.up.pt> [Thu, 13 Aug 2020 18:42:02 +0100] rev 2687
Modbus plugin: fix runtime periodic timer (don't use POSIX timer)

Wed, 01 Jul 2020 10:36:20 +0200Modbus and Bacnet websettings : Rename variables and functions to avoid name collisions.
Edouard Tisserant [Wed, 01 Jul 2020 10:36:20 +0200] rev 2686
Modbus and Bacnet websettings : Rename variables and functions to avoid name collisions.

Websettings for modbus and bacnet are now passed to runtime as python files loaded (execfile) at init of PLCObject with the same globals.
Because if this, same names used in previously different modules now colide.

Mon, 29 Jun 2020 14:38:04 +0200Modbus: fix strange side effect of re-use of condition variables or mutex with Xenomai : without bzero of the associated types, mutex keeps locked.
Edouard Tisserant [Mon, 29 Jun 2020 14:38:04 +0200] rev 2685
Modbus: fix strange side effect of re-use of condition variables or mutex with Xenomai : without bzero of the associated types, mutex keeps locked.

Wed, 24 Jun 2020 14:38:11 +0200Modbus: fix client timer invalid arguments.
Edouard Tisserant [Wed, 24 Jun 2020 14:38:11 +0200] rev 2684
Modbus: fix client timer invalid arguments.

Tue, 23 Jun 2020 13:50:21 +0200Modbus add a timer thread, and switch timer to SIGEV_THREAD_ID to follow xenomai posix skin restrictions.
Edouard Tisserant [Tue, 23 Jun 2020 13:50:21 +0200] rev 2683
Modbus add a timer thread, and switch timer to SIGEV_THREAD_ID to follow xenomai posix skin restrictions.

Fri, 19 Jun 2020 11:07:25 +0200Runtime: Fix typo in PLCObject leading to exception when reporting failure.
Edouard Tisserant [Fri, 19 Jun 2020 11:07:25 +0200] rev 2682
Runtime: Fix typo in PLCObject leading to exception when reporting failure.

Thu, 18 Jun 2020 14:18:16 +0200Py_ext: use non-derived type when generating C code for handling Python PLC globals.
Edouard Tisserant [Thu, 18 Jun 2020 14:18:16 +0200] rev 2681
Py_ext: use non-derived type when generating C code for handling Python PLC globals.

Wed, 17 Jun 2020 14:32:55 +0200tests/python : add some STRING PLC Python globals with OnChange.
Edouard Tisserant [Wed, 17 Jun 2020 14:32:55 +0200] rev 2680
tests/python : add some STRING PLC Python globals with OnChange.

Wed, 17 Jun 2020 14:30:55 +0200Runtime: STRING type for Python PLC Globals was making problem with strings, since generated code wasn't doing comparison properly.
Edouard Tisserant [Wed, 17 Jun 2020 14:30:55 +0200] rev 2679
Runtime: STRING type for Python PLC Globals was making problem with strings, since generated code wasn't doing comparison properly.

Tue, 16 Jun 2020 15:53:52 +0200Merge
Tomaz Orac [Tue, 16 Jun 2020 15:53:52 +0200] rev 2678
Merge

Tue, 16 Jun 2020 11:12:36 +0200Modbus: more comments to remember some necessary changes.
Edouard Tisserant [Tue, 16 Jun 2020 11:12:36 +0200] rev 2677
Modbus: more comments to remember some necessary changes.

Tue, 16 Jun 2020 10:16:25 +0200Modbus/BACnet : add some comments so that we don't forget some pending optimization.
Edouard Tisserant [Tue, 16 Jun 2020 10:16:25 +0200] rev 2676
Modbus/BACnet : add some comments so that we don't forget some pending optimization.

Tue, 16 Jun 2020 10:12:21 +0200Modbus: Delete stored configuration when identical to default configuration.
Edouard Tisserant [Tue, 16 Jun 2020 10:12:21 +0200] rev 2675
Modbus: Delete stored configuration when identical to default configuration.

Mon, 15 Jun 2020 14:34:00 +0200BACnet: prevent saving configuration that is same as default, delete it if so.
Edouard Tisserant [Mon, 15 Jun 2020 14:34:00 +0200] rev 2674
BACnet: prevent saving configuration that is same as default, delete it if so.

Mon, 15 Jun 2020 14:29:41 +0200BACnet and Modbus : fix configuration storage directory
Edouard Tisserant [Mon, 15 Jun 2020 14:29:41 +0200] rev 2673
BACnet and Modbus : fix configuration storage directory

Mon, 15 Jun 2020 14:27:58 +0200Runtime extrension web settings: distinguish display string and token when calling NS.newExtensionSetting, thus allowing meaningful name to be displayed instead of an id.
Edouard Tisserant [Mon, 15 Jun 2020 14:27:58 +0200] rev 2672
Runtime extrension web settings: distinguish display string and token when calling NS.newExtensionSetting, thus allowing meaningful name to be displayed instead of an id.

Fri, 12 Jun 2020 14:40:50 +0200Debug : when BEREMIZ_DEBUG file exist, display all commands issued in console.
Edouard Tisserant [Fri, 12 Jun 2020 14:40:50 +0200] rev 2671
Debug : when BEREMIZ_DEBUG file exist, display all commands issued in console.

Fri, 12 Jun 2020 14:39:32 +0200BACnet and Modbus : Simpler configuration management. NevowServer.py now allows each extension to create and delete multiple configuration forms in the setting page, deprecating delSettings and addAfter.
Edouard Tisserant [Fri, 12 Jun 2020 14:39:32 +0200] rev 2670
BACnet and Modbus : Simpler configuration management. NevowServer.py now allows each extension to create and delete multiple configuration forms in the setting page, deprecating delSettings and addAfter.

Fri, 12 Jun 2020 10:30:23 +0200BACnet and Modbus: Remove additional loading and unloading, use the one already in place for extensions.
Edouard Tisserant [Fri, 12 Jun 2020 10:30:23 +0200] rev 2669
BACnet and Modbus: Remove additional loading and unloading, use the one already in place for extensions.

Sun, 07 Jun 2020 23:47:32 +0100merge
Mario de Sousa <msousa@fe.up.pt> [Sun, 07 Jun 2020 23:47:32 +0100] rev 2668
merge

Sun, 07 Jun 2020 23:46:16 +0100Bacnet plugin web configuration: strip leading and trailing spaces for net. interface and port numb.
Mario de Sousa <msousa@fe.up.pt> [Sun, 07 Jun 2020 23:46:16 +0100] rev 2667
Bacnet plugin web configuration: strip leading and trailing spaces for net. interface and port numb.

Sun, 07 Jun 2020 23:38:20 +0100Modbus plugin, web interface: strip leading and trailing spaces from string parameters
Mario de Sousa <msousa@fe.up.pt> [Sun, 07 Jun 2020 23:38:20 +0100] rev 2666
Modbus plugin, web interface: strip leading and trailing spaces from string parameters

Sun, 07 Jun 2020 22:32:24 +0100Modbus plugin web interface: show the keyword "#ANY#" on TCP servers
Mario de Sousa <msousa@fe.up.pt> [Sun, 07 Jun 2020 22:32:24 +0100] rev 2665
Modbus plugin web interface: show the keyword "#ANY#" on TCP servers

Sun, 07 Jun 2020 19:33:32 +0100Modbus plugin: fix bug: was checking user configuration against wrong limits
Mario de Sousa <msousa@fe.up.pt> [Sun, 07 Jun 2020 19:33:32 +0100] rev 2664
Modbus plugin: fix bug: was checking user configuration against wrong limits

Sun, 07 Jun 2020 18:34:32 +0100Modbus plugin: fix algorithm detecting Modbus TCP servers using the same IP port on the same network interface
Mario de Sousa <msousa@fe.up.pt> [Sun, 07 Jun 2020 18:34:32 +0100] rev 2663
Modbus plugin: fix algorithm detecting Modbus TCP servers using the same IP port on the same network interface

Sun, 07 Jun 2020 12:28:21 +0100Modbus plugin: check for duplicate "Configuration_Name"
Mario de Sousa <msousa@fe.up.pt> [Sun, 07 Jun 2020 12:28:21 +0100] rev 2662
Modbus plugin: check for duplicate "Configuration_Name"

Sat, 06 Jun 2020 08:51:32 +0100add comment
Mario de Sousa <msousa@fe.up.pt> [Sat, 06 Jun 2020 08:51:32 +0100] rev 2661
add comment

Sat, 06 Jun 2020 08:50:36 +0100add comment
Mario de Sousa <msousa@fe.up.pt> [Sat, 06 Jun 2020 08:50:36 +0100] rev 2660
add comment

Sat, 06 Jun 2020 08:43:41 +0100merge
Mario de Sousa <msousa@fe.up.pt> [Sat, 06 Jun 2020 08:43:41 +0100] rev 2659
merge

Sat, 06 Jun 2020 07:34:02 +0100Modbus plugin web configuration: fix comments, and delete un-used code
Mario de Sousa <msousa@fe.up.pt> [Sat, 06 Jun 2020 07:34:02 +0100] rev 2658
Modbus plugin web configuration: fix comments, and delete un-used code

Sat, 06 Jun 2020 07:24:42 +0100Modbus plugin web configuration: use drop down choices for baud, parity and stop bits.
Mario de Sousa <msousa@fe.up.pt> [Sat, 06 Jun 2020 07:24:42 +0100] rev 2657
Modbus plugin web configuration: use drop down choices for baud, parity and stop bits.

Fri, 05 Jun 2020 18:02:12 +0100Modbus plugin web configuration: save node type and addr type to persistant storage
Mario de Sousa <msousa@fe.up.pt> [Fri, 05 Jun 2020 18:02:12 +0100] rev 2656
Modbus plugin web configuration: save node type and addr type to persistant storage

Mon, 01 Jun 2020 14:11:22 +0100Add web extension: configure Modbus Server plugin parameters
Mario de Sousa <msousa@fe.up.pt> [Mon, 01 Jun 2020 14:11:22 +0100] rev 2655
Add web extension: configure Modbus Server plugin parameters

Mon, 01 Jun 2020 08:54:26 +0100Add web extension: configure Modbus plugin parameters (currently only supports Modbus clients)
Mario de Sousa <msousa@fe.up.pt> [Mon, 01 Jun 2020 08:54:26 +0100] rev 2654
Add web extension: configure Modbus plugin parameters (currently only supports Modbus clients)

Tue, 02 Jun 2020 13:37:34 +0200Runtime: create .md5 file at the end of all transfered files being written to disk, so that it presence indicates completeness of transfer.
Edouard Tisserant [Tue, 02 Jun 2020 13:37:34 +0200] rev 2653
Runtime: create .md5 file at the end of all transfered files being written to disk, so that it presence indicates completeness of transfer.

Tue, 02 Jun 2020 11:34:50 +0200IDE: Main toolbar : Show repair button also in stop mode. Move repair button after disconnect button.
Edouard Tisserant [Tue, 02 Jun 2020 11:34:50 +0200] rev 2652
IDE: Main toolbar : Show repair button also in stop mode. Move repair button after disconnect button.

Mon, 01 Jun 2020 14:47:31 +0200Runtime: fsync() files when transfering them, to prebent data loss when poweroff soon after programming. Fixed variable naming as a side effect.
Edouard Tisserant [Mon, 01 Jun 2020 14:47:31 +0200] rev 2651
Runtime: fsync() files when transfering them, to prebent data loss when poweroff soon after programming. Fixed variable naming as a side effect.

Thu, 28 May 2020 11:16:59 +0100merge
Mario de Sousa <msousa@fe.up.pt> [Thu, 28 May 2020 11:16:59 +0100] rev 2650
merge

Thu, 28 May 2020 11:15:22 +0100BACnet plugin: Add web interface for online parameter configuration
Mario de Sousa <msousa@fe.up.pt> [Thu, 28 May 2020 11:15:22 +0100] rev 2649
BACnet plugin: Add web interface for online parameter configuration

Thu, 28 May 2020 11:01:42 +0100modbus_plugin: generate nicer error message, instead of a traceback
Mario de Sousa <msousa@fe.up.pt> [Thu, 28 May 2020 11:01:42 +0100] rev 2648
modbus_plugin: generate nicer error message, instead of a traceback

Thu, 28 May 2020 10:54:48 +0100Modbus plugin: Add "exec. req. flag" and "write on change" features
Mario de Sousa <msousa@fe.up.pt> [Thu, 28 May 2020 10:54:48 +0100] rev 2647
Modbus plugin: Add "exec. req. flag" and "write on change" features

Thu, 28 May 2020 11:38:09 +0200PLCObject : reorganize code in StartPLC(), add a PreStartPLC() empty method, to be overloaded by runtime extensions.
Edouard Tisserant [Thu, 28 May 2020 11:38:09 +0200] rev 2646
PLCObject : reorganize code in StartPLC(), add a PreStartPLC() empty method, to be overloaded by runtime extensions.

Tue, 26 May 2020 09:58:20 +0200Solve import order problem when POULibrary imports ConfigTreeNode because of UserAddressedException. Now UserAddressedException is declared in POULibrary.py, as a quick and dirty fix, but some independant module should be created for beremiz exceptions in general.
Edouard Tisserant [Tue, 26 May 2020 09:58:20 +0200] rev 2645
Solve import order problem when POULibrary imports ConfigTreeNode because of UserAddressedException. Now UserAddressedException is declared in POULibrary.py, as a quick and dirty fix, but some independant module should be created for beremiz exceptions in general.

Wed, 18 Dec 2019 13:31:22 +0100Add --on-plc-start --on-plc-stop and --status-change to runtime command line, calling given command respectively on start stop or any event. Command line string is python formated (to eventually include status with {}) before being split (supports quoted strings) and passed to Popen for non-blocking execution.
Edouard Tisserant [Wed, 18 Dec 2019 13:31:22 +0100] rev 2644
Add --on-plc-start --on-plc-stop and --status-change to runtime command line, calling given command respectively on start stop or any event. Command line string is python formated (to eventually include status with {}) before being split (supports quoted strings) and passed to Popen for non-blocking execution.

Mon, 25 Nov 2019 08:10:45 +0100Etherlab : Merged 2014-2018 changes from jblee and others
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 25 Nov 2019 08:10:45 +0100] rev 2643
Etherlab : Merged 2014-2018 changes from jblee and others

Mon, 25 Nov 2019 08:26:55 +0100Close branch ethercat_from_kosmos ethercat_from_kosmos
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 25 Nov 2019 08:26:55 +0100] rev 2642
Close branch ethercat_from_kosmos

Wed, 20 Nov 2019 16:57:15 +0100EtherCat master plugin : commit changes recovered from KOSMOS 2018 installer, unkown author(s). ethercat_from_kosmos
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 20 Nov 2019 16:57:15 +0100] rev 2641
EtherCat master plugin : commit changes recovered from KOSMOS 2018 installer, unkown author(s).

Wed, 13 Nov 2019 11:21:04 +0100Add FatalError() method to ConfigTreeNode.
Edouard Tisserant [Wed, 13 Nov 2019 11:21:04 +0100] rev 2640
Add FatalError() method to ConfigTreeNode.
Extensions can report error addressed to user, without a traceback.

Thu, 24 Oct 2019 11:20:04 +0200Fixed one more sequel of marking temporary variables created while generating ST code out of FBD
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 24 Oct 2019 11:20:04 +0200] rev 2639
Fixed one more sequel of marking temporary variables created while generating ST code out of FBD

Wed, 09 Oct 2019 09:04:35 +0200Changed yslt_noindent.yml2 again
Edouard Tisserant [Wed, 09 Oct 2019 09:04:35 +0200] rev 2638
Changed yslt_noindent.yml2 again

Wed, 25 Sep 2019 08:53:27 +0200Non significant changes in generated xslt, side effect of changes in yslt_noindent.yml2
Edouard Tisserant [Wed, 25 Sep 2019 08:53:27 +0200] rev 2637
Non significant changes in generated xslt, side effect of changes in yslt_noindent.yml2