<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"><channel><title>Ticket search results</title><link>https://forge.codesys.com/tol/cforge/tickets/</link><description>You searched for status:wont-fix or status:closed</description><language>en</language><lastBuildDate>Tue, 02 Jul 2024 08:47:18 -0000</lastBuildDate><item><title>markdown script nullreference exception</title><link>https://forge.codesys.com/tol/cforge/tickets/33/</link><description>Hi, 

I´m planning to use cforge for my new project and now I´m facing some issues with the markdown script.

I have a minimal project I wanted to check the cforge functionalities with.
I created a package first and then I wanted to build it to see the markdown output.

The markdown script ends with the error "exception System.NullReferenceException: Traceback" in line 36 of the python file.

Am I using it wrong or is this a known "feature"?

I appreciate any help you can provide.

Regards,
mase

</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">mase</dc:creator><pubDate>Tue, 02 Jul 2024 08:47:18 -0000</pubDate><guid isPermaLink="false">https://forge.codesys.com/tol/cforge/tickets/33/</guid></item><item><title>Create use "step by step" usecase based documentation for CFORGE tool</title><link>https://forge.codesys.com/tol/cforge/tickets/32/</link><description>Hi,

I use CODESYS FORGE a long time now. However, I have not used the CFORGE Tool much during this time. Personally I think this is a due to lack of a proper documentation of a workflow in combining the CFORGE TOOL with CODESYS IDE and SVN (or git in the future).

Is it possible to create a diagram or some text to explain use cases like "How to sync your CFORGE SVN Repo using CODESYS Forge Tool" or "How to create a Package". I hope you consider this feedback as I think the tool itself could save us a lot of time. 

PS I can help in providing test-feedback during development of IEC SparkPlugB Payload for CODESYS based controllers which is coming along real nice now.

With kind regards,


Haico

