39 documented changes.

Version
11.0.16.10616
Product
Unity Version Control
Unity Version Control 11.x release notes

Unity Version Control 11.0.16.10616

Official notes

New

  1. Change

    All platforms - Command-line: Faster cm ls on trees with many owners: `cm ls` is faster on trees with many owners. To print owner names, it now sends one request to each server, instead of one request for each item. When the format doesn't include the owner, as with the default format and `--tree` , `cm ls` doesn't request owner names at all. It also doesn't load branch information when the format includes no branch or location. The output is the same as before.

  2. Change

    All platforms - Command-line: Faster cm ls on trees with many owners: Refer to cm ls.

  3. Change

    All platforms - Command-line: Comment counts and reviewers in cm find review: `cm find review` and `cm find mergerequest` now print the review information that the Desktop GUI already shows. You can use the following new `--format` fields, which are also in the `--xml` output:

  4. Change

    All platforms - Command-line: Comment counts and reviewers in cm find review: The `{comments}` count doesn't include replies that discard a change request.

  5. Change

    All platforms - Command-line: Comment counts and reviewers in cm find review: Refer to cm find and cm showfindobjects.

  6. Change

    All platforms - Command-line: Comment path, item, and edit date in cm find changereviewcomment: `cm find changereviewcomment` prints three new fields, in `--format` and in the `--xml` output:

  7. Change

    All platforms - Command-line: Comment path, item, and edit date in cm find changereviewcomment: Refer to cm find and cm showfindobjects.

  8. Change

    All platforms - Command-line: Machine-readable reviewers and review status: `cm codereview reviewer list` and `cm mergerequest reviewer list` now accept `--xml` (or `--xml=` ) and `--encoding` , so scripts can read the reviewers and their status as XML.

  9. Change

    All platforms - Command-line: Machine-readable reviewers and review status: `cm find review` and `cm find mergerequest` have two new format fields, `{codereviewstatusname}` and `{mergerequeststatusname}` . They print the status in English regardless of the client language, in the same words that `--status` and `--mergerequeststatus` accept. The `where` clause of both commands also accepts these English words, as well as the words in the client language and the numbers.

  10. Change

    All platforms - Command-line: Machine-readable reviewers and review status: Previously, `cm codereview -e --status` on a code review with no reviewers did nothing. It now fails with a message that points to `cm codereview reviewer add` and `cm codereview review` .

  11. Change

    All platforms - Command-line: Machine-readable reviewers and review status: Refer to cm codereview, cm find, and cm showfindobjects.

  12. Change

    All platforms - Command-line: Set the review description from the command line: `cm codereview` and `cm mergerequest` can now set the description of a code review or merge request. This is the text that the Desktop GUI shows at the top of the review.

  13. Change

    All platforms - Command-line: Set the review description from the command line: When you create a review, or edit one with `-e` , use `--description` to set the text, or `--descriptionfile` to read it from a file. To read the description from the standard input, use `--descriptionfile=-` .

  14. Change

    All platforms - Command-line: Set the review description from the command line: When you edit a review, `--description` replaces its description, or adds one if the review has none.

  15. Change

    All platforms - Command-line: Set the review description from the command line: To clear the description, use an empty value: `--description=` .

  16. Change

    All platforms - Command-line: Set the review description from the command line: When you edit the description with `cm codereview comment edit` or `cm mergerequest comment edit` , the Desktop GUI now keeps showing it as the review description.

  17. Change

    All platforms - Command-line: Set the review description from the command line: Refer to cm codereview.

  18. Change

    All platforms - Command-line: Comment on deleted files and on a specific revision in reviews: `cm codereview comment add` and `cm mergerequest comment add` can now comment on a file that the review deletes. `--path` anchors the comment to the revision that the diff shows for that file, as the Desktop GUI does. The new `--revision` option comments on a specific revision, for example `--revision=revid:1234` . It must be one of the revisions that the diff of the review, or of `--changeset` , shows. Inline comments now also work on shelve reviews.

  19. Change

    All platforms - Command-line: Comment on deleted files and on a specific revision in reviews: Refer to cm codereview.

  20. Fix

    All platforms - Command-line: Subscribe to code review and merge request emails: `cm codereview` and `cm mergerequest` have three new subcommands for your own review email subscription: `subscribe` , `unsubscribe` , and `subscription` . `subscription` prints whether you're subscribed, the reason (owner, reviewer, commented, mentioned, manual, unsubscribed, or none), and whether review emails are enabled for the repository. The values are fixed English words that scripts can parse, and the command also accepts `--format` .

  21. Change

    All platforms - Command-line: Subscribe to code review and merge request emails: The output looks like this:

  22. Change

    All platforms - Command-line: Subscribe to code review and merge request emails: To stop receiving the emails of a review, run `cm mergerequest unsubscribe 1367` . After you unsubscribe, you're subscribed again automatically when you comment on the review, someone mentions you, or someone adds you as a reviewer again.

  23. Change

    All platforms - Command-line: Subscribe to code review and merge request emails: Refer to cm codereview.

  24. Change

    All platforms - Command-line: Mark a review change request as applied: `cm codereview comment apply` and `cm mergerequest comment apply` mark a change request as applied in a changeset, and `comment unapply` marks it as not applied again. Previously, only the `[apply-change:]` marker in a check-in comment could set it. `cm` fails with an error when it can't save the change, for example when you don't have the `change` permission on the reviewed branch.

  25. Change

    All platforms - Command-line: Mark a review change request as applied: Refer to cm codereview.

  26. Change

    All platforms - Server: Fewer server threads used by REST API downloads: The server now sends REST API downloads, such as file downloads from the Workbench or Storage downloads, asynchronously, without keeping a server thread busy for each download in progress. Previously, every active download blocked a thread while it waited for the client to receive the data. When many downloads ran at the same time, or downloads were slow because of large files or slow or distant clients, the server had to keep creating threads, which used more memory and could delay other requests while they waited for a free thread.

  27. Change

    All platforms - Server: Fewer server threads used by REST API downloads: In internal tests with 50 simultaneous slow downloads of 20 MB each, the server used about a quarter of the threads (17 on average instead of 65) and delivered the same data in the same time.

