Release Notes

Public

11.0.16.7626: Nov 17 2022

New

All platforms - DevOps: TrunkBot adds tasks' title to the check-in comment when merging

Now TrunkBot mergebot will add the task' title from the configured issue tracker to the check-in comment when a merge is successfully performed. If there is no configured issue tracker, it will add the branch comments instead.

New

All platforms - Server: Deleting an object now deletes the associated code review data.

Now, when deleting a changeset, a shelve, or a branch, all the associated code review data gets deleted as well. This means that all code reviews targetting a changeset or a shelve, as well as all the code review comments made on a changeset or a shelve, will be deleted along with the changeset or shelve. When deleting a branch, all the code reviews targetting the branch will be deleted too.

Until now, the only thing that happened (regarding code reviews) when deleting a changeset was that all the change requests applied on said changeset were marked as not addressed. Now, the cleanup is complete.

New

All platforms - Command line client: Now you can create code reviews for shelves!

If you want your colleagues' feedback on some code, but don't want to actually check in the changes, now you can create a shelve and ask them to review the changes with the integrated code review functionality! Bear in mind that creating the code review only works (from now) from the cm command line client, but once created, you can open the code review from the GUIs.

To do so, you will need the shelve ID of your shelve. You can obtain that from the "ID" column in the "Show shelves" view in the GUIs, or by running a cm find command:

cm find "shelves where owner = 'me' on repository 'secretproject@coolorg@cloud"

Then, create the code review specifying the shelve:

cm codereview sh:1354@secretproject@coolorg@cloud "Please review this change with care!"

The code review can then be opened and edited from the GUIs.

New

Server: Deny temporary access for some specific users

Now you can deny access to certain users. To do so, create a deniedusers.conf file inside the server directory and add a user per line.

You don't need to restart the server, but note it might take some seconds until the server reloads the list of users with access denied.

Examples:

alice
bob

Note users might look different, as it depends on the configured authentication:

alice@mail.com
bob@mail.com

New

Windows - PlasticX: PlasticX is now the official GUI on Windows

We are happy to announce that our new, cross-platform, GUI is now the official GUI on Windows.

To launch the new GUI simply run plastic.exe as before. The old windows gui has been renamed to LegacyPlastic.exe.

New

Windows - PlasticFS: Symlink support for dynamic workspaces

We added support for symlinks to PlasticFS!

Now symlinks are supported everywhere in the Plastic ecosystem: Windows, Linux, macOS and PlasticFS.

== REQUIREMENTS ==

1) While PlasticFS does not need anything to support it, you might want to enable the Windows client support. This will allow the command line and PlasticX/GluonX to work with symlinks on Windows.

To do that, add the following configuration setting to your client.conf:

<EnableSymlinkSupportOnWindows>yes</EnableSymlinkSupportOnWindows>

2) If you update an existing dynamic workspace, you will find placeholder files where symlinks should be. To get the actual symlinks, you can delete the placeholder files, then tell Plastic to undo changes so they are recreated.

Be sure to read the LIMITATIONS section before using.

== HOW TO USE THEM ==

You can use mklink as usual to create some symlinks:

mklink filelink file.txt
mklink /D dirlink dir

Note that, unlike with static workspaces, you don't need to enable Developer Mode to make it work!

== LIMITATIONS ==

1) This feature is in an early stage of development, so you can expect minor bugs to happen.

2) PlasticFS always creates symlinks as files. By trying to access them, they will be automatically solved and converted to directories. However, this step might confuse external programs that do not expect it.

* This happens anytime you create a new workspace or after undoing a placeholder file (see REQUIREMENTS section).

* Windows Explorer will force this conversion, but you will have to refresh the window the first time it shows a symlink.

3) Currently, relative symlinks are not allowed to link the mount point directory or anything above it.

New

All platforms - PlasticX: View deleted repositories on home view

You can now see the recently deleted repositories on the home view!

It is accessible by clicking on the cog icon near the search bar.

To restore a deleted repository, simply right click on the deleted repository and select the "undelete" option

Bug

Windows - Visual Studio 2022 plugin: Fixed issue when opening Pending Changes

After uploading Visual Studio 2022 to version 17.2.0 or higher, if the solution contained a solution's folder, Visual Studio plugin was prompting the error:

"GetSccFiles must be called on the UI thread"

It was preventing the Pending Changes view from working properly.

The issue has been fixed and now Pending Changes is fully usable in any situation.

Bug

All platforms - PlasticX: Flicker issue in the pending changes refresh

The refresh operation for the pending changes view launched different operations to calculate the review comments to apply and the pending changes which caused a flicker issue. We unified those operations to avoid this issue.

Bug

All platforms - PlasticX: Missing success message after creating a shelveset

After creating a shelveset the success message was shown in the status bar but it was immediately hidden due to an issue in the pending changes refresh operation that overwrote the message with the progress. Now it's fixed.

Bug

All platforms - PlasticX: Fixed slow pending changes category checkbox

We improved the performance of toggling a pending changes category checkbox when the category contains a very large number of items.

For example, toggling a category containing 30,000 items used to take about 20 seconds, and now takes less than half a second.

Bug

Cloud Server: Fixed deadlock with concurrent checkins in the same repo.

The cloud server uses locks to handle concurrent access to the Jet files and to the internal caches. There was a race condition where concurrent checkins (in the same repo) that added new files to the repo could get stuck forever due to a deadlock between the previous mentioned locks. Fixed.

This was a corner scenario since the race condition was not easy to reproduce without the right debugging.

Bug

All platforms - GluonX: Details Panel could not be resized.

We found a rare scenario in the Details Panel where this subview couldn't be resized anymore. We fixed this issue

Also, we have also set minimum width to the Workspace Explorer and Checkin Views when Details Panel is shown to the users

Bug

All platforms - PlasticX, GluonX: Skip format changes not working properly

There's an option in the pending changes view and diff view that allows you to skip format changes when diffing two versions of a file, such as line endings or spaces. This option was not being initialized correctly, and even when it was enabled, it appeared as disabled in the GUI. This issue is now fixed

Bug

All platforms - PlasticX: Diff/Merge Window crash after Cut empty text

PlasticX crashed cutting an empty line from the editable text editor in diff/merge view.