</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">hermsen</dc:creator><pubDate>Sun, 20 Dec 2020 16:22:47 -0000</pubDate><guid isPermaLink="false">https://forge.codesys.com/tol/cforge/tickets/32/</guid></item><item><title>Checkout with cforge not working on large repos</title><link>https://forge.codesys.com/tol/cforge/tickets/30/</link><description>When checking out a large repo, e.g. using the checkout with cforge button, it gets to [this line](https://forge.codesys.com/tol/cforge/code/HEAD/tree/trunk/cforge/cforge/Package/CFORGE/Scripts/pysvn.py#l25) then gives the message 
~~~
svn: E175009: The XML response contains invalid XML
svn: E130003: Malformed XML: no element found at line 1
~~~
Experimenting  at [mqttsparkplugb#48](https://forge.codesys.com/prj/mqttsparkplugb/tickets/48/#) with the below command in command prompt shows that the problem is the server times out after 30 seconds during the list generarion, and instead sends a TCP FIN ACK

~~~
svn list  -R https://forge.codesys.com/svn/prj,mqttsparkplugb,code/
~~~

Question: is there a server side setting or client side setting to allow the svn list -R command on large repositories? Or if you like I or someone else could rewrite the script to be a bit more gentle?</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">i-campbell</dc:creator><pubDate>Tue, 25 Aug 2020 11:51:27 -0000</pubDate><guid isPermaLink="false">https://forge.codesys.com/tol/cforge/tickets/30/</guid></item><item><title>CFORGE Tool doesn't work with SP16</title><link>https://forge.codesys.com/tol/cforge/tickets/29/</link><description></description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Ingo</dc:creator><pubDate>Tue, 25 Aug 2020 11:47:42 -0000</pubDate><guid isPermaLink="false">https://forge.codesys.com/tol/cforge/tickets/29/</guid></item><item><title>Android: Product News Page opened in App gives errors</title><link>https://forge.codesys.com/tol/cforge/tickets/26/</link><description>In the app, go to Product News, click CODESYS Store under the Profiler news item.
IS:
"Webpage not available
The webpage at http://store.codesys.com/ could not be loaded because:

net::ERR_CLEARTEXT_NOT_PERMITTED"
THEN:
press back, navigate to some page you haven't been before
IS:
"Webpage not available
The webpage at https://forge.codesys.com/forge/news/2020/02/app-update/ could not be loaded because:

net::ERR_CACHE_MISS"
THEN:
Wait 5 min or so. Links work again

SHOULD:
1. Some sort of error handling so permission errors with webview don't lock other links for 5minutes.
2. Forge product news should be sanitized to not break the app. Maybe https would fix it?</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">i-campbell</dc:creator><pubDate>Fri, 21 Feb 2020 00:30:47 -0000</pubDate><guid isPermaLink="false">https://forge.codesys.com/tol/cforge/tickets/26/</guid></item><item><title>Cannot find Product News</title><link>https://forge.codesys.com/tol/cforge/tickets/25/</link><description>I had downloaded the APK a few nights ago (say 15/Feb) and installed the app
Today (19/Feb) I:
Deleted original APK
Android Settings &gt; Apps &gt; CODESYS Forge &gt; clear data + clear cache + uninstall
Downloaded new APK from link in the News Post
Installed
Android Settings &gt; Apps &gt; CODESYS Forge &gt; Says "Version 20200208"
==&gt; IS: can't find Product News
==&gt; SHOULD: can find Product News</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">i-campbell</dc:creator><pubDate>Fri, 21 Feb 2020 15:08:50 -0000</pubDate><guid isPermaLink="false">https://forge.codesys.com/tol/cforge/tickets/25/</guid></item><item><title>Logging out and reopening the app causes to be logged in again</title><link>https://forge.codesys.com/tol/cforge/tickets/24/</link><description>Log out.
Close app,
Open app,
Now you are logged in again.. 

</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">aliazzz</dc:creator><pubDate>Sat, 08 Feb 2020 18:33:37 -0000</pubDate><guid isPermaLink="false">https://forge.codesys.com/tol/cforge/tickets/24/</guid></item><item><title>Upload doesn't work</title><link>https://forge.codesys.com/tol/cforge/tickets/22/</link><description>Upload button is doing nothing.</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Ingo</dc:creator><pubDate>Sat, 08 Feb 2020 20:13:46 -0000</pubDate><guid isPermaLink="false">https://forge.codesys.com/tol/cforge/tickets/22/</guid></item><item><title>Future of cforge package</title><link>https://forge.codesys.com/tol/cforge/tickets/21/</link><description>What do you think about the current structure and handling of the package?

Shouldn't we put the SVN specific commands, and later the Git commands into hooks of Tortoise SVN or Tortoise Git?

Could improve the handling of repositories and the setup enormously in my opinion.

Hope to here some feedback and ideas from you.</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Ingo</dc:creator><pubDate>Thu, 16 Apr 2020 20:08:04 -0000</pubDate><guid isPermaLink="false">https://forge.codesys.com/tol/cforge/tickets/21/</guid></item><item><title>History is wrong when back button is used</title><link>https://forge.codesys.com/tol/cforge/tickets/20/</link><description>To reproduce the error:

* open the app
* click on any link
* press the back button
(remember on which page you are)
* rotate the device
=&gt; you will be on the page before you pressed the back button. But then the back button doesn't work.

This leads to the second problem:
The history is lost after reopening the app.</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Ingo</dc:creator><pubDate>Sat, 11 Jan 2020 01:05:38 -0000</pubDate><guid isPermaLink="false">https://forge.codesys.com/tol/cforge/tickets/20/</guid></item><item><title>Form data is lost in mobile view</title><link>https://forge.codesys.com/tol/cforge/tickets/19/</link><description>Usually allura memorizes form data when you navigate away from a page. But this doesn't work in mobile view at the moment.</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Ingo</dc:creator><pubDate>Sat, 11 Jan 2020 08:26:11 -0000</pubDate><guid isPermaLink="false">https://forge.codesys.com/tol/cforge/tickets/19/</guid></item><item><title>Click on notification should lead to the corresponding page</title><link>https://forge.codesys.com/tol/cforge/tickets/18/</link><description>Clicking on a notification currently just opens the app, but not the desired page.</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Ingo</dc:creator><pubDate>Sat, 11 Jan 2020 20:33:09 -0000</pubDate><guid isPermaLink="false">https://forge.codesys.com/tol/cforge/tickets/18/</guid></item><item><title>The button status should follow the URL</title><link>https://forge.codesys.com/tol/cforge/tickets/17/</link><description>When you click on the buttons, the status changes. But it doesn't when you navigate to those pages otherwise (link, back button, notification).</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Ingo</dc:creator><pubDate>Sat, 11 Jan 2020 20:33:31 -0000</pubDate><guid isPermaLink="false">https://forge.codesys.com/tol/cforge/tickets/17/</guid></item><item><title>Where can I find the version number for Android app?</title><link>https://forge.codesys.com/tol/cforge/tickets/16/</link><description>Is there a way to view the app version from within the app? </description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">aliazzz</dc:creator><pubDate>Tue, 31 Dec 2019 06:10:17 -0000</pubDate><guid isPermaLink="false">https://forge.codesys.com/tol/cforge/tickets/16/</guid></item><item><title>CODESYS Forge needs an icon</title><link>https://forge.codesys.com/tol/cforge/tickets/12/</link><description>Hi, 

This package deserves a outstanding icon instead of the rather crude "hammer" thingie ;-)
I'd suggest something along the lines of a "swiss army knife" icon (hihihi) or a "utility icon". Yhough I approach the topic with humor, I also mean what I say, just take a look at my attachments.

