2022-11-09silence compile warnings python3
GP Orcullo <kinsamanka@gmail.com> [Wed, 09 Nov 2022 22:17:13 +0800] rev 3779
silence compile warnings

2022-11-09Preliminary OSX support python3
GP Orcullo <kinsamanka@gmail.com> [Wed, 09 Nov 2022 17:29:59 +0800] rev 3778
Preliminary OSX support

2022-11-09pythonw is used on OSX python3
GP Orcullo <kinsamanka@gmail.com> [Wed, 09 Nov 2022 10:59:00 +0800] rev 3777
pythonw is used on OSX

2022-10-30switched to Pyro5 python3
GP Orcullo <kinsamanka@gmail.com> [Sun, 30 Oct 2022 13:20:58 +0800] rev 3776
switched to Pyro5

TODO: add ssl support, WAMP

2022-10-20Add PLC stop command python3
GP Orcullo <kinsamanka@gmail.com> [Thu, 20 Oct 2022 19:30:23 +0800] rev 3775
Add PLC stop command

2022-11-07wx: replaced deprecated class python3
GP Orcullo <kinsamanka@gmail.com> [Mon, 07 Nov 2022 17:32:56 +0800] rev 3774
wx: replaced deprecated class

2022-11-01wx fixes python3
GP Orcullo <kinsamanka@gmail.com> [Tue, 01 Nov 2022 14:23:47 +0800] rev 3773
wx fixes

2022-11-01str encoding fixes python3
GP Orcullo <kinsamanka@gmail.com> [Tue, 01 Nov 2022 14:21:16 +0800] rev 3772
str encoding fixes

2022-11-01ctypes fixes python3
GP Orcullo <kinsamanka@gmail.com> [Tue, 01 Nov 2022 14:19:23 +0800] rev 3771
ctypes fixes

2022-10-31fixed missing import python3
GP Orcullo <kinsamanka@gmail.com> [Mon, 31 Oct 2022 18:21:09 +0800] rev 3770
fixed missing import

2022-10-31set executionOrderId default value to 0 python3
GP Orcullo <kinsamanka@gmail.com> [Mon, 31 Oct 2022 17:49:28 +0800] rev 3769
set executionOrderId default value to 0

2022-10-31replaced depreciated function python3
GP Orcullo <kinsamanka@gmail.com> [Mon, 31 Oct 2022 14:48:25 +0800] rev 3768
replaced depreciated function

cmp is not used for sorting

2022-10-29upgrade fake_wx python3
GP Orcullo <kinsamanka@gmail.com> [Sat, 29 Oct 2022 17:07:41 +0800] rev 3767
upgrade fake_wx

2022-10-28Update to wx.NewIdRef() python3
GP Orcullo <kinsamanka@gmail.com> [Fri, 28 Oct 2022 20:04:12 +0800] rev 3766
Update to wx.NewIdRef()

2022-10-28fix for gc errors on shutdown python3
GP Orcullo <kinsamanka@gmail.com> [Fri, 28 Oct 2022 19:39:17 +0800] rev 3765
fix for gc errors on shutdown

2022-10-28wx fixes for controls python3
GP Orcullo <kinsamanka@gmail.com> [Fri, 28 Oct 2022 18:59:04 +0800] rev 3764
wx fixes for controls

2022-10-28Fix: wx._core.wxAssertionError: C++ assertion "CanBeToggled()" failed python3
GP Orcullo <kinsamanka@gmail.com> [Fri, 28 Oct 2022 18:54:33 +0800] rev 3763
Fix: wx._core.wxAssertionError: C++ assertion "CanBeToggled()" failed

2022-10-28fix - TypeError: unhashable type: 'Colour' python3
GP Orcullo <kinsamanka@gmail.com> [Fri, 28 Oct 2022 17:42:47 +0800] rev 3762
fix - TypeError: unhashable type: 'Colour'

2022-10-28xmlclass.py: fix AttributeError python3
GP Orcullo <kinsamanka@gmail.com> [Fri, 28 Oct 2022 17:26:50 +0800] rev 3761
xmlclass.py: fix AttributeError

2022-10-28AbsDir fix python3
GP Orcullo <kinsamanka@gmail.com> [Fri, 28 Oct 2022 17:08:27 +0800] rev 3760
AbsDir fix

2022-10-28convert sort and cmp functions to Python3 python3
GP Orcullo <kinsamanka@gmail.com> [Fri, 28 Oct 2022 17:01:10 +0800] rev 3759
convert sort and cmp functions to Python3

2022-10-28switch to pickle from cPickle python3
GP Orcullo <kinsamanka@gmail.com> [Fri, 28 Oct 2022 15:19:24 +0800] rev 3758
switch to pickle from cPickle

2022-10-28fix dynamic module loading python3
GP Orcullo <kinsamanka@gmail.com> [Fri, 28 Oct 2022 14:58:25 +0800] rev 3757
fix dynamic module loading

