Command Line Interface: the 'cm' CLI utility has gained Bash superpowers! Now, the 'cm' command can provide command line autocompletion for Bash (more shells coming soon!).
To install it do the following:
$ cm autocomplete install
After that, your .bashrc file is modified with a script to hook 'cm' autocompletion to the 'cm autocomplete' command, so you need to restart your session for changes to take effect.
For now, 'cm' can only autocomplete command names (makeworkspace, showacl, renamerep and the like), but expect more improvements soon.
Eclipse: The Diffs view crashed when it was displayed from the Window -> Show view -> Other -> PlasticSCM -> Diffs menu. Now it's displayed with a "No content to compare message". We also detected and fixed a layout issue in the view that now it's fixed.
Command line client: We have introduced a new, clearer format for the console output of the status command. This change brings the CLI inline with the Pending Changes view of the GUI.
However, don't worry - you can still get the output in the legacy format, if that's your thing.
First of all, here is an example of the new output.
Beautiful, right? As you can see, we have a new format for the workspace status, we have made the pending merge list more prominent, and the changes lists have been updated with file sizes and last modified dates and are now organized similarity to the Pending Changes view.
We have added some new options to the command, including:
--cset revert to the original format for workspace status (equivalent to the old cm status without args) --compact revert to the original format for the changes lists (equivalent to cm status --all/--changed/etc but using the old format) --head shows information for the head changeset
Please check-out the inline help "cm status --usage" or the online CLI Guide (https://www.plasticscm.com/documentation/cli/plastic-scm-version-control-cli-guide) for more information.
By default, all changes, controlled and local, are displayed. Since this is the default, we removed the "--all" option, but you can still use "--controlledchanged" to show only controlled changes.
The option "--nochanges" has been renamed to "--header", and outputs just the workspace status.
The option "--nostatus" has been renamed to "--noheader", and outputs just the changelists.
New option, "--head", displays the head changeset status.
The "--selector" and "--wkconfig" options have been deprecated.
In case you still need the old format, for automation purposes:
The following options can be used to generate output in the legacy format:
"--cset" outputs the workspace status.
"--compact" outputs the workspace status and changelists.
"--noheaders" can be used with "--compact" and removes the changelist group headers from the output.
Windows GUI: Improved readability in Branch Explorer label captions. When a label was too long, the caption was cut and added ellipsis, so the caption couldn't be read. Now, when a label that doesn't fit it's caption area is hovered with the mouse, we draw the complete caption, so it can be easily read:
Gluon for Windows: We added an option menu button in the top right corner that allows you to display the preferences and the about dialogs.
Gluon for Linux: We added a button in the left sidebar that displays the about dialog.
Plastic (all platforms): Some users reported that they got stuck when a merge was started and it was not finished. We added a help case to detect this situation and help the user to continue the merge, or undo (and cancel the merge in progress).
Windows installer: The server-only installer was failing trying to extract 'vswhere.exe' file, a file needed to detect Visual Studio installations. Now it's fixed.
Eclipse plugin: The Eclipse views (branches, labels, changesets, pending changes ...) failed to open due to a layout issue. Now it's fixed.
Linux: Added an "Applications" shortcut to launch the Plastic SCM server administration page. This shortcut will open a browser on http://127.0.0.1:7178, which is the default admin page location of plastic server.
See screenshot below (Ubuntu):
REMARK: the shortcut internally uses xdg-open to launch a browser, which is likely to be installed on supported linux desktop environments. Otherwise, you will have to install it using the package manager of your distro.
Plastic (windows, gtk, osx): When a user switches to a changeset, the last changes on the branch won't be downloaded when the workspace is updated. When a user clicks the "update workspace" button in the items view and we detect that they had previously switched their workspace to a changeset, Plastic displays a help message to warn about this situation.
Plastic all platforms: Improved the performance calculating the cloud organization for a user in the welcome dialog.
Plastic for Windows: When you show the changesets for a branch (branches view -> right click -> view -> view changesets in this branch), the following options were disabled:
* Merge from this changeset
* Cherry pick from this changeset
* Advanced merge
Now it's fixed.
Plastic GUI, Gluon and CLI (Windows, Linux and macOS): Now all Plastic clients use the environment variable PLASTIC_HOME to load and save the settings.
If defined, Plastic will use the folder defined in the PLASTIC_HOME environment variable to save setting files. Otherwise, the default config folder will be used.
NOTE: The PLASTIC_HOME environment variable will is ignored by the java cm client (our java-based CLI).
Gluon for windows: If you set a filter in the Checkin View, after refreshing it, the filter was not re-applied. Now it's fixed.
Plastic for windows: The option "Filter only parents" in the Version tree 2D was not correctly saved/restored. Now it's fixed.
The update operation didn't report the proper error when downloading a file locked by another process and bigger than 4MB. Fixed.
Plastic, Gluon and CLI (all platforms): Fixed a performance issue. The client configuration file (client.conf) was parsed thousands of times due a bug in the code. Now it's fixed.
Plastic SCM turns 8.0!
New year, new number. For all of you using subscriptions it will be transparent.
If you have an "unlimited license", remember to request a new license where "major version supported" is updated to 8.
As you know, we no longer release major super new versions anymore. We don't wait and package tons of new features together for a big launch. It seems the world has moved past that, and for us it is much better since it better fits the way we work.
We release a few times a week, so being subscribed to Plastic, or purchasing support+updates if you are on perpetual, means receiving a constant flow of updates.
The initial 8.0 won't be different from the latest 7.0, but in a few months 8.0 will be incredibly much evolved, week after week.
These are some of the things we are cooking:
* A brand new Unity plugin: While the current one, officially deployed by Unity, will still be there, we are working on a totally new one. Expect a more "plastic-style" UI with all the things you are used to in "Pending Changes".
* Multi-process Enterprise server: We are working at full speed right now in a greatly improved server that spawns multiple processes to increase reliability even on a single machine. This probably doesn't sound super exciting, but it will be the basis for the new upcoming Plastic Cloud infrastructure we are working on.
After these two big ones, we have plans for: Code Review (finally!), improved single-branch workflows, built-in cross-file semantic merge, and heavily focusing on usability.
Windows GUI: SemanticMerge understands your PHP code now ;)
This feature closes one of the most requested UserVoice features: PHP Please!.
The PHP parser is released as a beta, so we'd love to have your feedback about things that don't work for you or any other suggestion.
All platforms: Filter rules confirmation dialog: we unified how the "apply for all workspaces" checkbox is displayed. Each platform (windows, gtk, osx) displayed this button in different ways, depending on whether the operation could be applied or not: Some platforms didn't show the checkbox, others displayed the checkbox in a disabled state, etc.
We unified the behavior this way (example with ignored files, but applies the same for cloaked items and hidden changes):
* Plastic (all platforms): Now it is possible ignore files for all workspaces, always displays the checkbox.
* Gluon (all platforms) Ignore files for all workspaces is not possible, the checkbox is not shown.
DevOps: "trunk-bot" and "conflictsbot" are now able to track all configured repository's branches. To do that, just leave the "Branch prefix" field empty while configuring any of these mergebots. Nevertheless, the field description has been improved in order to explain how to configure this use case.
Command line tool. We have added a cool new ability to the diff command. Previously, the process for viewing the diff of a file changed within a changeset was a little convoluted, because you had to call diff once to get the revisions and call diff again to see the differences. Now you can view the differences with a single call by specifying the filename as the last parameter.
For example "cm diff br:/main@myrepo src\common\myfile.cs" will show any differences in the file "myfile.cs".
In actual fact, you only need to specify enough of the path to uniquely identify the file. See the following output for an example of this intelligent path matching in action:
c:\mcga>cm diff 4@test 6@test C "src\client\dup.cs" C "src\common\dup.cs" C "src\server\net\dup.cs" C "src\misc\net\dup.cs" c:\mcga>cm diff 4@test 6@test dup.cs Path 'dup.cs' not unique. Could refer to any of... /src/client/dup.cs /src/common/dup.cs /src/misc/net/dup.cs /src/server/net/dup.cs c:\mcga>cm diff 4@test 6@test net\dup.cs Path 'net\dup.cs' not unique. Could refer to any of... /src/server/net/dup.cs /src/misc/net/dup.cs c:\mcga>cm diff 4@test 6@test server\net\dup.cs Diff tool launched with 'server\net\dup.cs'
Find queries that used the "like '%'" condition (i.e. a catch-all clause) returned a server error if it was configured to use Jet as backend. Fixed.
Server: Using special characters, such as (# / ? :, etc. in bot/plug/bottype/plugtype names, caused the DevOps system to fail. Now, the following characters are forbidden: / : * ? " < > | #
Also in some circumstances, using blank spaces or other reserved characters caused the bots to fail when trying to communicate with the plugs. Now it's fixed.
Windows GUI: The "explain merge" diagram was unable to draw the contributor labels properly when a changeset was the base and destination of the merge at the same time. A red label with "UNKNOWN" text was displayed instead. Now it's fixed.
Filter matching: We fixed a bug that caused name-only rules to be applied to the complete directory hierarchy of every workspace item. This means that writing e.g. 'wkspaces' as a rule in your /ignore.conf file would cause every private file in all workspaces inside /home/myuser/wkspaces to be ignored.
Windows GUI: Fixed two bugs in the code review window.
* When a recently added file was commented in a revision that was not the last in the branch, the file content was displayed as empty. Now it's fixed.
* When a changed file was commented in a revision that was not the last in the branch, the action "show this revision in the left pane did nothing. Now it's fixed.
Plastic for windows: The "confirm ignored filter rules" dialog was too small. Now it's bigger.
Plastic (Windows and Linux) GUIs: Now, the About dialog displays the right Plastic website URLs in the "visit us" and "meet us" information lines, with the "https" protocol.
Gluon (all platforms): A recently added file, still checked-out, displayed 0 bytes in the size column of the Explore workspace tree. Now it's fixed.
Plastic for Windows: After any update operation (e.g. switching to a branch) you're prompted with a dialog that displays the issues reported by operation (if any) so you can "retry update" or "update forced" them. There was a bug that kept the last selected issue in the "Issues" view after you clicked "Update forced" but the "Path" view was cleaned up. Now it's fixed.
Gluon for linux: When configuring Gluon in Cloud Edition mode for the first time, the password textbox was not visible. Now it's fixed.
VSPackage: The Plastic Proxy couldn't be configured and used under the VSPackage. Now it's fixed.