Aliazzz</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">aliazzz</dc:creator><pubDate>Fri, 31 Jan 2020 22:01:27 -0000</pubDate><guid isPermaLink="false">https://forge.codesys.com/tol/cforge/tickets/12/</guid></item><item><title>adding a "generate-chm.py" command to CFORGE</title><link>https://forge.codesys.com/tol/cforge/tickets/11/</link><description>I posted a little bootstrapper for CFORGE to detect svn.exe 
+ add LibDoc.exe path to the environment variables. 

Via libdoc.exe @ C:\Program Files\CODESYS 3.5.14.0\CODESYS\DocScripting\3.5.14.0 we can implement one or several toolchain commands to make life more easy. My basic idea is to to add a “generate-chm.py” command to extend CFORGE with a “generate chm from library” command. 
Then we (community) can add a automagicly generate .chm files from a library/project with and add them to our .package as end-user  documentation =&gt; very sweet 😊 
Check out the the “Script your documentation” section of CODESYS help for all details as this depends on IronPython scripting against CODESYS and LibDoc.exe =&gt; CFORGE is ideally suited for this! 

PS offcourse I can contribute on implementation.
</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">aliazzz</dc:creator><pubDate>Mon, 03 Feb 2020 22:26:24 -0000</pubDate><guid isPermaLink="false">https://forge.codesys.com/tol/cforge/tickets/11/</guid></item><item><title>attachments to ticket 9</title><link>https://forge.codesys.com/tol/cforge/tickets/10/</link><description>attachments to ticket #9</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">aliazzz</dc:creator><pubDate>Tue, 03 Dec 2019 15:52:58 -0000</pubDate><guid isPermaLink="false">https://forge.codesys.com/tol/cforge/tickets/10/</guid></item><item><title>Draft for better bootstrapping and checking prerequisits</title><link>https://forge.codesys.com/tol/cforge/tickets/9/</link><description>I extended cForge helper class with a bootstrapper to detect SVN installation and to add the LibDoc.exe to the PATH environmentvariables. Offcourse its written in similair style to the excisting code.

Here are my code snippets;

In Program.cs edit case setup to call the bootstrapper;

~~~
case "--setup":
                        if (!Helper.IsUserElevated())
                        {
                            Console.WriteLine("[INFO] Setup URL Handler and add tool to path. ");
                            Helper.RunElevated("--setup");

                        }
                        else
                        {
                            /// bootstrapper 
                            Helper.bootstrap(bDebug);
                            Helper.RegisterProtocol(bDebug);
                            Helper.AddToSystemPath(bDebug);
                        }
                        break;
~~~