2022-10-28fix ctypes encoding python3
GP Orcullo <kinsamanka@gmail.com> [Fri, 28 Oct 2022 14:56:07 +0800] rev 3756
fix ctypes encoding

2022-10-28fix string encoding python3
GP Orcullo <kinsamanka@gmail.com> [Fri, 28 Oct 2022 14:53:23 +0800] rev 3755
fix string encoding

2022-10-28updated click api python3
GP Orcullo <kinsamanka@gmail.com> [Fri, 28 Oct 2022 14:26:17 +0800] rev 3754
updated click api

2022-10-28remove six.reraise python3
GP Orcullo <kinsamanka@gmail.com> [Fri, 28 Oct 2022 15:56:01 +0800] rev 3753
remove six.reraise

2022-10-28removed Python2 modules python3
GP Orcullo <kinsamanka@gmail.com> [Fri, 28 Oct 2022 14:07:13 +0800] rev 3752
removed Python2 modules

2022-10-28fixed plcopen imports python3
GP Orcullo <kinsamanka@gmail.com> [Fri, 28 Oct 2022 13:06:52 +0800] rev 3751
fixed plcopen imports

2022-10-28automated conversion using 2to3-3.9 tool python3
GP Orcullo <kinsamanka@gmail.com> [Fri, 28 Oct 2022 12:39:15 +0800] rev 3750
automated conversion using 2to3-3.9 tool

cmd used: 2to3-3.9 -w <file>

2023-03-27Tests: Add preliminary IEC-61131 language test, to be continued. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 27 Mar 2023 10:19:14 +0200] rev 3749
Tests: Add preliminary IEC-61131 language test, to be continued.

Test sets BEREMIZ_TEST_CYCLES in order to speed-up TON duration test.

2023-03-27Tests: Add time emulation feature for tests with BEREMIZ_TEST_CYCLES CFLAG. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 27 Mar 2023 10:12:20 +0200] rev 3748
Tests: Add time emulation feature for tests with BEREMIZ_TEST_CYCLES CFLAG.

Adding BEREMIZ_TEST_CYCLES=1000 in a project's CFLAGS will:
- run 1000 cycles with no pause
- emulate time flowing normaly for PLC code
- exit PLC thread

This allows:
- testing standard library blocks that deal with time without having to wait
- unit testing and code coverage with POUs that uses time

2023-03-11IDE: fix exception when re-opening previously closed tab wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 12 Mar 2023 00:55:19 +0100] rev 3747
IDE: fix exception when re-opening previously closed tab

Same as commit with same message, this time for tabs that are not POUs editors.

2023-03-11IDE: fix again ruberband with gtk3. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 12 Mar 2023 00:51:53 +0100] rev 3746
IDE: fix again ruberband with gtk3.

DC logical functions are now disabled when using GTK3.
Apparently using XOR was still having an effect.
Use regular black pen with no logical funciton instead.

2023-03-10Merged from default wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 10 Mar 2023 13:00:31 +0100] rev 3745
Merged from default

2023-03-10merged
Edouard Tisserant [Fri, 10 Mar 2023 09:13:29 +0100] rev 3744
merged

2023-03-07Modbus web configuration: add check for valid delay and period parameters
Mario de Sousa <msousa@fe.up.pt> [Tue, 07 Mar 2023 09:00:33 +0000] rev 3743
Modbus web configuration: add check for valid delay and period parameters

2023-03-08IDE: Fix missing highlighted element in diagrams when using GTK3 wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 08 Mar 2023 23:18:41 +0100] rev 3742
IDE: Fix missing highlighted element in diagrams when using GTK3

- wx's logical function does not work on gtk3, and highlighting relies on it
- skipping logical funciion at all "works" but this now makes highlight opaque
- no easy fix for highlight transparency since emulated with AND Wx logical function
+ added other highlight related cosmetic fix.

2023-03-03Merged default in wxPython4 branch wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 03 Mar 2023 19:20:49 +0100] rev 3741
Merged default in wxPython4 branch

2023-03-01Linux runtime: overrun detection for real-time timers and for plc execution.
Edouard Tisserant [Wed, 01 Mar 2023 10:54:54 +0100] rev 3740
Linux runtime: overrun detection for real-time timers and for plc execution.

If real-time timer wakes-up PLC thread too late (10% over period), then
warning is logged.

If PLC code (IO retreive, execution, IO publish) takes longer than requested
PLC execution cycle, then warning is logged, and CPU hoogging is mitigated
by delaying next PLC execution a few cylces more until having at least
1ms minimal idle time.

2023-03-03Fix typo in toolchain_gcc.py : LDLAGS -> LDFLAGS wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 03 Mar 2023 09:47:39 +0100] rev 3739
Fix typo in toolchain_gcc.py : LDLAGS -> LDFLAGS

