I want to create Library that would be used across many processes, but I am struggling with global updating.
It seems I don’t quite understand how ‘Lowest applicable version’ of package works. I publish process to Orchestrator with saved custom activity from my library in version 1.0.1 and ‘lowest applicable’ option selected.
Then I do some edits to the library, publish it’s version 1.0.2 (not changing ins, outs nor name). Then I delete version 1.0.1 from Orchestrator, so there is only 1.0.2 of the library, forcing the process to work with 1.0.2.
This explains how version conflicts are resolved. This is really nuget stuff, not specific to UiPath.
But the “Lowest Applicable Version” thing does the opposite of what it sounds like it’ll do. Say you have this dependency that has some sub-dependencies inside it…
Some Activities Package v2
Sub Activities Package v3 (set to Lowest Applicable Version)
Then you try to add this package to your project:
Another Activities Package v1
Sub Activities Package v4
What will happen is Sub Activities Package v3 from the first dependency will move up to v4, because v4 is the lowest applicable version of Sub Activities Package.
It’ll tell you in Studio if you mouse over the dependency. It’ll say something like “requested v3, resolved to v4.”
This only happens for dependency conflicts, not missing packages which is what you caused by deleting the version specified in your project.
It sounds like you’re trying to find a way to upgrade the dependencies without having to open the project, update dependencies, then re-publish. Except you can’t. You must open the project, update the dependencies, then re-publish.