And extend SystemPath region in Helper.cs with Bootstrapper;
~~~

        #region SystemPath

        public static void AddToSystemPath(bool bVerbose)
        {
            string strPath = System.Environment.GetEnvironmentVariable("Path", EnvironmentVariableTarget.Machine);
            string[] split = strPath.Split(new Char[] { ';' });
            string path = Path.GetDirectoryName(GetCFORGEAssemblyPath());
            string strNewSystemPath = strPath + ";" + path;

            if (!split.Contains(path))
            {
                System.Environment.SetEnvironmentVariable("Path", strNewSystemPath, EnvironmentVariableTarget.Machine);
            }

 
        }


        public static void bootstrap(bool bVerbose)
        {
            /// bootstrapper 
            /// warning for svn.exe if not present
            string exepath = Helper.FindExePath("svn.exe");
            if (exepath == String.Empty)
            {
                Console.WriteLine("[WARNING] Please install Turtoise SVN with command line client option!");
            }
            else
            {
                Console.WriteLine("[INFO] Turtoise SVN detected. \r\n\tPath is: " + exepath);
                exepath = String.Empty;
            }

            /// add libdoc.exe to path to enable CODESYS libdocscripting (TODO expand this section)
            exepath = Helper.FindExePath("libdoc.exe");
            string strPath = System.Environment.GetEnvironmentVariable("Path", EnvironmentVariableTarget.Machine);
            string path = String.Empty;
            string strNewSystemPath = String.Empty;
            if (exepath == String.Empty)
            {
                /// add path to: "C:\Program Files\CODESYS 3.5.14.0\CODESYS\DocScripting\3.5.14.0"
                /// for now quick and dirty =&gt; should become dynamic 
                path = "C:\\Program Files\\CODESYS 3.5.14.0\\CODESYS\\DocScripting\\3.5.14.0";
                strNewSystemPath = strPath + ";" + path;
                System.Environment.SetEnvironmentVariable("Path", strNewSystemPath, EnvironmentVariableTarget.Machine);
                Console.WriteLine("[INFO] Environmentvariable for DocScripting added:  \r\n\tPath is: " + path);
            }
            else
            {
                Console.WriteLine("[INFO] DocScripting detected. \r\n\tPath is: " + exepath);
                exepath = String.Empty;
            }


        }


            /// &lt;summary&gt;
            /// Expands environment variables and, if unqualified, locates the exe in the working directory
            /// or the evironment's path.
            /// &lt;/summary&gt;
            /// &lt;param name="exe"&gt;The name of the executable file&lt;/param&gt;
            /// &lt;returns&gt;The fully-qualified path to the file&lt;/returns&gt;
            /// &lt;exception cref="System.IO.FileNotFoundException"&gt;Raised when the exe was not found&lt;/exception&gt;
            public static string FindExePath(string exe)
        {
            exe = Environment.ExpandEnvironmentVariables(exe);
            if (!File.Exists(exe))
            {
                if (Path.GetDirectoryName(exe) == String.Empty)
                {
                    foreach (string test in (Environment.GetEnvironmentVariable("PATH") ?? "").Split(';'))
                    {
                        string path = test.Trim();
                        if (!String.IsNullOrEmpty(path) &amp;&amp; File.Exists(path = Path.Combine(path, exe)))
                            return Path.GetFullPath(path);
                    }
                }
                return String.Empty;
                /// throw new FileNotFoundException(new FileNotFoundException().Message, exe);
            }
            return Path.GetFullPath(exe);
        }

        #endregion
~~~



</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">aliazzz</dc:creator><pubDate>Tue, 03 Dec 2019 04:19:15 -0000</pubDate><guid isPermaLink="false">https://forge.codesys.com/tol/cforge/tickets/9/</guid></item><item><title>cForge installation on latest Win10 x64</title><link>https://forge.codesys.com/tol/cforge/tickets/8/</link><description>Hi,

It seems that the cForge package does not work correct on my (virtual) x64 devbox. The package itself installs to path *"C:\Program Files\CODESYS 3.5.14.0\CODESYS\CFORGE"*
However, the setup.bat in that directory will not run correct as it returns;
*"Setup cforge"
The system cannot find the file C:\Program Files\CODESYS 3.5.14.0\CODESYS\CFORGE\cforge.exe --setup.
Press any key to continue . . .*


Offcourse I tried to edit the path in the .bat file with elevated rights but it had no effect. Also, manually merging the setup.reg seems to work, but when I use the Checkout Function, all seems fine, however after some time the commandline starts to tell me that it cannot find SVN:
[INFO] Executing: C:\Program Files\CODESYS 3.5.14.0\CODESYS\CFORGE\Scripts\checkout.py

*--checkout
https://forge.codesys.com/svn/drv,mega-io,code/
CWD: C:\Users\user\AppData\Local\Chromium\Application\71.0.3578.98
User elevated: False
default case: --checkout

[INFO] Executing: C:\Program Files\CODESYS 3.5.14.0\CODESYS\CFORGE\Scripts\checkout.py