2023-02-28Merged from default wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 28 Feb 2023 15:08:43 +0100] rev 3738
Merged from default

2023-02-28Merge.
Edouard Tisserant [Tue, 28 Feb 2023 09:39:51 +0100] rev 3737
Merge.

2023-02-28SVGHMI: add two more simple widgets to default widget library
Edouard Tisserant [Tue, 28 Feb 2023 09:36:08 +0100] rev 3736
SVGHMI: add two more simple widgets to default widget library

2023-02-28Cosmetic fix in plc_debug.c template
Edouard Tisserant [Tue, 28 Feb 2023 09:10:40 +0100] rev 3735
Cosmetic fix in plc_debug.c template

2023-02-27Merge.
Tomaz Orac [Mon, 27 Feb 2023 13:47:36 +0100] rev 3734
Merge.

2023-02-19Modbus plugin: add optional delay between two consecutive modbus requests sent by master/client
Mario de Sousa <msousa@fe.up.pt> [Sun, 19 Feb 2023 08:37:27 +0000] rev 3733
Modbus plugin: add optional delay between two consecutive modbus requests sent by master/client

2023-02-21Runtime: Add RealTime checkbox in Linux target options to enable PREEMPT_RT scheduling.
Edouard Tisserant [Tue, 21 Feb 2023 11:47:11 +0100] rev 3732
Runtime: Add RealTime checkbox in Linux target options to enable PREEMPT_RT scheduling.

2023-02-21Runtime: move LC_NUMERIC locale setting to Beremiz_service.py.
Edouard Tisserant [Tue, 21 Feb 2023 11:38:45 +0100] rev 3731
Runtime: move LC_NUMERIC locale setting to Beremiz_service.py.

2023-02-28Test: Customize Fluxbox launch to get rid of toolbar in IDE tests. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 28 Feb 2023 15:06:13 +0100] rev 3730
Test: Customize Fluxbox launch to get rid of toolbar in IDE tests.

2023-02-28Tests: Use TESSERACT_LSTM_COMBINED, LSTM + Legacy OCR mode in Sikuli, more stable results. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 28 Feb 2023 15:05:20 +0100] rev 3729
Tests: Use TESSERACT_LSTM_COMBINED, LSTM + Legacy OCR mode in Sikuli, more stable results.

2023-02-17Merged default in wxPython4 branch wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 17 Feb 2023 13:41:10 +0100] rev 3728
Merged default in wxPython4 branch

2023-02-17Runtime: Fix bugs in Linux target.
Edouard Tisserant [Fri, 17 Feb 2023 11:41:58 +0100] rev 3727
Runtime: Fix bugs in Linux target.

- next occurence absolute time computation failing on 32-bit because of casting
- PLC thread was started before period was set, potentially passing uninitialized timespec to clock_nanosleep()

2023-02-16runtime: Change Linux target to use clock_nanosleep instead of timer (better rt-preempt perf).
Edouard Tisserant [Thu, 16 Feb 2023 12:13:16 +0100] rev 3726
runtime: Change Linux target to use clock_nanosleep instead of timer (better rt-preempt perf).

2023-02-14Linux runtime: fix thread waiting on wait_RT_to_nRT_signal not being waken-up when delete_RT_to_nRT_signal is invoked.
Edouard Tisserant [Tue, 14 Feb 2023 12:10:35 +0100] rev 3725
Linux runtime: fix thread waiting on wait_RT_to_nRT_signal not being waken-up when delete_RT_to_nRT_signal is invoked.

2023-02-14Tests: docker image needs tesseract4, but opencv lib since sikuli.jar already contains it. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 14 Feb 2023 19:46:27 +0100] rev 3724
Tests: docker image needs tesseract4, but opencv lib since sikuli.jar already contains it.

2023-02-14More explicit default value for generic makefile target command. Assume Makfile is located in project_files wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 14 Feb 2023 19:44:25 +0100] rev 3723
More explicit default value for generic makefile target command. Assume Makfile is located in project_files

2023-02-03IDE: prevent IDE/CLI process surviving to sys.exit() by using deamon threads to monitor external processes output streams. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 03 Feb 2023 16:40:04 +0100] rev 3722
IDE: prevent IDE/CLI process surviving to sys.exit() by using deamon threads to monitor external processes output streams.

2023-02-02Tests: allow overriding local host's hostname with BEREIS_LOCAL_HOST env variable. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 02 Feb 2023 17:48:51 +0100] rev 3721
Tests: allow overriding local host's hostname with BEREIS_LOCAL_HOST env variable.

2023-02-02Tests: IDE: explicitely wait for build success rather than just stdout to become silent. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 02 Feb 2023 17:17:04 +0100] rev 3720
Tests: IDE: explicitely wait for build success rather than just stdout to become silent.