All platforms - Command-line: Comment counts and reviewers in cm find review

  1. Change

    `{reviewers}` : every reviewer and their review status

  2. Change

    `{modifieddate}` : date of the last activity

  3. Change

    `{comments}` : number of comments, questions, change requests, and their replies

  4. Change

    `{unresolvedissues}` : number of change requests that aren't applied and questions that aren't answered

  5. Change

    `{unresolvedchanges}` and `{unansweredquestions}` : the two parts of the `{unresolvedissues}` count

  6. Change

    `{guid}` : the review GUID

All platforms - Command-line: Comment path, item, and edit date in cm find changereviewcomment

  1. Change

    `{path}` and `{itemid}` give the file a comment is on. Comments that aren't on a file print an empty path and item ID.

  2. Change

    `{modifieddate}` gives the date of its last edit.

Bug

  1. Change

    All platforms - Command-line: cm ls shows the owners of items in xlinked repositories: `{owner}` in `cm ls` now shows the owner names of items inside an xlinked repository. `cm ls` resolves them on the server that hosts that repository.

  2. Change

    All platforms - Command-line: cm ls shows the owners of items in xlinked repositories: Refer to cm ls.

  3. Change

    All platforms - Command-line: cm merge --conflict-markers now exits with code 1 while conflict markers remain: When you run `cm merge --merge --conflict-markers` again and files from the earlier merge still have conflict markers, the command now lists those files and exits with code 1, the same as `cm merge --list-conflict-markers` . It keeps exiting with code 1 until you resolve the markers. Previously, it printed "No merges detected" and exited with code 0, so scripts that checked the exit code treated the merge as finished.

  4. Change

    All platforms - Command-line: cm merge --conflict-markers now exits with code 1 while conflict markers remain: Refer to cm merge.

Pick your Unity version

Unity Releases compares releases against the version your project is on. Picking it now keeps Compare versions focused on what changes between where you are and where you might be going.