New
Updated the learn more link in the welcome window to point to the new documentation web page.
Updated the learn more link in the welcome window to point to the new documentation web page.
Some semantic merge users suggested that they were not clear about the next action to perform in order to resolve a merge. We decided to blink the buttons to resolve a conflict, so the next action to perform is clear.
In order to enable Java and C++ files to be semantically merged, it is required a valid installation of Java Virtual Machine (version >= 8).
But, if no valid Java Virtual Machine is found, SemanticMerge will warn the user asking whether falling back to regular, embedded text-based mergetool (a.k.a. XMerge tool) or cancel the execution.
If you use the "–nojvmwarn" argument, SemanticMerge will automatically fallback to the text-based mergetool without asking. This behavior can also be configured in the SemanticMerge preferences.
SemanticMerge for Windows now supports C# versions 7.1, 7.2, 7.3 and 8 (preview)!
Configuration changes, for example your choice of external diff and merge tool, didn't take effect until SemanticMerge was re-launched. We have fixed this – now your changes take effect immediately, which is much less confusing.
A 'Value cannot be null. Parameter name: source' exception was thrown when the destination file of the merge was empty. Fixed.
Improved declaration matching mechanism to properly detect the conditional inclusion in the following scenario:
Src
ifndef MY_VAR include "MyInclude1" include "MyInclude2" int my_field1; int my_field2; endif
Dst
ifndef MY_VAR include "MyInclude1" endif
Wrong Result
include "MyInclude1" (Moved)
Result
include "MyInclude2" (Deleted) int my_field1; (Deleted) int my_field2; (Deleted)
The semantic outline didn't respect the "Ignore whitespace changes" setting for those languages other than CSharp and VB. So, a declaration appeared as changed in the semantic outline although it only had whitespace changes. Now it's fixed for all languages.
Under some circumstances, the source changes were wrongly positioned in the result file. Fixed.
Base
namespace NewNamespace using System; using System.Net;
Src
using System; using System.IO; (Added) using System.Net;
Dst
namespace NewNamespace using System; using System.Net;
Wrong Result
namespace NewNamespace (Deleted) using System; using System.Net; using System.IO; (Added)
Result
namespace NewNamespace (Deleted) using System; using System.IO; (Added) using System.Net;
Launcher: A 'Value cannot be null. Parameter name: path' exception was thrown when you saved the result file. Fixed.
Launcher: SemanticMerge was kept open when the merge was solved using the default text-based tool (xmerge). Fixed.
Changes to fonts weren't properly stored to disk. As a result, font preferences were reset on startup. Now it's fixed.
Some dialogs (such as license, about, configuration, etc … ) were cut off in some screen configurations and resolutions. Now it's fixed.
While solving changed-changed problems using the Mergetool, the "Save base / source / destination contributor & exit" options were not working properly. Now it's fixed.
Under some circumstances, a 'Value cannot be null' exception was thrown when trying to calculate renames differences for multi-file merge. This is now fixed.