P4 sync: Now, if a Ctrl+C key combination is detected while a changeset is synced (exported or imported), the sync process will wait until the current changeset fully synced to prevent data mismatch between plastic and p4. After that, the sync process is gracefully stopped.
* The Ctrl+C key won't be deteced if the sync operation is run in "cm shell" mode.
* When issuing a Ctrl+C, the printed results about "changesets involved" could not match with changesets actually synced.
Windows GUI: Improved the pending changes autorefresh feature. Now, after the pending changes view is refreshed, we maintain all the UI state of the diff viewer (scroll position, current diff, ...), if the file did not change on disk. When the file changed on disk, we refresh the diff viewer as usual.
Now, merge changes can be undone without requiring the rest of the workspace changes to be undone as well. Additionally, non-merge workspace changes can be undone independently. The only current requirement is to undo all merge changes together: the undo must target either none or all of them at the same time.
Windows GUI: Pending changes view showed an error in a border case move operation without changing its contents: move an item in two steps so the final path it's the same as the original. Example:
* Having the following structure:
/ /src /src/lib /src/lib/foo.c
* Performing the following command line operations caused Pending Changes view showing an error:
cm move /src/lib/foo.c /src/foo.c cm rm /src/lib mkdir /src/lib cm add /src/lib cm move/src/foo.c /src/lib/foo.c
* After these operations, the resultant path of "foo.c" it's the same as the original one, but different parent directory ID (but same name). Now the issue has been fixed and the Pending Changes view is able to show the changes.
The cm partial ci is not printing the right changeset. Instead of the created changeset, it was printing the branch head when the checkin was done (that was the parent changeset of the created changeset). Now it's printing the right one.