<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en" xmlns="http://www.w3.org/2005/Atom"><title>Recent posts to Library- Versioning one POU</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/27bffb3366/" rel="alternate"/><link href="https://forge.codesys.com/forge/talk/Engineering/thread/27bffb3366/feed.atom" rel="self"/><id>https://forge.codesys.com/forge/talk/Engineering/thread/27bffb3366/</id><updated>2021-03-30T06:37:20.566000Z</updated><subtitle>Recent posts to Library- Versioning one POU</subtitle><entry><title>Library- Versioning one POU</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/27bffb3366/?limit=250#f188" rel="alternate"/><published>2021-03-30T06:37:20.566000Z</published><updated>2021-03-30T06:37:20.566000Z</updated><author><name>h-hermsen</name><uri>https://forge.codesys.com/u/hermsen/</uri></author><id>https://forge.codesys.com21dec3432316ac614579eb1ecadbd0b4054e6f5e</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;It is impossible to reference lib version w.x.y.z AND version w.x.y.z + 1 in the same project at once. A library can always only be referenced ONCE. I've never seen this this feature in ANY IDE I worked with and I highly doubt this is useful.&lt;/p&gt;
&lt;p&gt;All is explained straightforward here: &lt;br/&gt;
&lt;a href="https://help.codesys.com/webapp/_cds_struct_installing_libraries;product=codesys;version=3.5.16.0" rel="nofollow"&gt;https://help.codesys.com/webapp/_cds_struct_installing_libraries;product=codesys;version=3.5.16.0&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Library- Versioning one POU</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/27bffb3366/?limit=25#6916" rel="alternate"/><published>2021-03-30T04:44:34.626000Z</published><updated>2021-03-30T04:44:34.626000Z</updated><author><name>bamia</name><uri>https://forge.codesys.com/u/bamia/</uri></author><id>https://forge.codesys.com2dd54f6af7e65d0de8dc7adb20f2e2d458ede30b</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Thanks h-hermsen&lt;br/&gt;
One last question, using the same scenario and example as before, I have FB_Motor V1 and later I modified it to FB_V2 and saved that to the repo as well as saved the library with the new changes. So in the standard project I have access to both V1 and V2 which is great but in the library project it opens with the last saved version which is V2. Is there a way to open V1?&lt;br/&gt;
I can copy and paste from standard project to library but curious, since the both versions exist in the repo there must be a way to open either one.&lt;/p&gt;
&lt;p&gt;Thanks&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Library- Versioning one POU</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/27bffb3366/?limit=250#c267" rel="alternate"/><published>2021-03-29T06:19:38.616000Z</published><updated>2021-03-29T06:19:38.616000Z</updated><author><name>h-hermsen</name><uri>https://forge.codesys.com/u/hermsen/</uri></author><id>https://forge.codesys.combc413fa56e4fa9cf5f4ee8e98aca54e2b4cfedc2</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;No, the way you describe your preferred workflow is not possible in CODESYS. I do recognize your described workflow from from a different IDE but it is not possible here.&lt;/p&gt;
&lt;p&gt;You cannot edit the preferred FB (which resides in library w.x.y.z) directly from the project as the library is loaded as a reference, just like in VS.Net or similair.&lt;/p&gt;
&lt;p&gt;Getting a hang of the preferred way of working in CODESYS isn't that hard though. Just open CODESYS twice. Load your library in IDE1 and load your project in IDE2. Editing and saving the library to your library Repo (commit as you call this) is entirely done via IDE1.&lt;br/&gt;
Modifying your project itself and testing of the library component from IDE1 is done in IDE2. This is the normal vanilla way of managing it in CODESYS.&lt;/p&gt;
&lt;p&gt;Regards&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Library- Versioning one POU</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/27bffb3366/?limit=25#2d03" rel="alternate"/><published>2021-03-28T23:37:17.909000Z</published><updated>2021-03-28T23:37:17.909000Z</updated><author><name>bamia</name><uri>https://forge.codesys.com/u/bamia/</uri></author><id>https://forge.codesys.com9af9ceb7dd446ceb98b6327a84d8f4f7b0e1cf73</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;How do you guys work with libraries in general. &lt;/p&gt;
&lt;p&gt;I would like to use it like this:&lt;br/&gt;
Create a standard project for a specific controller and develop, let's say FB_Motor, and work with that and other POUs. Then at some point I will be happy with it and want to archive it so I will create a project and add it. Then sometime later I will want to modify it but I need to do that in a project where its functionality can be tested and compiled, what to do then?&lt;br/&gt;
I can not edit it on its own in the library project because I need to test its functionality in a working project.&lt;/p&gt;
&lt;p&gt;I am looking for something like how SVN does it, or Siemens TIA, where the library is linked to the project and I can modify the FB right where I have it being used and test and compile it then when I'm happy with it I can "commit" or save it to a new version FB_Motor V2&lt;br/&gt;
Is that possible?&lt;/p&gt;
&lt;p&gt;Thanks again.&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Library- Versioning one POU</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/27bffb3366/?limit=25#075c" rel="alternate"/><published>2021-03-28T22:41:39.598000Z</published><updated>2021-03-28T22:41:39.598000Z</updated><author><name>bamia</name><uri>https://forge.codesys.com/u/bamia/</uri></author><id>https://forge.codesys.com012b820e93a0ab18d9c9810a630e14981e37e42a</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Thanks everyone. &lt;br/&gt;
I figure out some of it and working on the rest. &lt;br/&gt;
So what I wanted to do is this:&lt;br/&gt;
I have FB_Motor and its version in the library is 0.0.0.1 and that's how it shows up in the repository. Then I go back later to make some changes to it and want to have a new version 0.0.0.2 while keeping the other version available. &lt;br/&gt;
What I figured out thus far is that I have to do that manually but going to "Project Information" and changing the version number there then save and install the repo to have it available in the project. &lt;br/&gt;
Is that the way it is done? &lt;br/&gt;
Could it be done automatically, somehow?&lt;br/&gt;
After making changes and saving FB_Motor V2, how can I go back to FB_Motor V1 if I want to?&lt;/p&gt;
&lt;p&gt;Thanks&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Library- Versioning one POU</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/27bffb3366/?limit=25#81a1" rel="alternate"/><published>2021-03-28T08:07:43.717000Z</published><updated>2021-03-28T08:07:43.717000Z</updated><author><name>i-campbell</name><uri>https://forge.codesys.com/u/i-campbell/</uri></author><id>https://forge.codesys.comfd39f17bb15e72d5eec8149f085c602c212592b0</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;If you have for example FB_Motor (v1) and FB_Motor (V2), and you want to reference both of them in a project, you will need to have different names for them.&lt;br/&gt;
For Codesys libraries, the developers make only compatible changes to a POU. If the library developer wants to make a new POU which is not compatible, they change the name, eg. AddLog and AddLog2. In your case you could name them FB_Motor and FB_Motor2.&lt;/p&gt;
&lt;p&gt;If you however mean that you wish to know how to update your .project, so it uses now library V2.&lt;br/&gt;
1. Install library V2 to library repository as you have already done.&lt;br/&gt;
2. In your project use Menu &amp;gt; Project &amp;gt; Project Environment... to identify and update any libraries.&lt;br/&gt;
OR you can select the versions from Library Manager &amp;gt; Placeholders&lt;br/&gt;
3. If you have changed the inputs and outputs of the POU, in graphical languages you can right click it and "update pins". In ST you must add or remove the entries manually.&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Library- Versioning one POU</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/27bffb3366/?limit=25#38e0" rel="alternate"/><published>2021-03-28T06:22:37.625000Z</published><updated>2021-03-28T06:22:37.625000Z</updated><author><name>eschwellinger</name><uri>https://forge.codesys.com/u/eschwellinger/</uri></author><id>https://forge.codesys.com0fed1958e8577dddf1234d2856b2ee6beabbf97f</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Maybe i do not understand. If you have opened 2 CODESYS Developmentsytems, it ist exactly what you need, one for edit the Lib the other to Test the Pou's from your library&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Library- Versioning one POU</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/27bffb3366/?limit=25#007a" rel="alternate"/><published>2021-03-27T03:42:52.369000Z</published><updated>2021-03-27T03:42:52.369000Z</updated><author><name>bamia</name><uri>https://forge.codesys.com/u/bamia/</uri></author><id>https://forge.codesys.com7a7cfa96ecee85bb4d6b9831a96abb6fb9417e82</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Thanks. So here's what I did:&lt;br/&gt;
-Created a library project and added a POU with some code and &lt;br/&gt;
Saved the project and updated the repo.&lt;br/&gt;
-Opened a standard project and added the library and opened and FB then I inserted an empty EN/ENO and selected my POU from the library&lt;br/&gt;
-Now here's what I want to do, &lt;br/&gt;
1- Make changes to the POU in the library and version to 2.0. In the my library project I will have to versions of the same POU, version 1 and version 2.&lt;br/&gt;
2-Go to my standard/work project when I am using and instance of that version 1 POU and update it to latest version 2&lt;/p&gt;
&lt;p&gt;Thanks&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Library- Versioning one POU</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/27bffb3366/?limit=25#cdd7" rel="alternate"/><published>2021-03-26T05:18:26.330000Z</published><updated>2021-03-26T05:18:26.330000Z</updated><author><name>eschwellinger</name><uri>https://forge.codesys.com/u/eschwellinger/</uri></author><id>https://forge.codesys.com19f1d4c66a638eddd94c71607e63fc9eafa8fb3c</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;you just open two instances of CODESYS - one with the library the other open your testproject.&lt;br/&gt;
Then you add changes in the library and after doing this press the yellow icon ( which installs the changes to the libraryreporsitory)&lt;br/&gt;
You see in the message view of the project instance that this has successfully done - and now compile your project and do your tests with your code changes.&lt;/p&gt;
&lt;p&gt;BR&lt;br/&gt;
Edwin&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Library- Versioning one POU</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/27bffb3366/?limit=25#c66b" rel="alternate"/><published>2021-03-26T01:32:12.450000Z</published><updated>2021-03-26T01:32:12.450000Z</updated><author><name>bamia</name><uri>https://forge.codesys.com/u/bamia/</uri></author><id>https://forge.codesys.comfe22b72673f1943ec9050dbf60d0973bb02ca0af</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;I take it either no one knows or it is not possible, which is it?&lt;br/&gt;
Thanks&lt;/p&gt;&lt;/div&gt;</summary></entry></feed>