After upgrading Plastic to the newest version (11.0.16.7274) I encountered a bug blocking me from using Unreal external diff in Plastic.
I added Unreal external diff tool as follows:
Custom extension = .uasset
External tool = "C:\Unreals\UE_4.27\Engine\Binaries\Win64\UE4Editor.exe" "C:\Repos\ExampleProject\ExampleProject.uproject" -diff "@sourcefile" "@destinationfile"
It worked fine so far, but after the upgrade I tried to diff some Blueprints and an error appeared:
"There aren't any diff tools defined in the client configuration file"
But clearly there are. I can see the Unreal diff tool in the Diff tools settings.
I reinstalled Plastic few times, removed all config files but the error persisted.
I looked into the %LocalAppData%\plastic4\client.conf file and noticed that the <DiffToolData> section with my Unreal diff tool contains "<FileType>enTextFile</FileType>" sub-section. This is weird since I selected "Custom extension" in the Plastic diff tools settings. I removed this sub-section, leaving the "<FileExtensions>.uasset</FileExtensions>". And it worked 🙂
I don't know if it's a bug or just my config got corrupted. I spent few hours solving this issue and I decided to write about this in case somebody else has similar problem.