To tackle the tile question, no, Libraries project does not offer the same functionality as creating custom library in visual studio. With creating activities in visual studio you get the full control over your activity - starting with custom design, through benefits of object oriented programming and adding custom exceptions, ending on possibility to utilize full capabilities of C#/VB.net; There’s simply no way the Library project can compete with custom libraries (in terms of capabilities and flexibility) coded from scratch and tailored to business needs.
- Is it possible to categorize your arguments? NO
- Is it possible to add descriptions to your arguments? NO
- Is it possible to choose whether arguments are optional or required? YES - by setting isRequired property in the properties pane
- How do you allow your activities to show whether they are invalid or not (e.g. missing arguments, wrong argument types, invalid arguments, etc)? Theres no way to change the default setting via UiPath Studio now
Let me answer the last question separaterly:
- Can you independently upload individual .XAMLs in a library when a new version is released, or do you need to create new libraries for each if you want to update independently?
E.g. show everything under MyCompanyActivities, then update MyCompanyActivities–>Activity1 without needing to release any package using MyCompanyActivities–>Activity2 and NOT Activity1.
I don’t think I follow tbh. Unless you do the changes to Activity 1 there will be no difference between v.1.0.0 and v.1.0.1 (for that activity) but both activities will be in both of the releases. If you skip activity 1 during deployment, all the tools will treat that piece as deleted.
After all, the purpose of a library is grouping activities so I believe there is no way to separately deploy activities developed as parts of the same library (without splitting them into two separate projects)
Now, having said all that … I still believe Library Project is a great tool for building low-level components related to UI Layer like login/logout actions
Hope that sheds some light on the topic,