C:\Program Files\CODESYS 3.5.14.0\CODESYS\CFORGE\Scripts\action.svn.checkout.py
running codesys with script C:\Program Files\CODESYS 3.5.14.0\CODESYS\CFORGE\Scripts\action.svn.checkout.py
test
'svn' is not recognized as an internal or external command,
operable program or batch file.
'svn' is not recognized as an internal or external command,
operable program or batch file.
'svn' is not recognized as an internal or external command,
operable program or batch file.
done: 0

----------------------------------------------------------------------------
cforge finished.
----------------------------------------------------------------------------*

*cforge -v* returns v1.0.0.0 while the package is version itself is v1.0.0.11

Can you give me some hints on how to correctly activate cForge? 

</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">aliazzz</dc:creator><pubDate>Sun, 13 Jan 2019 14:34:44 -0000</pubDate><guid isPermaLink="false">https://forge.codesys.com/tol/cforge/tickets/8/</guid></item><item><title>Avoid warnings from URL handlers</title><link>https://forge.codesys.com/tol/cforge/tickets/7/</link><description>There are two warnings produced when clicking on an URL handler:

1. Warning from the browser, that an external App is launched.
This needs to be disabled per browser:
[IE](https://stackoverflow.com/questions/37702082/internet-explorer-or-edge-how-to-display-the-warning-that-appear-if-you-open-c)


2. Execute as Admin
This needs to be avoided in the tool, which doesn't need to have admin rights.</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Ingo</dc:creator><pubDate>Thu, 09 Aug 2018 19:28:40 -0000</pubDate><guid isPermaLink="false">https://forge.codesys.com/tol/cforge/tickets/7/</guid></item><item><title>support context menu entry for common use cases in windows explorer</title><link>https://forge.codesys.com/tol/cforge/tickets/6/</link><description>It is simple to add context menu entries (even with sub-menu and icons). So it would be very convenient to use cforge directly from windows explorer.
</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">erichspitzweg</dc:creator><pubDate>Thu, 09 Aug 2018 19:29:35 -0000</pubDate><guid isPermaLink="false">https://forge.codesys.com/tol/cforge/tickets/6/</guid></item><item><title>Implement checkout</title><link>https://forge.codesys.com/tol/cforge/tickets/5/</link><description>Implementierung a basic cforge checkout action, which checks out CODESYS libraries and projects, and can be used in combination with the links on the website</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Ingo</dc:creator><pubDate>Tue, 15 May 2018 22:22:30 -0000</pubDate><guid isPermaLink="false">https://forge.codesys.com/tol/cforge/tickets/5/</guid></item><item><title>Package Installation doesn't always work</title><link>https://forge.codesys.com/tol/cforge/tickets/4/</link><description>On some systems, there is no default application registered for *.package files. On those systems the installation through cforge doesn't work.</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Ingo</dc:creator><pubDate>Tue, 17 Apr 2018 18:47:37 -0000</pubDate><guid isPermaLink="false">https://forge.codesys.com/tol/cforge/tickets/4/</guid></item><item><title>Repository handling</title><link>https://forge.codesys.com/tol/cforge/tickets/3/</link><description>The repository handling is one of the most trickiest parts of this projects. In a discussion with  erichspitzweg, we discovered the following:

* Instlalled packages need to be tracked locally, as the information can't get easily out of the CODESYS Package Management
* The available packages can be served either by a full repository list (like in debian), or in a distributed way (like with npm).
* When doing it distributed, we could use (as an option) the project url (e.g. 'tol/cforge') as the base URI to find the manifests of dependent packages

With this ticket, the following commands should be implemented:

* list
* install
* remove</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Ingo</dc:creator><pubDate>Fri, 16 Mar 2018 10:31:49 -0000</pubDate><guid isPermaLink="false">https://forge.codesys.com/tol/cforge/tickets/3/</guid></item><item><title>commit: Implement the action 'commit'</title><link>https://forge.codesys.com/tol/cforge/tickets/2/</link><description>The commit action does several at once:

# Export Documentation
The script uses the PLCopen Export to get the content out of the project. Then it transforms the result into Markdown, using XSLT.
First, it is more than enough to support ST.

# Commit with CODESYS SVN
Commit the changes in the project with CODESYS SVN to the repository that is connected with it (no changes done).
# Commit with local SVN
Add / commit the project file and exported documentation, using external SVN client.</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Ingo</dc:creator><pubDate>Thu, 09 Aug 2018 20:24:11 -0000</pubDate><guid isPermaLink="false">https://forge.codesys.com/tol/cforge/tickets/2/</guid></item></channel></rss>