What’s New in AccuRev 7.2
Highlights of the new developments in AccuRev 7.2 are presented here.
AccuRev Git Client
AccuRev 7.2 introduces a new client — the AccuRev Git Client — that works by using native Git commands to interact with the AccuRev server. The client can be invoked via the Git command line or via third-party Git GUI applications. This new client allows Git users to work within an existing AccuRev infrastructure to pull and push changes from an AccuRev stream, just as the AccuRev GUI and command line client work with update and promote commands.
The AccuRev Git Client is installed by the AccuRev client-only installers for 64-bit Windows, 64-bit Linux, and macOS 10.13+ platforms. The installer does not install the native Git program; that must be done separately.
Note that no installation or configuration changes to the existing AccuRev server are required in order to use the AccuRev Git Client. Furthermore, all triggers, ACL, EACL, locks, and user access functionality work with the new Git client in the same way they work with the AccuRev GUI (acgui), command line, and WebUI.
For detailed information, consult the AccuRev_Git_Client_Release_Notes.pdf document in the
/doc/ directory (installed by the AccuRev client-only installer).
A new type of schema field called “calculated timespan” dynamically calculates the time difference either between two timestamp fields or between a timestamp field and the current time. Such a field can be viewed and used in issues, active issues tables, issue queries and results, validation conditions and actions, and workflow conditions.
The Timespan field type can be used to define either an “editable timespan” field or a “calculated timespan” field in the schema editor. The editable timespan field type was available prior to 7.2. It allows you to type in any non-negative numeric value and choose a granularity of days or hours for the value. If you enter an integer value (e.g., 45), it is automatically converted to a decimal (45.0).
To create a calculated timespan field, check the Calculated by AccuRev checkbox and choose the two timestamp fields whose difference will be reflected in the calculated timespan value.
Here are some important notes about calculated timespan fields:
- They are read-only. You cannot type a value into a calculated timespan field.
- The granularity for a calculated timespan field is automatically set to days.
- The value of a calculated timespan field in an issue is updated when an issue is first displayed and whenever the issue is saved.
- If a timestamp field associated with a calculated timespan field does not have a value, the current date and time are used in its place for the calculation. The value of the calculated timespan field is then fluid, i.e., it is recalculated by AccuRev each time the issue is displayed or refreshed.
- If a calculated timespan field is synchronized to a third-party issue tracking system (ITS), its value will be static on that system. This conflicts with the potential fluidity of the calculated timespan field’s value. For this reason, calculated timespan fields should not be used with AccuSync, Micro Focus Connect, and other synchronization products.
- The expansion of the existing Timespan field type to support calculated timespans imposes the following constraint: Pre-7.2 AccuRev clients cannot be used to make schema changes; a 7.2 client must be used in order to modify a schema.
Release 7.2 introduces a new element status called “(subtwin)”. An element has (subtwin) status if one of the directories in its path has (twin) status. Only one of the (twin) directories and its content can be accessed through the pathname; the other(s) can be accessed through their unique element-IDs. To resolve (subtwin) status, the actual (twin) parent directory must be resolved by renaming and/or defuncting all but one of the twin directories.
The Update operation has been expanded to support merging of files with (member)(overlap) status after the update has completed. A new Merge Overlap button has been added to the Update progress dialog:
The Merge Overlap button becomes active after the update completes, if there are only non-twin overlaps in the workspace. Clicking the button initiates a process of merging the overlapped files against the backing stream (equivalent to manually initiating a bulk-merge of the overlapped files). The user can opt to have trivial merges kept automatically. Non-trivial merges are always displayed in a graphical merge window so that the user can manually resolve conflicts.
The File Browser has a new dropdown menu called Diff Against in Outgoing mode:
The Diff Against menu allows you to choose which version you want to diff your changes against in the Diff pane. The choices are:
- Basis — The version that you began your work with, i.e., the result of your most recent Update or Promote operation, whichever came later.
- Backed — The version of the file in the backing stream.
- Most Recent — The result of your most recent Keep operation. If you haven’t done any Keeps, this is the basis version. (This option is not offered for a stream or an inaccessible workspace.)
Making a selection in this dropdown menu is equivalent to choosing among Diff Against => Basis Version, Backed Version, and Most Recent Version in the file context menu, except that the difference is displayed in the Diff pane of Outgoing mode instead of in a separate tab.
The dropdown menu defaults to the Basis value. However, you can change your default value by selecting a different value and then clicking the Save Layout button.
The Merge tool now supports a more convenient way to include changes from multiple sources in a conflict section. Prior to 7.2, you had to hold down the Ctrl key while you clicked on conflict-resolution buttons (i.e., Theirs, Common Ancestor, or Mine) in the desired sequence. In 7.2, you click that same sequence of conflict-resolution buttons without holding down the Ctrl key. The buttons you clicked are displayed in the “on” state, and they are annotated with numbers to indicate the order that you selected:
You can remove any block that you added to the merged version by clicking the corresponding button again to turn it “off”.
- You cannot remove an inserted block once you’ve performed a manual edit because doing a manual edit resets all the conflict-resolution buttons to the “off” state.
Any manual changes that you’ve made to a section will be overwritten if you return to that section and click a conflict-resolution button.