Andrey Skvortsov <andrej.skvortzov@gmail.com> [Mon, 18 Jun 2018 12:17:07 +0300] rev 2190
Fix compilation warning/error: comparison between signed and unsigned integer expressions [-Werror=sign-compare]
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Mon, 18 Jun 2018 12:12:57 +0300] rev 2189
merge
Edouard Tisserant [Fri, 15 Jun 2018 09:48:05 +0200] rev 2188
WxGlade HMI extension now does only instanciate wx object who's name match extension's name. If no object match the name and no code is provided in 'start' user python code section, then a warning is issued
Edouard Tisserant [Wed, 13 Jun 2018 08:54:13 +0200] rev 2187
BACnet : ensure that Init did happen before continuing with PLC startup.
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 15 Jun 2018 16:41:55 +0300] rev 2186
Update list of files with strings for i18n and templates for translations
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 15 Jun 2018 16:30:06 +0300] rev 2185
Add small contributing document with information about codestyle checking
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 15 Jun 2018 16:12:50 +0300] rev 2184
Add argument to set list of source files to check
This is necessary, in case you want to use docker run in pretxncommit
Mercurial hook. Unfortunately for some reason if hg running in
container can't find just created commit defined by $HG_NODE. And it
throws error 'unknown revision'.
Here is example for hgrc.
[hooks]
pretxncommit.linter = hg status -m -n -a -n -I '**.py' --change $HG_NODE > files.lst && docker run --volume=$PWD:/beremiz --workdir="/beremiz" --volume=$PWD/../CanFestival-3:/CanFestival-3 --memory=1g --entrypoint=/beremiz/tests/tools/check_source.sh skvorl/beremiz-requirements --files-to-check files.lst
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Sat, 09 Jun 2018 17:59:46 +0300] rev 2183
check_source.sh: handle case if there are no files to check
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Sat, 09 Jun 2018 17:14:56 +0300] rev 2182
Fix linter errors
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Sat, 09 Jun 2018 17:13:16 +0300] rev 2181
Add command line argument to run linter only on changed files
./tests/tools/check_source.sh --only-changes
It's recommended to run check_source.sh automatically on each commit,
so the rules are always enforced.
Even better is to use docker for that, so the versions of pep8 and
pylint are the same as on pipeline server.
To do this couple of lines should be added into repository's hgrc file.
[----------- cut from .hg/hgrc------------------]
[hooks]
precommit.linter = ./tests/tools/check_source.sh --only-changes
# precommit.linter = docker run -it --volume=$PWD:/beremiz --workdir="/beremiz" --volume=$PWD/../CanFestival-3:/CanFestival-3 --memory=1g --entrypoint=/beremiz/tests/tools/check_source.sh skvorl/beremiz-requirements --only-changes
[-----------------------------------------------]
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 08 Jun 2018 15:10:27 +0300] rev 2180
Don't use fixed width labels in WAMP and PYRO dialogs
This causes problems if labels are translated into other languages and
width wasn't enough.
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Thu, 07 Jun 2018 16:58:13 +0300] rev 2179
Fix internatialization in UriLocationEditor, PYRO dialog and Modbus configurator
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Thu, 07 Jun 2018 16:53:21 +0300] rev 2178
Add copyright headers to retain implementation for GNU/Linux and Win32
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Thu, 07 Jun 2018 16:31:26 +0300] rev 2177
Drop support for wxPython 2.6 and below
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Thu, 07 Jun 2018 14:45:03 +0300] rev 2176
Autoresize UriLocationEditor dialog window
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Thu, 07 Jun 2018 14:12:18 +0300] rev 2175
Fix compilation problem in case of TARGET_LOGGING_DISABLE turned on and TARGET_DEBUG_DISABLE turned off
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Thu, 07 Jun 2018 14:04:45 +0300] rev 2174
Use the same retain implementation for Win32 targets
Currently plc_Win32_main_retain.c is exact copy of
plc_Linux_main_retain.c, because it's not possible to use symbol
links.
It'd be nice in the future to have possibility to modify targets.code.
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Thu, 07 Jun 2018 13:45:35 +0300] rev 2173
Add retain basic implementation on GNU/Linux
Retain is saved in file and backup of this file is done every time.
File isn't saved on every PLC cycle to avoid high I/O load.
By default, retain is saved every second and on PLC stop/shutdown.
It's possible to override retain flush period by using CFLAGS option
in project's settings. For example, for 0.5 seconds period
use "-DFILE_RETAIN_SAVE_PERIOD_S=0.5".
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 01 Jun 2018 15:46:17 +0300] rev 2172
Add helper function GetRetainSize()
it will be useful for retain implementations.
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 01 Jun 2018 12:21:37 +0300] rev 2171
use CLOCK_MONOTONIC instead of CLOCK_REALTIME for timer setup
CLOCK_REALTIME is a wall clock, that could change back and forth (user
changes system time, winter/summer time, NTP corrections and so on).
For real-time application CLOCK_MONOTONIC should be used, it doesn't
have such jumps.
Surkov Sergey <surkovsv93@gmail.com> [Thu, 31 May 2018 13:07:10 +0300] rev 2170
Add function example to first_steps example
It'll be used in documentation to show how to create function in
Beremiz.
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 25 May 2018 18:37:59 +0300] rev 2169
fix type introduced by f33942053466 (fix pylint warning "(undefined-loop-variable) Using possibly undefined loop variable 'X'")
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 25 May 2018 18:34:05 +0300] rev 2168
Build by default with optimization level -O2 for GCC
before -O0 was used by default, that caused pretty bad performance.
Amd64, i6700k, 4200MHz, GNU/Linux (non-RT kernel), gcc 7.2.0
-------------------------------------
Optimization | EN/ENO |no EN/ENO |
-------------------------------------
default | 11 | 9.5 |
-O3 | 3.9 | 5.2 |
-O2 | 4 | 4.8 |
-Os | 4.1 | 3.5 |
-Ofast | 3.9 | 5.2 |
-------------------------------------
ARM, BBB Cortex-A8, 600Mhz, GNU/Linux, gcc 4.6.3
-------------------------------------
Optimization | EN/ENO |no EN/ENO |
-------------------------------------
default | 273 | 226 |
-O3 | 141.8 | 106.2 |
-O2 | 142 | 107 |
-Os | 152.5 | 112.2 |
-Ofast | 141.7 | 106.2 |
-------------------------------------
For embedded systems with size constaints (like Cortex-Mx, AVR and so
on) I usually use -Os. It gets pretty good results. For
GNU/Linux-based systems -O2 is usually a good choice, as you see the
test results.
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 25 May 2018 17:40:29 +0300] rev 2167
fix hangs on mouse selection in case if wxPython uses wxWidgets with GTK3+ support
This is default configuration on Debian Buster+ and Ubuntu 18.04+.
Probably it'll fix completely problem with 'clipboard already open'
described in the previous commit 5ce6d08f ("make clipboard open minimal time as wxPython documentation recommends")
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 25 May 2018 17:23:15 +0300] rev 2166
make clipboard open minimal time as wxPython documentation recommends
https://wxpython.org/Phoenix/docs/html/wx.Clipboard.html#wx.Clipboard.GetData
"Call wx.Clipboard.Open to get ownership of the clipboard. If this
operation returns True, you now own the clipboard. Call
wx.Clipboard.SetData to put data on the clipboard, or
wx.Clipboard.GetData to retrieve data from the clipboard. Call
wx.Clipboard.Close to close the clipboard and relinquish ownership.
You should keep the clipboard open only momentarily."
Maybe it makes situation with pretty annoying error 'clipboard already
open' a little bit better.
traceback:
File "/home/developer/WorkData/PLC/beremiz/avangard-beremiz-ide/src/../../beremiz/BeremizIDE.py", line 955, in OnSaveProjectMenu
self.RefreshAfterSave()
File "/home/developer/WorkData/PLC/beremiz/avangard-beremiz-ide/src/../../beremiz/BeremizIDE.py", line 946, in RefreshAfterSave
self._Refresh(TITLE, FILEMENU, EDITMENU, PAGETITLES)
File "/home/developer/WorkData/PLC/beremiz/avangard-beremiz-ide/src/../../beremiz/IDEFrame.py", line 926, in _Refresh
self.RefreshFunctions[element]()
File "/home/developer/WorkData/PLC/beremiz/avangard-beremiz-ide/src/../../beremiz/BeremizIDE.py", line 766, in RefreshEditMenu
IDEFrame.RefreshEditMenu(self)
File "/home/developer/WorkData/PLC/beremiz/avangard-beremiz-ide/src/../../beremiz/IDEFrame.py", line 1185, in RefreshEditMenu
if self.GetCopyBuffer() is not None:
File "/home/developer/WorkData/PLC/beremiz/avangard-beremiz-ide/src/../../beremiz/IDEFrame.py", line 956, in GetCopyBuffer
if wx.TheClipboard.Open():
File "/usr/lib/python2.7/dist-packages/wx-3.0-gtk3/wx/_misc.py", line 5793, in Open
return _misc_.Clipboard_Open(*args, **kwargs)
<class 'wx._core.PyAssertionError'>: C++ assertion "!m_open" failed at ../src/gtk/clipbrd.cpp(598) in Open(): clipboard already open
Edouard Tisserant <edouard.tisserant@gmail.com> [Sat, 23 Jun 2018 09:08:13 +0200] rev 2165
Merged GPL + LGPL v2 or later EtherCAT extension. Fixed headers and copyright notice.
Edouard Tisserant [Mon, 11 Aug 2014 23:13:35 +0200] rev 2164
Propagated matiec changes in FB var accessors
Edouard Tisserant [Wed, 02 Apr 2014 21:22:35 +0200] rev 2163
Fixed most obvious bugs appear after grafting changes from previous development branches : re-enable openning non-CoE, CoE and CiA 402 nodes config
Laurent Bessard [Wed, 02 Oct 2013 10:46:18 +0200] rev 2162
Fixed xslt stylesheet for extracting entries defined in module, rewiting xslt stylesheet to yslt
Laurent Bessard [Mon, 30 Sep 2013 13:43:02 +0200] rev 2161
Fixed bug in information returned for module where entries are defined only in PDO mapping
Laurent Bessard [Fri, 27 Sep 2013 17:49:40 +0200] rev 2160
Added support for loading XML file even if not following XSD schema (but still following XML syntax), warning user of errors in XML file
Laurent Bessard [Tue, 24 Sep 2013 15:18:25 +0200] rev 2159
Fixed bug when compiling
Laurent Bessard [Tue, 24 Sep 2013 00:50:02 +0200] rev 2158
Fixed higen example removing obsolete attribute in CIA402 node params file
Laurent Bessard [Tue, 24 Sep 2013 00:48:21 +0200] rev 2157
Fixed controllers for working with latest version of xmlclass
Laurent Bessard [Tue, 25 Jun 2013 00:55:38 +0200] rev 2156
Added bug in support for set flag for optional variables activation in axis public struct
Laurent Bessard [Mon, 24 Jun 2013 23:53:57 +0200] rev 2155
Added support for set flag for optional variables activation in axis public struct
Laurent Bessard [Mon, 24 Jun 2013 21:03:22 +0200] rev 2154
Replaced location for axis ref from %IW(location).0 to %IW(location).402. Added location for network position at %IW(location).
Laurent Bessard [Mon, 24 Jun 2013 09:23:28 +0200] rev 2153
Rewrite CIA402 node specific code generating part
Edouard Tisserant [Wed, 02 Apr 2014 15:03:32 +0200] rev 2152
Cherry-pick and re-commit to legitimate ancestor of commit 'Ethercat Management Function Refactoring Source by RTES Lab.' from youcu <youcu1022@gmail.com>
Laurent Bessard [Mon, 03 Jun 2013 08:24:08 +0200] rev 2151
Fixed bug when drag'n dropping variable in master startup command grid
Edouard Tisserant [Tue, 21 May 2013 16:03:40 +0900] rev 2150
Moved ratio scaling back to MCL. Rewrote CiA402 C part in a way it can be read and understood by some humans.
Laurent Bessard [Thu, 16 May 2013 23:21:01 +0200] rev 2149
Added icon for Ethercat extension root and Ethercat master node
Laurent Bessard [Fri, 10 May 2013 09:16:07 +0200] rev 2148
Fixed bug with global instance declaration
Laurent Bessard [Fri, 10 May 2013 08:44:05 +0200] rev 2147
Fix bug in when moving Ethercat slaves fixed
Laurent Bessard [Wed, 08 May 2013 10:40:06 +0200] rev 2146
Added mapping for TouchProbe function in CIA402 slave node
Laurent Bessard [Fri, 03 May 2013 13:47:51 +0200] rev 2145
Fixed bug with axes boolean parameters value
Laurent Bessard [Thu, 02 May 2013 13:40:35 +0200] rev 2144
Added error message when a device informations can't be found in ESI files
Laurent Bessard [Thu, 02 May 2013 10:21:47 +0200] rev 2143
Fixed ToolTip on VariablesGrid columns on Windows
Laurent Bessard [Tue, 30 Apr 2013 01:39:54 +0200] rev 2142
Update higen drive example introducing usage of csv mode
Laurent Bessard [Tue, 30 Apr 2013 01:31:47 +0200] rev 2141
Merged
Laurent Bessard [Mon, 29 Apr 2013 11:07:32 +0200] rev 2140
Fixed bug in support for module extra params in EthercatCFileGenerator
Laurent Bessard [Mon, 29 Apr 2013 11:03:06 +0200] rev 2139
Added support for module extra params in EthercatCFileGenerator
Laurent Bessard [Fri, 26 Apr 2013 23:23:09 +0200] rev 2138
Fixed support for multiple module extra params in ModulesLibrary
Laurent Bessard [Fri, 26 Apr 2013 13:57:10 +0200] rev 2137
Added support for multiple module extra params in ModulesLibrary
Laurent Bessard [Thu, 25 Apr 2013 23:01:06 +0200] rev 2136
Added support for using CIA402 motion mode csp, csv and cst
Laurent Bessard [Fri, 26 Apr 2013 13:59:43 +0200] rev 2135
Fixed order of LocationCFilesAndCFLAGS, master was called after slaves in PLC init and retrieve functions
Laurent Bessard [Wed, 24 Apr 2013 23:27:35 +0200] rev 2134
Fixed bug on Windows with sizers on Windows in Master Editor panel when its size changed
Laurent Bessard [Wed, 24 Apr 2013 17:27:31 +0200] rev 2133
Fixed Save As... function in Beremiz
Laurent Bessard [Mon, 22 Apr 2013 23:54:22 +0200] rev 2132
Added support for stopping SDOThreadProc when stopping PLC
Laurent Bessard [Mon, 22 Apr 2013 09:30:48 +0200] rev 2131
Fixed bug when modifying slave module type
Laurent Bessard [Fri, 19 Apr 2013 00:55:40 +0200] rev 2130
Fixed bug in filters behavior on Windows
Laurent Bessard [Thu, 18 Apr 2013 00:48:32 +0200] rev 2129
Fixed filter behavior in MasterEditor and SlaveEditor
Laurent Bessard [Tue, 16 Apr 2013 00:53:38 +0200] rev 2128
Fixed CIA402 node template for working with MC_Power modification removing implicit set position
Laurent Bessard [Mon, 15 Apr 2013 00:40:47 +0200] rev 2127
Fix scan network functionality, project tree not refreshed after adding slaves
Laurent Bessard [Mon, 15 Apr 2013 00:37:59 +0200] rev 2126
Rollback last commit
Laurent Bessard [Sat, 13 Apr 2013 12:27:49 +0200] rev 2125
Fixed CIA402 node template for working with MC_Power modification removing implicit set position
Laurent Bessard [Sat, 13 Apr 2013 02:14:37 +0200] rev 2124
Fixed bugs in drag'n drop from variables panel in master and slaves editor panel
Laurent Bessard [Sat, 13 Apr 2013 01:40:31 +0200] rev 2123
Added initialization of abort_code and result_size to prevent warning message if not used in following code
Laurent Bessard [Sat, 13 Apr 2013 01:39:05 +0200] rev 2122
Fixed header files inclusion in CIA402 node template file
Edouard Tisserant [Fri, 12 Apr 2013 15:41:22 +0900] rev 2121
Fixed (again) some non-clean exit in case of SDO failure at init
Laurent Bessard [Thu, 11 Apr 2013 10:32:58 +0200] rev 2120
Merged
Laurent Bessard [Fri, 05 Apr 2013 00:14:00 +0200] rev 2119
Fixed ethercat test with higen drive project
Laurent Bessard [Fri, 05 Apr 2013 00:09:54 +0200] rev 2118
Fixed bug when using real axis and simulated axis at the same time (got the same index)
Edouard Tisserant [Fri, 05 Apr 2013 21:47:37 +0900] rev 2117
Now failure in template based part of C code also release the master for later use...
Edouard Tisserant [Fri, 05 Apr 2013 16:49:41 +0900] rev 2116
Better logging, saffer failure at init (allows restart)
Edouard Tisserant [Fri, 05 Apr 2013 11:55:09 +0900] rev 2115
Added error logging when SDO FB fails
Edouard Tisserant [Thu, 04 Apr 2013 17:50:43 +0900] rev 2114
Added logging based on collecting Kernel logs
Edouard Tisserant [Thu, 04 Apr 2013 14:32:02 +0900] rev 2113
Fixed typo
Edouard Tisserant [Fri, 29 Mar 2013 14:25:10 +0900] rev 2112
Fixed linking with non RTDM etherlab lib. Now with rtdm...
Laurent Bessard [Fri, 29 Mar 2013 01:15:01 +0100] rev 2111
Split etherlab.py into multiple files
Laurent Bessard [Fri, 29 Mar 2013 01:13:17 +0100] rev 2110
Fixed bug with process variables grid
Edouard Tisserant [Thu, 28 Mar 2013 18:06:03 +0900] rev 2109
Stripped useless depricated comments, changed print format of sdo abort code
Edouard Tisserant [Thu, 28 Mar 2013 15:50:23 +0900] rev 2108
Updated generated code to etherlab 1.5.2
Edouard Tisserant [Tue, 26 Mar 2013 12:42:49 +0900] rev 2107
Added Logging
Edouard Tisserant [Tue, 26 Mar 2013 09:34:30 +0900] rev 2106
Now use beremiz.h
Laurent Bessard [Wed, 20 Mar 2013 09:17:15 +0100] rev 2105
Fixed bugs in Network Configuration Editor
Edouard Tisserant [Thu, 14 Mar 2013 17:29:59 +0900] rev 2104
CiA402 now fills NetworkPosition member of public axis struct
Laurent Bessard [Thu, 07 Mar 2013 00:54:45 +0100] rev 2103
Fixed bugs in process variables generated code
Laurent Bessard [Wed, 06 Mar 2013 19:25:20 +0100] rev 2102
Added specific add menu for directly choose slave type while adding new slave
Laurent Bessard [Wed, 06 Mar 2013 18:38:17 +0100] rev 2101
Added code generation for process variables
Laurent Bessard [Wed, 06 Mar 2013 18:37:23 +0100] rev 2100
Fixed modifications in Startup Commands grid
Laurent Bessard [Tue, 05 Mar 2013 23:04:59 +0100] rev 2099
Improved Ethercat Network Configurator panels
Laurent Bessard [Tue, 05 Mar 2013 00:59:34 +0100] rev 2098
Improved Ethercat Network Configurator panels
Laurent Bessard [Wed, 27 Feb 2013 22:40:45 +0100] rev 2097
Added panel for managing ESI files from project and from database including module PDO alignment setting
Laurent Bessard [Thu, 07 Feb 2013 00:59:50 +0100] rev 2096
Added support for MC_*DigitalOutput, MC_ReadAxisInfo and MC_ReadAxisError blocks from MCL in DS402 nodes generated code
Laurent Bessard [Wed, 30 Jan 2013 23:46:58 +0100] rev 2095
Replaced SplitterWindow in ConfTreeNodeEditor by Notebook
Laurent Bessard [Fri, 16 Nov 2012 23:43:45 +0100] rev 2094
Fix bug in support for Etherlab specific fieldbus interface function blocks
Laurent Bessard [Fri, 16 Nov 2012 00:23:35 +0100] rev 2093
Fix bug in support for Etherlab specific fieldbus interface function blocks
Laurent Bessard [Thu, 15 Nov 2012 22:43:44 +0100] rev 2092
Adding support for Etherlab specific function blocks for MCL fieldbus interface function blocks
Laurent Bessard [Fri, 09 Nov 2012 11:27:30 +0100] rev 2091
Adding support for extracting ActualVelocity from CIA402 nodes PDOs
Laurent Bessard [Fri, 09 Nov 2012 11:25:44 +0100] rev 2090
Fix bug in EtherLabSDODownload function block
Laurent Bessard [Wed, 31 Oct 2012 12:06:04 +0100] rev 2089
Fix bug when Drag'n Dropping located variables on Windows
Laurent Bessard [Wed, 31 Oct 2012 11:54:26 +0100] rev 2088
Adding support for using Etherlab SDO function blocks in MCL
Laurent Bessard [Tue, 30 Oct 2012 00:22:29 +0100] rev 2087
Updating ethercat example for higen drive adding an example of Ethercat SDO upload block usage
Laurent Bessard [Thu, 25 Oct 2012 19:55:02 +0200] rev 2086
Adding block library for SDO download and SDO upload
Laurent Bessard [Fri, 19 Oct 2012 16:37:54 +0200] rev 2085
Fix bug in CIA402 slave digital inputs
Laurent Bessard [Fri, 19 Oct 2012 12:43:42 +0200] rev 2084
Adding support to enable CIA402 slave digital inputs
Laurent Bessard [Thu, 18 Oct 2012 01:23:35 +0200] rev 2083
Fix Axis_Ref type defined in VariableLocationTree
Laurent Bessard [Wed, 17 Oct 2012 19:12:08 +0200] rev 2082
Adding support for selecting a PDO in a list of mutually exclusive configured PDOs in Ethercat Network Configurator
Laurent Bessard [Sat, 13 Oct 2012 22:48:05 +0200] rev 2081
Fix bug in endianization in value transmit and received by SDO
Laurent Bessard [Sun, 23 Sep 2012 23:52:47 +0200] rev 2080
Fix bug when modifying slave position
Laurent Bessard [Sun, 23 Sep 2012 23:25:57 +0200] rev 2079
Fix C code Generator to use CoE section contained in the slave ESI file for defining Ethercat network configuration
Laurent Bessard [Sat, 22 Sep 2012 12:07:06 +0200] rev 2078
Merged
Laurent Bessard [Wed, 19 Sep 2012 11:03:25 +0200] rev 2077
Fix bug when modifying slave position
Edouard Tisserant [Fri, 21 Sep 2012 16:02:33 +0200] rev 2076
Better jitter compensation before sending Ethercat frame. Jitter can be compensed in both directions, within some limits
Edouard Tisserant [Wed, 19 Sep 2012 03:30:58 +0200] rev 2075
Different etherlab sequencing within retrieve and publish. Now, timer is polled after PLC exec until frame have to be sent. This slightly reduce jitter, compared to previous sequencing
Laurent Bessard [Thu, 13 Sep 2012 11:07:51 +0200] rev 2074
Adding support for loading Profile dictionaries only if needed
Laurent Bessard [Wed, 12 Sep 2012 18:13:28 +0200] rev 2073
Fix bug modules present in all groups with the same name even if they are defined by different vendors
Laurent Bessard [Sun, 09 Sep 2012 22:59:07 +0200] rev 2072
Fix bug variable entries table column headers not translated
Laurent Bessard [Fri, 07 Sep 2012 18:30:35 +0200] rev 2071
Fix import after integration of plcopeneditor into Beremiz
Laurent Bessard [Tue, 04 Sep 2012 15:00:35 +0200] rev 2070
Removing call to UpdateAxis and ComputeAxis in CIA DS402 node generated retrieve and publish functions. These calls have been transfered to MCL library retrieve and publish functions.
Laurent Bessard [Fri, 20 Jul 2012 02:13:07 +0200] rev 2069
Fix bug with AXIS_REF allocation
Laurent Bessard [Mon, 25 Jun 2012 20:06:17 +0200] rev 2068
Adding support using plcopeneditor bitmap library for icon request
Laurent Bessard [Mon, 25 Jun 2012 12:12:51 +0200] rev 2067
Fix bug slave information panel not refreshed when slave type changed
Laurent Bessard [Tue, 19 Jun 2012 20:28:05 +0200] rev 2066
Fix bug when modifying node parameters
laurent [Mon, 11 Jun 2012 02:37:23 +0200] rev 2065
Merged
Laurent Bessard [Mon, 11 Jun 2012 02:25:57 +0200] rev 2064
Fix disable dynamic PDOs support
Laurent Bessard [Mon, 11 Jun 2012 01:21:26 +0200] rev 2063
Fix bug with AXIS_REF located variable drag'n drop and disable dynamic PDOs support
Laurent Bessard [Sun, 10 Jun 2012 20:16:17 +0200] rev 2062
Adding support for getting CIA402 slave AXIS_REF located variables and disabling dynamic PDO mapping algorithm for drives than doesn't support this functionality
Edouard Tisserant [Mon, 04 Jun 2012 19:00:58 +0200] rev 2061
Changed AXIS_REF registration call name
Laurent Bessard [Wed, 23 May 2012 16:30:41 +0200] rev 2060
Fixing bug on ConfNodeEditors refresh
Edouard Tisserant [Wed, 23 May 2012 16:13:49 +0200] rev 2059
fixed multiple cia402 instance symbol collision
Laurent Bessard [Wed, 23 May 2012 10:39:14 +0200] rev 2058
Replacing Panel by ScrolledWindow for displaying node information for more clarity when window is small
Laurent Bessard [Tue, 22 May 2012 22:28:05 +0200] rev 2057
Removing ModesOfOperation parameter until handled by MCL
laurent [Mon, 21 May 2012 18:47:56 +0200] rev 2056
Fix bug with VariablesList on Windows
laurent [Mon, 21 May 2012 10:21:41 +0200] rev 2055
refactoring
laurent [Mon, 21 May 2012 10:07:35 +0200] rev 2054
Merged
laurent [Mon, 21 May 2012 10:07:11 +0200] rev 2053
refactoring
laurent [Mon, 21 May 2012 09:31:15 +0200] rev 2052
Merged
laurent [Fri, 18 May 2012 18:51:07 +0200] rev 2051
refactoring
Edouard Tisserant [Mon, 21 May 2012 04:34:10 +0200] rev 2050
Fixed example build with installer 1.1
Edouard Tisserant [Sun, 20 May 2012 23:05:36 +0200] rev 2049
updated examples also
Edouard Tisserant [Sun, 20 May 2012 22:42:37 +0200] rev 2048
reflected changes in beremiz extension mechanism
edouard_and_laurent [Mon, 14 May 2012 07:43:40 +0900] rev 2047
Fixed wrong PDO in unused sync managers\nFix higen drive ethercat example
laurent [Mon, 30 Apr 2012 16:21:30 +0200] rev 2046
Fix Ethercat xsd files
laurent [Sun, 01 Apr 2012 16:36:41 +0200] rev 2045
Adding test project using higen drive
laurent [Sat, 31 Mar 2012 15:13:14 +0200] rev 2044
Adding forgotten icons
laurent [Wed, 21 Mar 2012 11:15:47 +0100] rev 2043
Adding plugin icons and replacing reference to DS402 by CIA402
laurent [Mon, 19 Mar 2012 00:45:19 +0100] rev 2042
Adding support for remotely scanning Etherlab network and automatically configure it
laurent [Sun, 18 Mar 2012 23:57:32 +0100] rev 2041
Defining all slaves as Etherlab master subplugin instead of editing them in an editor with vertical notebook
laurent [Sun, 11 Mar 2012 21:57:00 +0100] rev 2040
Adding Ethercat network scan command for testing (print result, network configuration not modified)
laurent [Sun, 11 Mar 2012 21:53:35 +0100] rev 2039
Adding support for uploading default value for unused entries in output pdos from slaves before starting master
laurent [Sun, 11 Mar 2012 19:32:44 +0100] rev 2038
Replacing wx.Grid control by a wx.TreeListCtrl for displaying slaves entries
laurent [Wed, 29 Feb 2012 12:00:20 +0100] rev 2037
Fix bug when trying to drag'n drop variable from slave variables grid
laurent [Thu, 23 Feb 2012 23:34:40 +0100] rev 2036
Adding support for setting TargetPosition only if PositionSetPoint value from MCL is valid
laurent [Thu, 23 Feb 2012 15:48:19 +0100] rev 2035
Fix bug with PowerFeedback value
laurent [Wed, 22 Feb 2012 01:39:22 +0100] rev 2034
Adding support for MCL
Edouard Tisserant [Thu, 16 Feb 2012 18:40:13 +0100] rev 2033
Added test directory
laurent [Wed, 15 Feb 2012 00:38:26 +0100] rev 2032
Adding support for DS402 node subplugin (only simple state transition implemented)
laurent [Tue, 07 Feb 2012 19:45:45 +0100] rev 2031
Fix some issues regarding arbitrary variable mapping
laurent [Wed, 01 Feb 2012 00:04:58 +0100] rev 2030
Moving Add and Remove button to Plugin menu items
laurent [Tue, 17 Jan 2012 17:24:53 +0100] rev 2029
Adding support for displaying slave sync managers and profile object dictionary and for arbitrarily mapping variable through variable location
laurent [Tue, 10 Jan 2012 15:11:22 +0100] rev 2028
Merge with Donggu modifications
laurent [Tue, 10 Jan 2012 15:10:08 +0100] rev 2027
Merge with Donggu modifications
laurent [Sun, 08 Jan 2012 19:05:05 +0100] rev 2026
Adding support for drag'n dropping located variables from topology panel to configurations and resources variable panel for declaring global located variables
Donggu Kang <dgkang@higenmotor.com> [Thu, 22 Dec 2011 14:52:18 +0900] rev 2025
Master relase code added
Donggu Kang <dgkang@higenmotor.com> [Thu, 22 Dec 2011 14:44:58 +0900] rev 2024
Master release code added
laurent [Tue, 20 Dec 2011 23:43:27 +0100] rev 2023
Adding support for not configuring pdos when not mandatory and not needed by locations defined in PLC program. Adding support for displaying locations tree in Topology panel and BrowseLocationsDialog. Merging pdos grid and variables grid into one single grid in slave infos panel.
laurent [Sun, 18 Dec 2011 19:42:13 +0100] rev 2022
First working implementation of Beremiz plugin for etherlab
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 11 Jun 2018 08:34:15 +0200] rev 2021
merge
Edouard Tisserant [Fri, 08 Jun 2018 13:28:00 +0200] rev 2020
Add BACnet extension from Mario de Sousa <msousa@fe.up.pt>
Edouard Tisserant [Fri, 08 Jun 2018 09:43:48 +0200] rev 2019
Make Modbus extension license compatible with the rest of Beremiz IDE python code : GPLv2.
Edouard Tisserant [Mon, 04 Jun 2018 11:22:08 +0200] rev 2018
Commented out safety check to prevent deadlock in wxEvaluator, since wx Mainloop is not anymore in main thread. That safety check actually leads to having wx code running outside of MainLoop
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 23 May 2018 20:22:45 +0200] rev 2017
Merge
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Wed, 23 May 2018 12:13:48 +0300] rev 2016
Print version information about software used for tests
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Wed, 23 May 2018 11:48:34 +0300] rev 2015
Fix codestyle
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Wed, 23 May 2018 11:47:56 +0300] rev 2014
Fix typos introduced by 9fa2f8e "Fixed random segfault happening when loading new PLC in runtime, when using Xenonai."
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Tue, 22 May 2018 17:28:18 +0300] rev 2013
merged changes in README.md
Sergey Surkov <surkovsv93@gmail.com> [Mon, 12 Mar 2018 14:10:19 +0000] rev 2012
add python-cycler dependence in readme
Edouard Tisserant [Wed, 23 May 2018 10:53:57 +0200] rev 2011
Make Modbus mutexes non blocking for PLC. If data related to some modbus request is alredy locked when PLC wants to access it, then data isn't copied to/from PLC
Edouard Tisserant [Thu, 17 May 2018 09:33:58 +0200] rev 2010
Merged #2476, URI dialog fixes
Edouard Tisserant [Thu, 17 May 2018 09:33:14 +0200] rev 2009
close branch #2476 - URI dialog fixed
dporopat <denis.poropat@smarteh.si> [Mon, 14 May 2018 13:26:35 +0200] rev 2008
#2476 Changes to the comment.
dporopat <denis.poropat@smarteh.si> [Thu, 10 May 2018 13:11:11 +0200] rev 2007
#2476 Connectors dialog module added.
dporopat <denis.poropat@smarteh.si> [Wed, 09 May 2018 15:09:54 +0200] rev 2006
#2476 Separate connectors dialogs from connectors module.
dporopat <denis.poropat@smarteh.si> [Wed, 09 May 2018 11:16:27 +0200] rev 2005
#2476 Additional check added if we can import wx.
Edouard Tisserant [Thu, 10 May 2018 08:33:50 +0200] rev 2004
Allow deleting configuration tree node with no corresponding directory in project tree
Edouard Tisserant [Mon, 07 May 2018 15:10:39 +0200] rev 2003
Support unicode in LDFLAGS returned by extensions
Edouard Tisserant [Mon, 07 May 2018 14:19:08 +0200] rev 2002
Fixed typos
dporopat <denis.poropat@smarteh.si> [Fri, 20 Apr 2018 11:21:20 +0200] rev 2001
#2476 Added uri location editor, getting connectors from list in Beremiz.
Edouard Tisserant [Fri, 27 Apr 2018 16:32:53 +0200] rev 2000
Fixed random segfault happening when loading new PLC in runtime, when using Xenonai.
Edouard Tisserant [Thu, 19 Apr 2018 15:17:05 +0200] rev 1999
PEP-8 and PyLint
Edouard Tisserant [Thu, 19 Apr 2018 15:03:23 +0200] rev 1998
merged Denis change to apply input as we type in CTN configuration forms text fieds
Edouard Tisserant [Thu, 19 Apr 2018 14:53:42 +0200] rev 1997
PEP-8 and PyLint
Edouard Tisserant [Thu, 19 Apr 2018 13:09:41 +0200] rev 1996
Add safety check to prevent exception when disconnecting while debugging
Edouard Tisserant [Thu, 19 Apr 2018 13:02:13 +0200] rev 1995
Removed DebugThread. Take advantage of the fact that buffering is done in runtime. No need to poll for traces more than ten per second, then use simple wxTimer for that. Also removed Debug Lock since now everything happens in wx' mainloop.
Edouard Tisserant [Thu, 19 Apr 2018 12:22:40 +0200] rev 1994
Rework of runtime non-real-time threading, and shared object dynamic loading :
- All exposed operations on PLCObject are now serialized through main thread
(@RunInMain). Only one exception : python trace thread calling _GetDebugData
- Re-loading of same shared object is prevented. dlclose/delte/rewrite/dlopen
don't happen in that case. This is a workaround for some xenomai copperplate
bug triggering segfault, inbetween delete and rewrite.
- Trace thread now waits for data, dies if no data, and dies instead of
suspending as before when no data consumed after 3 seconds.
- Disabled threading in Pyro client
- Enforced auxiliary threads starting sequence : Pyro -> [UI] ->
PLCWorker.RunLoop
Edouard Tisserant [Tue, 17 Apr 2018 11:19:18 +0200] rev 1993
Stripped forgotten debug code
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 19 Apr 2018 15:06:10 +0200] rev 1992
close branch
dporopat <denis.poropat@smarteh.si> [Thu, 19 Apr 2018 09:50:00 +0200] rev 1991
#2476 Fix for saving text in URI edit text box. No need to click out of URI edit text box to save edited text.
Edouard Tisserant [Mon, 16 Apr 2018 16:11:18 +0200] rev 1990
Fixed Xenomai 3 PLC stop freeze. Now use explicit finish command with pipes. Closing both ends of pipes doesn't abort blocking read anymore.
Edouard Tisserant [Mon, 16 Apr 2018 11:00:04 +0200] rev 1989
More canonical test.
There is an exception happening around here in some cases when connection is dropped while waiting for answer. Not sure that this fixes it but this is anyhow better.
Edouard Tisserant [Sat, 14 Apr 2018 10:09:33 +0200] rev 1988
PLCObject got more methods serialized through worker : Start, Stop, NewPLC.
This particularly helps with initialization/startup/re-load problems
when targeting Xenomai. It should help in general for runtime robustness,
since those operations aren't meant to be executed concurrently.
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 13 Apr 2018 00:29:52 +0200] rev 1987
Fixed implementation of runtime worker that ensure that PLCObject Load and Unload methods always run main thread.
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 12 Apr 2018 22:32:43 +0200] rev 1986
merged
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 12 Apr 2018 22:32:12 +0200] rev 1985
merged
Edouard Tisserant [Thu, 12 Apr 2018 22:20:38 +0200] rev 1984
Intermediate state while implementing runtime worker to ensure that PLCObject Load and Unload methods always run main thread.
Edouard Tisserant [Thu, 12 Apr 2018 16:38:09 +0200] rev 1983
Stripped more dead code.
Edouard Tisserant [Thu, 12 Apr 2018 16:33:44 +0200] rev 1982
Cleanup of some dead code in PYRO connector.
Edouard Tisserant [Thu, 12 Apr 2018 16:31:30 +0200] rev 1981
Added logging in Xenomai init phase.
Edouard Tisserant [Thu, 12 Apr 2018 16:29:43 +0200] rev 1980
Apply new RT Pipes API from Xenomai 3
Edouard Tisserant [Thu, 12 Apr 2018 16:27:22 +0200] rev 1979
Removed useless try/except in Canfestival.py
dporopat <denis.poropat@smarteh.si> [Tue, 10 Apr 2018 13:36:36 +0200] rev 1978
#2579 On showing search result, text color of tree item is set to white. We need to change back color to show the result.
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 29 Mar 2018 23:33:36 +0200] rev 1977
PEP-8...
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 29 Mar 2018 23:25:26 +0200] rev 1976
Fixed bug that was creating many frames at starup on Windows
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 25 Mar 2018 16:22:36 +0200] rev 1975
re-merge
Edouard Tisserant [Mon, 19 Mar 2018 16:18:17 +0100] rev 1974
Xenomai 3
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 02 Mar 2018 17:01:25 +0100] rev 1973
merged Sergeys changes
Surkov Sergey <surkovsv93@gmail.com> [Mon, 19 Feb 2018 19:36:43 +0300] rev 1972
fix bug with indelible values in some 'optional' fields in project properties panel
only 'required' fields should be indelible
Surkov Sergey <surkovsv93@gmail.com> [Mon, 19 Feb 2018 19:10:07 +0300] rev 1971
make the URI model compatible with https
Surkov Sergey <surkovsv93@gmail.com> [Mon, 19 Feb 2018 19:02:25 +0300] rev 1970
add address validation in Company URL field
Surkov Sergey <surkovsv93@gmail.com> [Fri, 02 Feb 2018 17:16:04 +0300] rev 1969
remove duplicating code for variables name generate
Surkov Sergey <surkovsv93@gmail.com> [Wed, 31 Jan 2018 16:31:01 +0300] rev 1968
add fields autocomplete when adding task or instance in resources
values will be copied from previous row, first row fills with the default values
Surkov Sergey <surkovsv93@gmail.com> [Thu, 18 Jan 2018 14:24:44 +0300] rev 1967
fix search in TextViewer objects, search returns only first entry
side effect of a63bb40
Surkov Sergey <surkovsv93@gmail.com> [Thu, 18 Jan 2018 14:03:29 +0300] rev 1966
fix import order according to PEP8
Surkov Sergey <surkovsv93@gmail.com> [Mon, 15 Jan 2018 12:06:24 +0300] rev 1965
fix default time range choice for debug variable panel
only localized versions were affected
Surkov Sergey <surkovsv93@gmail.com> [Fri, 12 Jan 2018 18:36:02 +0300] rev 1964
enlarge canvas border for debug variable graphic viewer
Surkov Sergey <surkovsv93@gmail.com> [Fri, 12 Jan 2018 18:33:54 +0300] rev 1963
fix rounding milliseconds from nanoseconds
example:rounding 299999 ns to 300ms, if division result is an
integer, remainder will be lost, and result will be 299.
Surkov Sergey <surkovsv93@gmail.com> [Fri, 12 Jan 2018 17:56:48 +0300] rev 1962
fix display TIME type variables in debug variable panel
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 01 Mar 2018 14:28:55 +0100] rev 1961
fix for test app from skv. thanks
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 01 Mar 2018 10:28:17 +0100] rev 1960
Prevent catching exception if exception handling was not enabled (or disabled by test test app).
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 01 Mar 2018 09:41:12 +0100] rev 1959
pep8 and pylint hate me
Edouard Tisserant [Wed, 28 Feb 2018 16:10:05 +0100] rev 1958
Fixed typo introduced in 5736d25bb393
Edouard Tisserant [Fri, 23 Feb 2018 11:16:25 +0100] rev 1957
GetEditedElementInstancesInfos now optimized as well. Forgotten because not using [R.I.P]LibraryResolver, but still XSLT compiling was hapenning on each call.
Edouard Tisserant [Tue, 20 Feb 2018 15:09:01 +0100] rev 1956
Another attempt to make BitBuket's version of pylint happy.
Edouard Tisserant [Tue, 20 Feb 2018 14:46:12 +0100] rev 1955
Attempt to make BitBuket's version of pep8 and pylint happy.
Edouard Tisserant [Tue, 20 Feb 2018 14:24:30 +0100] rev 1954
Removed dead slow code
Edouard Tisserant [Tue, 20 Feb 2018 14:16:51 +0100] rev 1953
PEP8 and PyLint conformance: whitespaces and stuff
Edouard Tisserant [Tue, 20 Feb 2018 11:24:40 +0100] rev 1952
Copy pasted, no time wasted !
Edouard Tisserant [Tue, 20 Feb 2018 11:24:10 +0100] rev 1951
GetVariableDictionary and GetPouInterfaceReturnType optimized with new VariableInfoCollector based on XSLTModelQuery. Moved corresponding definitions out of PLCControler.py.
Edouard Tisserant [Mon, 19 Feb 2018 15:46:50 +0100] rev 1950
GetPouInstanceTagName optimized with XSLTModelQuery.
Edouard Tisserant [Mon, 19 Feb 2018 15:15:36 +0100] rev 1949
Better writing of some xpath added in previous commits about XSLT optimization.
Edouard Tisserant [Mon, 19 Feb 2018 15:14:30 +0100] rev 1948
Moved some definitions away from controller class, and adaped references them through all code.
Edouard Tisserant [Mon, 19 Feb 2018 13:24:57 +0100] rev 1947
Hook Beremiz Launcher AppStart to AdvancedSplash OnPaint event in order to ensure image is beeing displayed before loading.
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 18 Feb 2018 22:29:35 +0100] rev 1946
Avoid endline escaping in multiline xpath epressions in xslt. ' ' Is apparently ignored but never know...
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 18 Feb 2018 21:51:33 +0100] rev 1945
Fixed earlier XSLT optimizations. Some/most results were missing.
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 18 Feb 2018 21:30:48 +0100] rev 1944
Moved some code from PLCController.py to other modules. Added necessary imports.
Edouard Tisserant <edouard.tisserant@gmail.com> [Sat, 17 Feb 2018 23:58:47 +0100] rev 1943
GetPouVariables optimized with XSLTModelQuery
Edouard Tisserant <edouard.tisserant@gmail.com> [Sat, 17 Feb 2018 16:42:56 +0100] rev 1942
Added /plcopen/InstancesPathCollector.py, to move more model xslt querying code away from PLCController.py.
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 16 Feb 2018 18:38:30 +0100] rev 1941
Fixed Exception dialog disapearing after a view second when exception occurs during app startup.
Problem was caused by splashscreen timeout, wx closing averything else if there is no more main frame.
Changes:
- no more timeout for splashscreen
- use wx.App OnInit method to give first operation to mainloop, object are then now created in mainloop
- main loop is then created _before_ showing splash screen
- no more wxyield or wx processevent tricks needed to display splash screen
- exception handler not blocking anymore on dialog (callafter)
- because of mainloop being there before everything, exit must be called explicitely if exception caught during startup -> exit parameter in handle_exception + try/except around startup calls
UNTESTED ON WINDOWS
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 16 Feb 2018 18:24:55 +0100] rev 1940
Moved XSLTModelQuery class to own module in plcopen package.
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 16 Feb 2018 13:00:06 +0100] rev 1939
Added a class to speedup all XSLT queries. WIP, now only for instances_path.xslt / GetInstanceList()
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 16 Feb 2018 03:24:11 +0100] rev 1938
Stripped useless node creation in instances_path stylesheet.
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 16 Feb 2018 02:29:10 +0100] rev 1937
This should really help GetInstanceList to perform better: resolver removed, no more deepcopy, no more useless xml serialization, no more node-set() calls.
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 16 Feb 2018 01:48:48 +0100] rev 1936
YSLT auto indent trick is useless here, added yslt_noindent.yml2, regenerated XSLT files
Edouard Tisserant [Fri, 16 Feb 2018 01:38:34 +0100] rev 1935
Prevent compiling XSLT on each call of GetInstanceList. To be continued. More optimization needed here. 100x would be fine...
Edouard Tisserant [Wed, 14 Feb 2018 15:39:27 +0100] rev 1934
Changed meaning of -c commandline argument for Beremiz service : only gives DEFAULT wamp config.
If existing project already has a wamp config, it is taken instead.
Edouard Tisserant [Wed, 14 Feb 2018 14:50:10 +0100] rev 1933
Factorized duplicated code
Edouard Tisserant [Wed, 14 Feb 2018 14:48:40 +0100] rev 1932
Better variable naming, and small optimization.
Edouard Tisserant [Tue, 13 Feb 2018 14:01:20 +0100] rev 1931
Unclutter graphics package scope.
Moved some import statements from "graphics" package to "viewer" module.
It also avoid systematic import of everything in graphics when we only need one submodule.
Edouard Tisserant [Tue, 13 Feb 2018 13:57:53 +0100] rev 1930
Removed dead code
Edouard Tisserant [Mon, 12 Feb 2018 13:18:53 +0100] rev 1929
Fixed pyro timeout for runtime, was set too short and runtime was disconnecting when building PLC
Edouard Tisserant [Mon, 12 Feb 2018 11:34:07 +0100] rev 1928
Ask to stop PLC before transfer if it is running
Edouard Tisserant [Mon, 12 Feb 2018 11:32:48 +0100] rev 1927
Factorized some repeated refresh code into a method, to allow customisation.
Edouard Tisserant [Mon, 05 Feb 2018 16:23:51 +0100] rev 1926
Launcher : add a debug attribute, instead of BMZ_DBG, so that customization can use it.
Edouard Tisserant [Fri, 02 Feb 2018 16:25:32 +0100] rev 1925
Stripped old dead code.
Edouard Tisserant [Fri, 02 Feb 2018 16:24:56 +0100] rev 1924
More changes in Launcher. Modules to be loaded in the background are given in a list, and assigned as object attributes. Also splitted CreateUI into CloseSplashScreen and CreatueUI.
Edouard Tisserant [Fri, 02 Feb 2018 16:22:25 +0100] rev 1923
ClassImporter now accepts string, callable or class, for compatibility with some old extensions.
Edouard Tisserant [Fri, 02 Feb 2018 11:12:03 +0100] rev 1922
Launcher: ShowUI call moves from preStart to start. ShowUI() split into CreateUI() and ShowUI(). Start()'s arguments are passed to CreateUI()
This is meant to allow customizations to pass own pre-instanciated controller to UI at startup.
Edouard Tisserant [Fri, 02 Feb 2018 11:07:39 +0100] rev 1921
Launcher: allows customizations to specify what globals passed to extensions
Edouard Tisserant [Fri, 02 Feb 2018 11:06:41 +0100] rev 1920
Documentation
Edouard Tisserant [Thu, 01 Feb 2018 14:51:18 +0100] rev 1919
Another set of meaningless changes to satisfy PEP8 and PyLint.
Edouard Tisserant [Wed, 31 Jan 2018 15:25:30 +0100] rev 1918
PEP8 conformity for modbus. Most of it done by autopep8, plus some easy refactoring.
Edouard Tisserant [Wed, 31 Jan 2018 15:22:43 +0100] rev 1917
Add some class factory function to ease declaration of simple POU libraries in customizations (i.e. TC6 XML file only, no special C code generation)
Edouard Tisserant [Wed, 31 Jan 2018 15:20:42 +0100] rev 1916
Small pep8 conformity enforcement.
Edouard Tisserant [Wed, 31 Jan 2018 11:29:17 +0100] rev 1915
Better have globals passed to python extensions (-e) than locals.
Edouard Tisserant [Wed, 31 Jan 2018 11:21:08 +0100] rev 1914
launcher : move call to ShowSplashScreen and BackgroundInitialization to PreStart()
It doesn't change behaviour of launcher in beremiz, but may have some impact on some customizations.
Some customizations need to squeeze some bitmap folder init in between app creation and ShowSplashScreen
Edouard Tisserant [Tue, 30 Jan 2018 16:23:50 +0100] rev 1913
modbus extension code cleanup, from smarteh's patch
Edouard Tisserant [Tue, 30 Jan 2018 16:06:58 +0100] rev 1912
Merged Mario's modbus branch. Fixed line endings.
Mario de Sousa <msousa@fe.up.pt> [Fri, 24 Mar 2017 12:07:47 +0000] rev 1911
merge
Mario de Sousa <msousa@fe.up.pt> [Sun, 05 Mar 2017 00:38:25 +0000] rev 1910
Ignore bug report files.
Mario de Sousa <msousa@fe.up.pt> [Sun, 05 Mar 2017 00:37:54 +0000] rev 1909
Add support for Modbus (TCP and RTU) working as master & slave
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 29 Jan 2018 13:31:14 +0100] rev 1908
merge
Edouard Tisserant [Wed, 24 Jan 2018 16:12:49 +0100] rev 1907
fixed erro introduced 2 commits ago (-e) : tuples have no reverse() method
Edouard Tisserant [Wed, 24 Jan 2018 15:44:36 +0100] rev 1906
Trying to get better logging/display of exceptions at runtime's startup
Edouard Tisserant [Wed, 24 Jan 2018 14:48:49 +0100] rev 1905
Changed way to deal with extensions arguments (-e) so that path and filename are stored independently and accessible for extensions themselves.
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 29 Jan 2018 12:56:49 +0100] rev 1904
Textviewer : moved call to Colourise in a better place, so that ST highlighting gets also updated when typing in some case, not only IL
Edouard Tisserant [Fri, 19 Jan 2018 15:12:23 +0100] rev 1903
Main runtime template C code : Added HAVE_RETAIN preprocessor definition for customized build to signal it provides IEC-61131 Retain memory handling function. Removed targets/Xenomai/plc_Xenomai_noretain.c, now useless.
Edouard Tisserant [Mon, 15 Jan 2018 14:43:53 +0100] rev 1902
Clarify licensing, and packaging of runtime only files :
- moved and split targets/typemapping.py into runtime/typemapping.py and runtime/loglevels.py
- added runtime_files.list pointing to files necessary for runtime, and referring to runtime license
Edouard Tisserant [Thu, 11 Jan 2018 15:41:20 +0100] rev 1901
Enforced check_source.sh pep8 and pylint rules.
Edouard Tisserant [Thu, 11 Jan 2018 15:39:58 +0100] rev 1900
runtime/WAMP: Fixed secret loading into configuration. Fixed secret commandline switch handling.
Edouard Tisserant [Thu, 11 Jan 2018 13:02:09 +0100] rev 1899
runtime/WAMP : was 'Added time print on session left.' from dporopat. Purpose is to log (dis/re)connection, to help debugging connection problem
Edouard Tisserant [Thu, 11 Jan 2018 12:48:49 +0100] rev 1898
runtime/Wamp : adapt to unicode being enforced in latest crossbar API. Updated some documentation, to explain why there is unused definitions like SubscribedEvents or DoOnJoin.
Edouard Tisserant [Wed, 10 Jan 2018 15:36:03 +0100] rev 1897
Extend python<->PLC global variable description "GlobalDesc" to support Initial value setting.
Rebased from dporopat change "add initial value to runtime.py file", which means :
- GlobalDesc is used by some customized beremiz python runtime
- Those runtimes need to know what is initial value of these special variables
Edouard Tisserant [Wed, 10 Jan 2018 14:35:04 +0100] rev 1896
update tests/wamp README file, based on changes from dporopat.
Edouard Tisserant [Wed, 10 Jan 2018 13:23:40 +0100] rev 1895
Fixed WAMP test (crossbar confile upgrade and use same ID on both PLC and IDE side)
Edouard Tisserant [Wed, 10 Jan 2018 13:21:42 +0100] rev 1894
Fixed changes from dporopat and agregorcic about WAMP CRA and config.
Edouard Tisserant [Tue, 09 Jan 2018 15:08:08 +0100] rev 1893
WAMP runtime : changes from dporopat and agregorcic, adding CRA (-s) and changed way to load WAMP conf (-c)
- added Challenge Response Authentication,
- use -s commandline switch to give the shared secret.
- WAMP configuration now either given as -c commandline switch
or taken as default wampconf.json in project files.
Edouard Tisserant [Tue, 09 Jan 2018 14:52:56 +0100] rev 1892
Set WAMP registration option so that reconnecting while earlier session still didn't timeout is possible (in case of connection lost, for example).
Edouard Tisserant [Tue, 09 Jan 2018 14:50:41 +0100] rev 1891
More canonical overload of ReconnectingClientFactory (according twisted doc)
Edouard Tisserant [Tue, 09 Jan 2018 14:42:23 +0100] rev 1890
non significant print syntax change. ready for py3.
Edouard Tisserant [Tue, 09 Jan 2018 14:38:45 +0100] rev 1889
whitespace cosmetic for pep8
Edouard Tisserant [Mon, 08 Jan 2018 11:09:02 +0100] rev 1888
Added arbitrary timeout on Pyro, to force it to free memory after disconnect.
Edouard Tisserant [Fri, 05 Jan 2018 15:39:02 +0100] rev 1887
Moved code from to Beremiz_service.py Server class Start method to Loop method to allow customisation by hot patching. Also renamed Stop method as _stop and use Restart instead of Stop from everywhere else to make it clear that _stop actually does restart...
Edouard Tisserant [Thu, 04 Jan 2018 16:00:35 +0100] rev 1886
enforce PEP8 in previous commit
dporopat <denis.poropat@smarteh.si> [Fri, 20 Jan 2017 13:22:31 +0100] rev 1885
replaced normal panel with scrolled panel under project properties
Surkov Sergey <surkovsv93@gmail.com> [Tue, 05 Dec 2017 12:38:04 +0300] rev 1884
fix missing root in empty search results panel
Surkov Sergey <surkovsv93@gmail.com> [Mon, 04 Dec 2017 19:35:31 +0300] rev 1883
add possibility to specify subprocess stdout encoding
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Mon, 04 Dec 2017 11:20:46 +0300] rev 1882
fix deadlock if method kill() is called after process is already finished
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Wed, 25 Oct 2017 13:50:26 +0300] rev 1881
fix pylint py3k conversion warning: "(no-absolute-import) import missing `from __future__ import absolute_import`"
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Mon, 23 Oct 2017 18:25:45 +0300] rev 1880
make CanFestival to be at the expected place in bitbucket pipelines container
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Thu, 19 Oct 2017 13:33:01 +0300] rev 1879
fix pylint error '(unsubscriptable-object) Value 'X' is unsubscriptable'
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Thu, 19 Oct 2017 11:03:03 +0300] rev 1878
fix pylint warning '(bad-continuation) Wrong hanging indentation before block'
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Thu, 19 Oct 2017 10:57:35 +0300] rev 1877
force all python source code to have LF line ending
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Wed, 18 Oct 2017 12:23:19 +0300] rev 1876
fix pylint warning '(expression-not-assigned) Expression "X" is assigned to nothing'
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Tue, 17 Oct 2017 11:29:20 +0300] rev 1875
fix pylint warning '(redefine-in-handler) Redefining name 'X' from outer scope (line Y) in exception handler'
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Tue, 17 Oct 2017 11:09:01 +0300] rev 1874
fix displaying result of update check during Beremiz startup
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Tue, 17 Oct 2017 09:51:43 +0300] rev 1873
fix pylint warning '(no-init) Class has no __init__ method'
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Mon, 16 Oct 2017 17:20:31 +0300] rev 1872
fix pylint error "(undefined-variable) Undefined variable 'X'"
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 13 Oct 2017 13:17:42 +0300] rev 1871
fix problem happend when tests are running under python-coverage
$ python-coverage run ./tests/tools/test_application.py
Exception while connecting LOCAL://!
Traceback (most recent call last):
File "/home/developer/WorkData/PLC/beremiz/beremiz/ProjectController.py", line 1753, in _Connect
self._SetConnector(connectors.ConnectorFactory(uri, self)
File "/home/developer/WorkData/PLC/beremiz/beremiz/ProjectController.py", line 1702, in _SetConnector
if connector is not None:
PyAssertionError: C++ assertion "m_window" failed at ../src/gtk/dcclient.cpp(2043) in DoGetSize(): GetSize() doesn't work without window
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Thu, 12 Oct 2017 16:18:05 +0300] rev 1870
fix pylint error '(too-many-function-args) Too many positional arguments for function call'
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Wed, 11 Oct 2017 13:55:56 +0300] rev 1869
fix pylint error '(import-error) Unable to import X'
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Wed, 11 Oct 2017 13:15:21 +0300] rev 1868
fix pylint error '(no-self-argument) Method should have "self" as first argument'
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Wed, 11 Oct 2017 11:54:55 +0300] rev 1867
fix pylint error "(no-name-in-module) No name 'X' in module 'Y'"
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Wed, 11 Oct 2017 11:41:32 +0300] rev 1866
fix pylint error '(bad-except-order) Bad except clauses order (X is an ancestor class of Y)'
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Wed, 11 Oct 2017 11:35:19 +0300] rev 1865
fix pylint warning "(no-value-for-parameter) No value for argument 'X' in function call"
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Wed, 11 Oct 2017 10:34:45 +0300] rev 1864
fix problems with unconnected input of InOut function variables and
enfoce InOut variables to be connected for functions and function blocks
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Tue, 10 Oct 2017 16:38:57 +0300] rev 1863
fix error for functions with VAR_IN_OUT
The problem was found by pylint '(used-before-assignment) Using variable "X" before assignment'
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Tue, 10 Oct 2017 14:01:46 +0300] rev 1862
fix pylint warning '(unidiomatic-typecheck) Using type() instead of isinstance() for a typecheck'
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Tue, 10 Oct 2017 13:49:13 +0300] rev 1861
fix pylint warning '(misplaced-bare-raise) The raise statement is not inside an except clause'
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Tue, 10 Oct 2017 13:43:55 +0300] rev 1860
fix format string argument error found by pylint '(too-many-format-args) Too many arguments for format string'
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Tue, 10 Oct 2017 13:33:46 +0300] rev 1859
fix pylint warning '(wrong-import-position) Import "import X" should be placed at the top of the module'
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Tue, 10 Oct 2017 13:21:48 +0300] rev 1858
fix pylint warning '(import-self) Module import itself'
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Tue, 10 Oct 2017 12:50:10 +0300] rev 1857
remove old code useless code found by pylint "(unnecessary-pass) Unnecessary pass statement"
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Tue, 10 Oct 2017 12:34:50 +0300] rev 1856
fix error found by pylint 'W0104(pointless-statement) Statement seems to have no effect'
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Tue, 10 Oct 2017 12:21:46 +0300] rev 1855
fix pylint warning "(undefined-loop-variable) Using possibly undefined loop variable 'X'"
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Tue, 10 Oct 2017 11:58:30 +0300] rev 1854
fix pylint warning 'C0112(empty-docstring) Empty function docstring'
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Mon, 09 Oct 2017 18:13:26 +0300] rev 1853
fix pylint warning "(relative-import) Relative import 'Y', should be 'X.Y'"
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Mon, 09 Oct 2017 16:04:39 +0300] rev 1852
fix pylint warning '(dangerous-default-value) Dangerous default value {} as argument'
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Mon, 09 Oct 2017 12:30:14 +0300] rev 1851
fix pylint warning '(old-style-class) Old-style class defined.'
This warning is ignored for classes from PyJSLib, because library
overrides base object class.
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 06 Oct 2017 17:52:34 +0300] rev 1850
fix pylint warning '(unused-import), Unused import connectors'
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Thu, 05 Oct 2017 16:46:29 +0300] rev 1849
fix typos
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Thu, 05 Oct 2017 16:41:31 +0300] rev 1848
comment out unused code SFC_Step.RefreshBoundingBox()
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Thu, 05 Oct 2017 16:38:49 +0300] rev 1847
explicitly mark unused variables found by pylint with _ or dummy
pylint don't ignores unused variables with '_' in the name, even when
they are started with '_'. This bug is already fixed upstream, to fix
this in all versions of pylint custom dummy-variables-rgx is used
'_+$|(_[a-zA-Z0-9_]*[a-zA-Z0-9]+?$)|dummy'
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Tue, 03 Oct 2017 16:31:31 +0300] rev 1846
remove unused variables found by pylint
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Tue, 03 Oct 2017 16:12:55 +0300] rev 1845
update .PHONE target in Makefile for mki18n.py
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Tue, 03 Oct 2017 16:08:40 +0300] rev 1844
make mki18n return 0 on success
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Tue, 03 Oct 2017 16:08:00 +0300] rev 1843
update list with files for internatialization, app.fil
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Tue, 03 Oct 2017 16:07:02 +0300] rev 1842
move README content to Makefile
It's not necessary to copy commands from README anymore. Just use
'make source_list', 'make template' or 'make locales'.
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Mon, 02 Oct 2017 13:19:06 +0300] rev 1841
fix pylint warning '(global-variable-not-assigned) Using global for 'X' but no assignment is done'
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Mon, 02 Oct 2017 12:43:01 +0300] rev 1840
fix pylint error '(function-redefined) method already defined'
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 29 Sep 2017 16:48:42 +0300] rev 1839
fix pylint warning '(unreachable) Unreachable code'
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 29 Sep 2017 16:39:52 +0300] rev 1838
fix pylint warning (bad-indentation) Bad indentation. Found X spaces, expected Y
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 29 Sep 2017 16:26:15 +0300] rev 1837
fix pylint warning '(pointless-string-statement) String statement has no effect'
Python doesn't support docstring for variables directly. Where
appropriate Sphinx style for docstrings for variables is used
'#: some-docstring'
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 29 Sep 2017 15:36:33 +0300] rev 1836
fix error __init__ method from base class is not called
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Thu, 28 Sep 2017 17:24:33 +0300] rev 1835
fix more than one statement on a single line
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Thu, 28 Sep 2017 17:20:31 +0300] rev 1834
fix ungrouped imports from package X
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Thu, 28 Sep 2017 16:25:05 +0300] rev 1833
fix unnecessary lambda and enable corresponding pylint check
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Thu, 28 Sep 2017 15:17:57 +0300] rev 1832
fix wrong-import-order. first standard modules are imported, then others
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Thu, 28 Sep 2017 12:20:40 +0300] rev 1831
fix (old-style-class) Old-style class defined error for most parts of
the code
only PyJS code is left, because it does some fancy tricks and can't be
easily fixed. So far PyJS doesn't support Python3 anyway.
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 22 Sep 2017 20:12:22 +0300] rev 1830
remove in-tree version of Zeroconf and use upstream from
python-zeroconf package
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 22 Sep 2017 18:06:15 +0300] rev 1829
remove reimported modules
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 22 Sep 2017 16:37:38 +0300] rev 1828
fix unnecessary parens after keyword
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 22 Sep 2017 10:57:57 +0300] rev 1827
enable pylint checker
so far only print statement is checked
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 22 Sep 2017 10:54:42 +0300] rev 1826
fix usage of python2-only print statement
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 22 Sep 2017 10:52:44 +0300] rev 1825
run python tests with non-english locale to catch bugs related to localization
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Thu, 21 Sep 2017 17:19:18 +0300] rev 1824
make it possible to update XSD schema in project controller after new
target PLC is added or removed.
For example:
...
import targets
targets.targets["PLC"] = {"xsd": os.path.join(self.customBeremizPath, "PLCtarget", xsd),
"class": lambda: PLC_target,
"code": {"plc_PLC_main.c": os.path.join(self.customBeremizPath, "PLCtarget", "plc_PLC_main.c")}
}
from ProjectController import ProjectController, GetProjectControllerXSD
ProjectController.XSD = GetProjectControllerXSD()
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Thu, 21 Sep 2017 16:06:51 +0300] rev 1823
fix commit "lazy initialization of highlight pens and brushes
for DebugVariableViewer" (5562f34f)
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Thu, 21 Sep 2017 15:04:15 +0300] rev 1822
clean build example project after running test
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Thu, 21 Sep 2017 15:02:36 +0300] rev 1821
fix problem if DataTypeEditor was imported before localization is
loaded
That doesn't affect systems with english locales.
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Sat, 16 Sep 2017 21:26:17 +0300] rev 1820
add shell script to run all python tests and automatically handle Xvfb
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Sat, 16 Sep 2017 21:24:22 +0300] rev 1819
add PLCOpenEditor tests
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Sat, 16 Sep 2017 21:22:53 +0300] rev 1818
run application tests in full screen mode
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Sat, 16 Sep 2017 21:22:06 +0300] rev 1817
clean sys.argv, because if test is running from pytest
sys.argv contains string "pytest --timeout 0 ./tests/tools"
Beremiz application parses it and throws exception.
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Sat, 16 Sep 2017 21:19:19 +0300] rev 1816
rework Beremiz application "testCheckProject" test to allow easier reuse later
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Sat, 16 Sep 2017 21:04:34 +0300] rev 1815
add application name for PLCOpenEditor
This is needed to work user configuration load/store, if PLCOpenEditor
is launched from test environment.
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 15 Sep 2017 20:30:24 +0300] rev 1814
rewrite PLCOpenEditor. Add PLCOpenEditorApp class for easier customizations.
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 15 Sep 2017 20:28:54 +0300] rev 1813
lazy locale initialization
wx.Locale() can't be called without wx.App. So don't call it at
import. It makes PLCOpenEditor simpler.
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 15 Sep 2017 20:05:41 +0300] rev 1812
use CustomIntCtrl instead of wx.SpinCtrl because it doesn't support
long integer needed for UDINT, (U)LINT types.
This commit complements commit 74a3f4d "fix LINT and ULINT ranges".
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 15 Sep 2017 20:01:21 +0300] rev 1811
add custom TextCtrl allowed to enter long integer with bounds checking
It's needed because wx.SpinCtrl supports only 'int' type. For UDINT
and (U)LINT long type is necessary.
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 15 Sep 2017 19:53:49 +0300] rev 1810
use pytest for testing
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 15 Sep 2017 19:51:31 +0300] rev 1809
run separate test on every project instead of one big long test all projects
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 15 Sep 2017 19:45:41 +0300] rev 1808
move configuration for test environment into separate file conftest.py
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 15 Sep 2017 19:01:31 +0300] rev 1807
lazy initialization of highlight pens and brushes for DebugVariableViewer
Constructors wx.Pen() and wx.Brush() require wx.App to exist already.
That causes crash during import of the control,
because import is done before calling main application code.
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 15 Sep 2017 18:57:20 +0300] rev 1806
add '_' function to builtin dictionary at import time
This allows to import many Beremiz python modules before calling
util.misc.InstallLocalRessources().
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 15 Sep 2017 18:51:42 +0300] rev 1805
remove builtin BMZ_DBG. It's not used.
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Wed, 13 Sep 2017 15:39:48 +0300] rev 1804
update translation strings
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Wed, 13 Sep 2017 15:35:43 +0300] rev 1803
updated all existing translations
added new languages: Portuguese (Portugal), Italian, Hungarian,
Spanish and Bengali. See version.py for information about translators.
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Wed, 13 Sep 2017 10:18:04 +0300] rev 1802
fix LINT and ULINT ranges
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Tue, 12 Sep 2017 18:32:13 +0300] rev 1801
found installed Inkscape on Windows
tested with Inkscape version 0.9 on Windows 7.
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Tue, 12 Sep 2017 16:49:35 +0300] rev 1800
make possible to turn off at compile time online debugging, logging
and external sync functionality
Defines TARGET_DEBUG_DISABLE, TARGET_LOGGING_DISABLE, TARGET_EXT_SYNC_DISABLE
allow to use generated PLC code in low-cost microcontrollers,
integrate into external programs and so on.
main.c:
extern void __run(void);
int main(void)
{
for(;;) {
__run();
// sleep common_ticktime__ ns
// add common_ticktime__ ns to __CURRENT_TIME
}
return 0;
}
Compile for example for arm bare-metal:
../build$ arm-none-eabi-gcc \
-DTARGET_DEBUG_DISABLE -DTARGET_LOGGER_DISABLE
-DTARGET_EXT_SYNC_DISABLE \
-flto -ffunction-sections -fdata-sections -I../../../../matiec/lib/C \
*.c \
-nodefaultlibs --specs=nano.specs -Wl,--static -Wl,--gc-section -Wl,--start-group -lc -lm -lnosys -lgcc -Wl,--end-group
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Tue, 12 Sep 2017 14:22:17 +0300] rev 1799
make default caption for PouNameDialog translatable
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Tue, 12 Sep 2017 14:18:50 +0300] rev 1798
fix max value for UDINT and ULINT types
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Tue, 12 Sep 2017 14:13:39 +0300] rev 1797
update Build icon
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Tue, 12 Sep 2017 10:21:51 +0300] rev 1796
add couple Beremiz application tests
These tests trigger around 45% of python code.
Used in tests docker files are avaiable here:
https://bitbucket.org/skvorl/beremiz-dockerfiles
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 08 Sep 2017 11:53:48 +0300] rev 1795
fix problem if _should_write is called by expired timer after
termination of wx application.
Sergey Surkov <surkovsv93@gmail.com> [Mon, 28 Aug 2017 10:49:53 +0000] rev 1794
Initial Bitbucket Pipelines configuration
Surkov Sergey <surkovsv93@gmail.com> [Mon, 28 Aug 2017 13:43:46 +0300] rev 1793
fix bug with unfinished debug thread
this bug occurs when user doesn't stop debugging process in current project, and opens another project
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 25 Aug 2017 14:01:44 +0300] rev 1792
unify exception handling of Beremiz and PLCOpenEditor
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 25 Aug 2017 12:23:45 +0300] rev 1791
fix problem running PLCOpenEditor
$ ./PLCOpenEditor.py
../src/common/stdpbase.cpp(62): assert "traits" failed in Get(): create wxApp before calling this
Regression was introduced by '3311eea' (clean-up: fix PEP8 E402 module level import not at top of file)
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 25 Aug 2017 12:01:23 +0300] rev 1790
don't check any particular wx version
Beremiz works with any version of wx.
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 25 Aug 2017 11:22:08 +0300] rev 1789
fix problem when Beremiz is running without matiec installed
set matiec settings only once on first use of ProjectController class and give
user-friendly message on compilation about missing matiec
installation.
Traceback (most recent call last):
File "Beremiz.py", line 197, in <module>
beremiz.Start()
File "Beremiz.py", line 192, in Start
self.CreateApplication()
File "Beremiz.py", line 130, in CreateApplication
self.BackgroundInitialization()
File "Beremiz.py", line 137, in BackgroundInitialization
self.ImportModules()
File "Beremiz.py", line 176, in ImportModules
import BeremizIDE
File
"BeremizIDE.py", line 76, in <module>
from ProjectController import ProjectController, GetAddMenuItems,
MATIEC_ERROR_MODEL, ITEM_CONFNODE
File
"ProjectController.py", line 177, in <module>
iec2c_cfg = Iec2CSettings()
File
"ProjectController.py", line 101, in __init__
self.ieclib_c_path = self.findLibCPath()
File
"ProjectController.py", line 135, in findLibCPath
os.path.join(self.ieclib_path, "C"),
File "/usr/lib/python2.7/posixpath.py", line 70, in join
elif path == '' or path.endswith('/'):
AttributeError: 'NoneType' object has no attribute 'endswith'
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Tue, 22 Aug 2017 14:15:49 +0000] rev 1788
Initial Bitbucket Pipelines configuration
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Tue, 22 Aug 2017 17:14:40 +0300] rev 1787
add configuration for Bitbucket pipelines
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Tue, 22 Aug 2017 17:14:08 +0300] rev 1786
add shell script to test Beremiz python code
currently only codestyle checking is done using pycodestyle (ex-pep8).
Later checks by flake8 and pylint maybe enabled.
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Tue, 22 Aug 2017 12:45:06 +0300] rev 1785
clean-up: fix PEP8 W503 line break before binary operator
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Mon, 21 Aug 2017 23:22:58 +0300] rev 1784
fix codestyle issues according to PEP8
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Mon, 21 Aug 2017 22:41:37 +0300] rev 1783
clean-up: fix PEP8 E402 module level import not at top of file
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Mon, 21 Aug 2017 21:55:18 +0300] rev 1782
clean-up: fix PEP8 E265 block comment should start with '# '
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Sat, 19 Aug 2017 21:06:54 +0300] rev 1781
clean-up: fix PEP8 E266 too many leading '#' for block comment
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Sat, 19 Aug 2017 18:12:20 +0300] rev 1780
clean-up: fix PEP8 E722 do not use bare except'
better it'd be to use particular exception instead of 'except Exception'.
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Sat, 19 Aug 2017 17:17:54 +0300] rev 1779
clean-up: fix PEP8 E115 expected an indented block (comment)
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Sat, 19 Aug 2017 17:12:12 +0300] rev 1778
clean-up: fix PEP8 E721 do not compare types, use 'isinstance()'
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Sat, 19 Aug 2017 17:04:31 +0300] rev 1777
clean-up: fix PEP8 E131 continuation line unaligned for hanging indent
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Sat, 19 Aug 2017 16:45:37 +0300] rev 1776
clean-up: fix PEP8 E122 continuation line missing indentation or outdented
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Sat, 19 Aug 2017 16:30:15 +0300] rev 1775
clean-up: fix PEP8 E713 test for membership should be 'not in'
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Sat, 19 Aug 2017 01:11:27 +0300] rev 1774
clean-up: fix PEP8 E272 multiple spaces before keyword
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Sat, 19 Aug 2017 00:58:44 +0300] rev 1773
clean-up: fix PEP8 E124 closing bracket does not match visual indentation
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Sat, 19 Aug 2017 00:30:22 +0300] rev 1772
clean-up: fix PEP8 W191 indentation contains tabs
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Sat, 19 Aug 2017 00:11:12 +0300] rev 1771
clean-up: fix PEP8 E211 whitespace before '[' or '('
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Sat, 19 Aug 2017 00:04:33 +0300] rev 1770
clean-up: fix PEP8 E114 indentation is not a multiple of four (comment)
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 18 Aug 2017 23:39:15 +0300] rev 1769
clean-up: fix PEP8 E125 continuation line with same indent as next logical line
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 18 Aug 2017 20:14:38 +0300] rev 1768
clean-up: fix PEP8 E128 continuation line under-indented for visual indent
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Fri, 18 Aug 2017 12:36:31 +0300] rev 1767
clean-up: fix PEP8 E127 continuation line over-indented for visual indent
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Thu, 17 Aug 2017 17:25:17 +0300] rev 1766
clean-up: fix PEP8 E129 visually indented line with same indent as next logical line
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Thu, 17 Aug 2017 16:26:32 +0300] rev 1765
clean-up: fix PEP8 W602 deprecated form of raising exception
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Thu, 17 Aug 2017 15:43:25 +0300] rev 1764
clean-up: fix PEP8 E502 the backslash is redundant between brackets
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Thu, 17 Aug 2017 14:27:06 +0300] rev 1763
clean-up: fix PEP8 W601 .has_key() is deprecated, use 'in'
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Thu, 17 Aug 2017 11:39:10 +0300] rev 1762
clean-up: fix PEP8 E731 do not assign a lambda expression, use a def
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Thu, 17 Aug 2017 10:12:04 +0300] rev 1761
clean-up: fix PEP8 E203 whitespace before ','
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Thu, 17 Aug 2017 10:08:23 +0300] rev 1760
clean-up: fix PEP8 E262 inline comment should start with '# '
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Thu, 17 Aug 2017 10:04:24 +0300] rev 1759
clean-up: fix PEP8 E712 comparison to True should be 'if cond is True:' or 'if cond:'
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Thu, 17 Aug 2017 09:55:39 +0300] rev 1758
clean-up: fix PEP8 E222 multiple spaces after operator
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Wed, 16 Aug 2017 17:27:58 +0300] rev 1757
clean-up: fix PEP8 E111 indentation is not a multiple of four
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Wed, 16 Aug 2017 16:37:45 +0300] rev 1756
clean-up: fix PEP8 E701 multiple statements on one line (colon)
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Wed, 16 Aug 2017 15:18:57 +0300] rev 1755
clean-up: fix PEP8 E741 ambiguous variable name
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Wed, 16 Aug 2017 13:56:36 +0300] rev 1754
clean-up: fix most PEP8 E221 multiple spaces before operator
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Wed, 16 Aug 2017 13:49:02 +0300] rev 1753
clean-up: fix most PEP8 E266 too many leading '#' for block comment
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Wed, 16 Aug 2017 13:01:13 +0300] rev 1752
clean-up: fix PEP8 E703 statement ends with a semicolon
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Wed, 16 Aug 2017 12:57:52 +0300] rev 1751
clean-up: fix PEP8 E301 expected 1 blank line, found 0
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Wed, 16 Aug 2017 12:53:23 +0300] rev 1750
clean-up: fix PEP8 E306 expected 1 blank line before a nested definition, found X
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Wed, 16 Aug 2017 12:48:08 +0300] rev 1749
clean-up: fix PEP8 E305 expected 2 blank lines after class or function definition
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Wed, 16 Aug 2017 12:30:31 +0300] rev 1748
clean-up: fix PEP8 W391 blank line at end of file
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Wed, 16 Aug 2017 12:21:05 +0300] rev 1747
clean-up: fix PEP8 E201 whitespace after '{'
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Wed, 16 Aug 2017 12:03:46 +0300] rev 1746
clean-up: fix PEP8 E202 whitespace before ')'
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Wed, 16 Aug 2017 11:47:27 +0300] rev 1745
clean-up: fix PEP8 E227 missing whitespace around bitwise or shift operator
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Tue, 15 Aug 2017 22:38:43 +0300] rev 1744
clean-up: fix PEP8 E251 unexpected spaces around keyword / parameter equals
Andrey Skvortsov <andrej.skvortzov@gmail.com> [Tue, 15 Aug 2017 17:01:51 +0300] rev 1743
clean-up: fix PEP8 E711 comparison to None should be 'if cond is not None:'