Good contributions, but not exactly what I expected.
How about the versioning tips/bullits? We should start with crawling before we run
We can start a WIKI in cforge called "Developer guide & tips" which can contain a compendium of good practices like versioning tips, coding style tips etc etc.
-All developers should stick to one version of the development environment to avoid any confusion (not only for libraries). Offcourse, users can use any version.
In any case, the user must know project (library) format before download. This format must be one for target device (RPi3, ...).
- "used compiler version" and "project file format" are different things. You can e.g. use 22.214.171.124 version as compiler but e.g. 126.96.36.199 version for the project file format.
- As long as your project is not finished, stick to the chosen version of compiler and project format;
- for RTS_IEC_HANDLE and RTS_IEC_RESULT types need to add SysTypes2 Interfaces (188.8.131.52);
- if possible, use standard error codes (CmpErrors or CmpErrors2 Interfaces);
- avoid using dynamic memory (the usage of __NEW operator);
- use the ST language whenever possible (ST is by far the most versatile language, in which all operations, manipulations and functions are possible);
- document the source code (add meaningful comments);
- for modern coding style advice: read the Codesys v3 library development tips as provided in codesys help - guidelines for creating libraries
They are pretty good but, but not as thorough as "code complete" but provide a very good starting point.
Further reading: e.g. Steve McConnell "Code Complete";