Why did we split Indicium up into two products?
The new Indicium product in TCP is called Indicium Universal. The name already implies that this version of Indicium is meant for our new Universal GUI, which is currently in development. The reason that the Universal GUI requires a different version of Indicium than our existing GUIs has to do with the new three-tier architecture that we envision and our goals regarding security and scalability.
We do not want to compromise on our goals and ambitions for the next generation of the Thinkwise suite for the sake of keeping Indicium compatible with both the Universal GUI and our existing GUIs. At the same time, we also do not want to waste valuable development time on conceiving complicated solutions to support both simultaneously. With that said, we will keep supporting our existing products in accordance with our product lifecycle, especially since the Universal GUI is not feature-complete yet. Given the mutually exclusive nature of these requirements, the most obvious solution was to maintain two versions of Indicium.
What does this mean for you?
First, I would like to clarify that both versions of Indicium will receive bug fixes and generic, new features. The only difference is that Indicium Universal will also receive changes and new features aimed towards our future goals which were mentioned earlier.
The choice of which version of Indicium is right for you is straightforward in most cases. You can answer the following questions for yourself to arrive at the correct answer. It is possible that you will have to run both versions of Indicium side-by-side.
Are you trying out a demo of the Universal GUI?
To try out the Universal GUI you will always need Indicium Universal. It will not work properly on the regular version of Indicium.
Are you using a Mobile GUI or a Windows GUI against Indicium?
If you are using a Mobile GUI, you will always need to use the regular version of Indicium. If you are using a Windows GUI against Indicium, you will also need the regular version of Indicium for now, but we are looking into the pros and cons of migrating the Windows GUI to Indicium Universal in the future.
Are you using a third-party client against Indicium and are you only reading data, deleting data or calling subroutines?
If your third-party client is only reading data, deleting data or calling subroutines via Indicium, then it is recommended to use Indicium Universal, unless you already need the regular Indicium for another reason, in which case you can opt to use the regular Indicium for all purposes.
Are you using a third-party client against Indicium and are you also inserting data, updating data or executing tasks?
Indicium Universal also supports inserts, updates and tasks, but its API is different from the regular Indicium. The new API offers security improvements and is a lot more powerful at the cost of being a bit more complicated to use. We are looking into ways to make the API as developer friendly as the regular Indicium without making it less secure or less powerful. This would make it easy for all third-party clients to always use Indicium Universal. For now, depending on the scenario, it is possible to use the new API, rewrite any inserts, updates or tasks to subroutines or opt to use the old API on the regular Indicium. Please contact us to help make the right decision for your scenario.
Please note that at the time of writing, Indicium Universal has slightly different system requirements than the regular Indicium. Indicium Universal requires version 2.2.x of the .NET Core Windows Hosting Runtime, whereas the regular Indicium runs on 2.1.x (it will also run fine on 2.2.x). We always recommend x to be the highest version available.