What's New in P4V?

Try Today      Full Release Details

“In our last P4V release of the year, we have made several enhancements to improve your use of P4V—including the addition of advanced filtering options, to help users locate changelists and workspaces more efficiently. I am also excited about the enhancements we’ve made to P4VC, a tool popular among our customers with large ecosystems who prefer to integrate P4V into their ecosystem.  

We appreciate all the suggestions we’ve received from our customers this past year and are excited to bring you more features in 2025.” 

Senior Director of Product Management, Brent Schiestl 

Advanced Filtering Options 

P4V now includes advanced filtering options to help users locate changelists and workspaces more efficiently. 
 
Changelist Filtering * 
Users can now filter both pending and submitted changelists by multiple users and/or multiple workspace entries using the new “match any of” filter option. Users can now also use the following advanced filtering options when filtering changelists by workspace: 

  • "contains" 
  • "starts with" 
  • "ends with"  

Users can begin filtering changelists with this functionality by using the following methods: 

  • By typing values in a comma-separated list if you have selected "match any of". 
  • By using * wildcards for strings that begin with, end with, or contain the substring you specify. 
  • By using the Select User dialog box to browse for users or the Select Workspace to browse for workspaces. 
  • By typing a string in the Select User dialog box. 

 
Workspace Filtering * 
Users can now filter the “owner” of a workspace with the following options: 

  • “contains” 
  • starts with 
  • ends with”   

A screenshot of a computer

Description automatically generated


* To make use of these updates, ensure you have updated Helix Core Server at version 2024.2 (or later). 

 

P4VC Enhancements  

P4VC, the command-line client integration tool for P4V, now includes the following enhancements to existing commands:  

  • p4vcworkspacewindow -r: Refreshes the workspace. 
  • p4vcworkspacewindow -s, p4vc workspacewindow -t, or p4vc workspacewindow -r: If a P4V instance is already running, the following commands will now update the selection in the currently running instance of P4V (if applicable). If there is no currently running instance,  these commands will open a new instance. 
  • diff, diffhave, or diffprev: Users can now combine depot and local file paths. 

Swarm Integration Enhancement 

Additionally, this update features a more seamless integration between P4V and Swarm with these new commands: 

  • p4vc reviewrequest: Request a Helix Swarm review of a P4V changelist from the command line. 
  • p4vc reviewupdate: Update an existing review. 
     

Updates 

  • Streamlined Unshelving:Unshelve files from any stream into a sparse stream for improved ease-of-use. * 
  • Delta File Transfer Optimization: For files using the Binary+F file type, this feature can reduce data transfer time during “Get Latest” and “Get Revision” operations.  Best results come from high-latency connections where small changes to large files exist between the revision being requested vs. the revision currently in the workspace. * 
  • Improved Labeling for Edge Servers: When creating a label on an Edge server, the user can now choose if the label is local to the Edge server or global throughout the Commit-Edge environment.  Previously the label’s scope was based solely on the value of the rpl.label.global configurable set on the server.  
  • Diff Summary for File Revisions: This feature is now available in the History tab for selected file revisions, simplifying the process of identifying changes between file revisions. 


A screenshot of a computer

Description automatically generated 

 

* To make use of these updates, ensure you have updated Helix Core Server to version 2024.2 (or later). 

 

In Case You Missed It  

  • Our P4V 2024.3 release introduced Helix Swarm’s new “blocking approval” feature within P4V—enabling users to learn why code review requests are blocked to more quickly make the updates needed to submit their changes. 
  • Our P4V 2024.2 release introduced support for lightweight branching via Sparse Streams. This feature gives users a way to instantaneously create a stream (branch with built-in rules), accelerating their teams’ workflows.  

What's New in P4V?

Try Today      Full Release Details

I’m excited to announce the release of P4V 2024.3 which contains some highly requested updates!  

Fans of Helix Swarm’s blocking approval feature can now learn why code review requests are blocked to more quickly make the updates needed to submit their changes, all within P4V. Helix Core Cloud users can also manage select server configurables for Helix Core within P4Admin. All P4V users will see efficiencies when reverting pending changelists, with users now having the ability to revert both the stream specification and the individual files within that stream in a single action.  

As always, we strive to make the best product for our customers and greatly appreciate your suggestions and feedback.

Senior Director of Product Management, Brent Schiestl 

Blocking Approval from Helix Swarm Available in P4V 

Helix Swarm’s new “blocking approval” feature within P4V helps users understand why their changelist submit attempt cannot proceed in its current state. This feature gives users the additional context they need without forcing them to hop out of P4V and over to Swarm. 

This feature is accessible in two ways: 

  • Pending Changelist Tab: 
    • Copy Name 
    • Navigate to the pending changelist tab in P4V.
    • Look for the “Review State” column.
    • The column will have a red “informational icon” if the review is in a blocked status.
    • Hover over the red informational icon to view why the review is blocked. 
  • Submit Dialog  
    • Request New Swarm Review (if Swarm is configured) 
    • Proceed to the submit dialog.
    • If the review is blocked, the Submit button will be greyed out and a new section will explain why the submit is blocked due to approval rule(s) from Helix Swarm.  

A screenshot of a computer

Description automatically generated
 

Revert Stream Specifications and Files in One Action 

While reverting a pending changelist, users can now revert changes to both the stream specification and the individual files within that stream in a single action. This feature allows users to easily undo all the changes made in a pending changelist, rather than having to revert the stream specification and file changes separately. 

To perform this, users will right-click on the changelist and select ‘Revert Items’ on the menu. All items will be selected by default and the user can decide whether to deselect anything prior to proceeding with the standard Revert operation. 

A screenshot of a computer screen

Description automatically generated
 

Advanced Configuration Controls in P4Admin  

In this update, we’ve made several enhancements to the Configurables tab, including: 

  • Helix Core Cloud customers can now manage a select list of configurables, including those that enable Stream Components functionality in P4V. These configurables will enable them to turn functionality on/off within Helix Core. 
  • All customers will now have the ability to filter and sort the list of configurables by a new “category” field. 
  • Lastly, certain configurables now have a fixed set of values to prevent errors and save time.  This update also applies to all customers. 

 A screenshot of a computer

Description automatically generated
 

Updates 

  • Auto-formatting paths in address bar: backslashes will automatically convert to forward slashes.   
  • P4VC updates: A new ability to launch a diff display via p4vc without first requiring the opening of the diff dialog.  

Get the Update 

To take advantage of all the latest features and updates, please download the latest Helix Visual Client (P4V) 2024.3 today.  

In Case You Missed It 

  • Our P4V 2024.2 release introduced support for lightweight branching via Sparse Streams. This feature gives users a way to instantaneously create a stream (branch with built-in rules), accelerating their team’s workflow. 
  • Our P4V 2024.1 introduced more options on the changelist view, enabling users to easily launch actions when viewing individual pending and submitted changelists.    

What's New in P4V?

Support for Lightweight Branching via Sparse Streams 

Instantaneously Create New Branches

P4V now supports Sparse Streams — a highly anticipated new feature from Helix Core 2024.1 which gives users a way to instantaneously create a stream (branch), accelerating your team’s workflow.

When creating a new stream, users will now see the new sparse stream types available to select: “sparsedev” (sparse development) or “sparserel” (sparse release). P4V also supports merge down and copy up operations to and from the sparse stream, and the ability to convert a sparse stream to a “traditional” stream (sparsedev to development and sparserel to release).  

With this new lightweight branching option, new streams aren’t populated with all the metadata from the files in the parent stream. Instead, files are only branched as they are opened for editing. This significantly reduces the amount of data stored per branch and saves time and resources. Sparse Streams also allows teams to implement common branching methodologies, such as "branch per bug” and “branch per feature”.  

Watch this on-demand webinar for a walkthrough and demo of Sparse Streams or read our  Helix Core Visual Client (P4V) Guide for information on how to get started. 

Updates 

Backup-Eligible Partitioned Workspaces 

While creating a new workspace, users have the option to create a workspace that is both partitioned and eligible for backup. The advantage of using this type of workspace is that it can reduce central contention on the Helix Core server, potentially improving overall performance.

To use this feature, create a new workspace and, on the Advanced tab, select the client type: “Partitioned-Jnl”.  When you pick this option, you’ll see a corresponding description that says “Writeable - Eligible for backup – server tracking in independent location” to help confirm your choice.  

Spec Comments 

Users can now include comments in their label, client, and branch specs by typing ## at the beginning of the comment. This enables developers to comment on changes, give context to the spec setup, and more — increasing overall readability and traceability. 

Export JSON Files

In P4Admin, administrator users can now export a JSON formatted file directly from the GUI within the “Topology” tab. This file can be provided to Perforce Support to help troubleshoot multi-site issues, review your existing configuration, and/or to plan future growth. 

To use this feature, go to P4Admin, select the “Topology” tab, and the “Save Data” button in the bottom right will now show an option called “To File” which will export topology data to JSON format. 

Export JSON Files

Get the Update

To take advantage of all the latest features and updates, please download the latest Helix Visual Client (P4V) 2024.2 today. 

In Case You Missed It

To begin utilizing the features in P4V 2024.2, make sure you’ve upgraded to the latest version of Helix Core. You can learn more about Helix Core 2024.1 in our What’s New Page

You can also watch this on-demand webinar for a walkthrough and demo of Sparse Streams and the newest features in Helix Core below.

What's New in P4V?

Extended Options on the Changelist View  

Save time and easily launch actions when viewing individual pending and submitted changelists.   

With newly expanded menu options, which can be launched via a helper menu next to the changelist id, users can now launch custom tools and complete the following actions when viewing a pending or submitted changelist 

Pending Changelist: 

  • Submit 
  • Copy Name 
  • Re-resolve Previously Resolved Files 
  • Request New Swarm Review (if Swarm is configured) 
  • Update a Swarm Review (if Swarm is configured) 
  • Copy Swarm URL (if Swarm is configured) 
  • Refresh Pending Changelist 
Pending Changelist

 

Submitted Changelist: 

  • Copy Name 
  • Get Revision 
  • Merge/Integrate Files Using Submitted Changelist 
  • Copy Files Using Submitted Changelist 
  • Branch Files 
  • Undo Changes in Changelist 
  • Tag with Label 
  • Show Review of Changelist in Swarm (if Swarm is configured) 
  • Show Submitted Changelist in Swarm (if Swarm is configured) 
  • Copy Swarm URL (if Swarm is configured) 
  • Refresh Submitted Changelist  

This can be especially useful when launching the “Go To...” keyboard shortcut to find your desired changelist. 

Submitted Changelist

P4 Admin Enhancements 

Easily validate license files 

While running Helix Core 2023.2 or later, users can launch the “Show server IP and MAC addresses” option from the “Account Management Quicklinks.” This will bring up a new dialog that displays the valid IP and MAC addresses for the server. This is helpful in situations like moving from unlicensed to licensed or if existing hardware is being refreshed, thus requiring a new server license. This should minimize instances where an invalid IP/Mac address is provided to Perforce for license generation.  

In addition, Helix Core server validation logic will run each time a new license file is loaded. If the value of the “IP Address:” field on the license doesn’t match a valid address tied to the server, it will be promptly rejected from being loaded. This prevents unplanned downtime due to loading an invalid license file. 

Example Valid License Address Dialog: 

Valid License.png

Example Error Message: 

Invalid License.png

Helix Core Cloud User License Count Widget 

Within P4Admin, Helix Core Cloud customers now have access to a widget that shows the following: 

  • Number of licenses in use. 
  • Number of remaining licenses. 
  • Number of users with licenses owned by Perforce (Helix Core Cloud customers are not charged for these users). 
License Widget

In addition, Helix Core Cloud customers will be able to clearly see which individual users are owned by Perforce. These user account details are read-only.

Helix Core Cloud Users

Miscellaneous Updates  

  • Optimized performance for a variety of scenarios, including: 
    • Working with large changelists 
    • Adding or reverting a large number of files 
    • Displaying a large number of files in the workspace view 

What's New in P4V?

Configurables Management GUI in P4Admin

View and edit officially supported configurables via P4Admin’s new “Configurables” tab. 

Configurables are used to customize and fine-tune the behavior of Helix Core. This feature adds a graphical user interface into P4Admin, which allows customers to visualize and easily search a list of supported configurables, as well as easily update the value of a given configurable. 

Within P4Admin, you will notice a new tab called “Configurables.” This tab will present a list of all supported configurables and will only be enabled for superusers and administrators. From here, search through the list, double click on a given configurable, and then change the value (if desired). You will be able to see who made the last change to that configurable (if applicable) and why (if a comment was left). This feature requires that the customer’s Helix Core server is upgraded to Helix Core 2023.2.

P4V 2023.4 - New Configurables window

Activity Display

Quickly and easily see statuses of active or recent commands. 

A new activity display widget replaces the “spinning barbershop pole” (P4V 2023.4 - old "spinning barbershop pole" widget) in the bottom right corner of the P4V GUI. This new widget shows commands that are currently (or were very recently) active, indicating if they have succeeded, errored, or are in-progress. For users of Helix Core 2022.2 or greater, this feature also takes advantage of command grouping when showing the in-progress activities.

To use this feature, click the green dot in the bottom right corner of the P4V GUI to open the activity display pane. The pane will remain open until the green dot is clicked again to close it. 

P4V 2023.4 - New Activity Display pane

Other Updates

  • Qt Version Upgrade 
    • The version of Qt for Windows and Linux has been upgraded to Qt 6.5.3.  MacOS remains at Qt 6.3.1 for the time being. 
  • OpenSSL Version Upgrade 
    • The version of OpenSSL has been upgraded from 1.1.1v to 3.0.10.

What's New in P4V?

Cross Server Workspace Visibility

Get visibility into all your workspaces. 

Users can now view all their workspaces regardless of which Helix Core server the workspace is associated with. Having been only previously available via the command-line, this new feature now allows users to visualize all their workspaces to more easily find changes associated with a given workspace.

To use this feature, users will navigate to “Select Workspace” and select the “Show workspaces from all servers” check box. Give yourself some time back and increase user productivity across your team.

Enhanced Progress Indicators for Parallel Syncs   

Get more insight into the status of your parallel syncs.

If you’ve ever wondered if a sync has stalled, this update is for you. For syncs that use parallel behavior*, users will now see more accurate progress. While the sync is taking place, the progress dialog will now show how many files have been synced out of a total number of files contained in the sync request. 

*Parallel sync is a config parameter controlled by the system admin and is enabled automatically when the net.parallel.threads config parameter is set in a server. 

Parallel Sync Status Bar

Command Group Logging

Tie multiple commands to a single action for enhanced traceability and troubleshooting.

P4V now automatically passes the command groups to the P4D structured logs. With easier access to the P4D structured logs, admins gain enhanced traceability, enabling them to quickly troubleshoot as issues arise.

Command groups support a detailed type of logging that can be useful for understanding the performance of P4V. There are many instances where a single action (ex: auto-resolve, integrate, reconcile, submit, etc.) in P4V could result in multiple P4 commands being executed.

By being able to tie these commands back to the single action, troubleshooting and traceability have both significantly improved. Admins are now able to get to the root cause of performance issues, returning the system back to optimal performance more quickly. 

It is also possible to configure the P4V log to show the multiple server commands that occur because of a single user action. Be aware that these logs are local to the client, however. To view the list of command-group ids and the user action in P4V that initiates each command-group, view the "About Command Groups” section of the P4Admin User Guide.

Miscellaneous Improvements

In this update, admins and users will also find a variety of new user preferences and global properties that will improve the overall experience of P4V. A few of these improvements include:

  • Global locks visibility, regardless of which server the lock originated on.
  • Higher resolution tool bar and tab icons.
  • Mainline streams are now sorted in alphabetical order while selecting which streams should appear on stream graphs. 

To take advantage of all the latest features and updates, please download the latest Helix Visual Client (P4V) 2023.3 today. 

What’s New in P4V?

Virtual File Sync

Lessen sync wait times and save space with Virtual File Sync.

Virtual File Sync is a highly anticipated feature that provides users with the ability to sync only the file metadata on the initial request, and later choose to download the full file content when needed.

Virtual File Sync will accelerate sync times for teams working with large file sizes and reduce the amount of data transferred from the server to the user’s local machine. This feature will add speed and cost efficiency to use cases that do not require full downloads of large assets, such as shaders, textures, and 3D models.

To realize the benefits of Virtual File Sync, an admin first needs to upgrade their Helix Core Server to version 2023.1. Then each Helix Core user will need to install and run the Helix Core Virtual File Service (P4VFS)* client agent on their individual Windows workstations. Clients that support P4VFS (i.e., P4V 2023.2, P4D 2023.1) can then be used to create a new workspace with the new “altsync” property enabled.

(*P4VFS is currently available as a Tech Preview exclusive to Windows clients.)

New Diff Experience

Easily review, revert, and submit changes to files.

The diff experience is one of the most utilized features during development, which is why we created a new diff experience that makes it easier for teams to review, revert pending changes (both chunks within a file as well as entire files), and submit changes to files.

Previously, when launched at the changelist level, the old diff experience would launch separate windows for each file in the changelist. The new diff experience is available in-line when evaluating any “pending” or “submitted” changelist, and users can scroll through diff summaries in a single unified view.

This enhancement enables admins and users to view all of their diffs on one screen which leads to increased developer velocity. 

New diff experience

Miscellaneous Improvements

In this update, admins and users will also find a variety of new user preferences and global 

properties that will improve the overall experience of P4V.

A few of these improvements include:

  • The ability to automatically sync files to the latest revision after they are unshelved.
  • New global properties that can be applied to warn when limits are reached for asset number of files checked out or marked for deletion.
  • Added file counts to the reconcile dialog.
  • Setting the DVCS functionality (i.e. personal server) “off” by default for new users.

For the full list of features and enhancements, please see the full release notes.

What’s New in P4V?

New Platform Support

P4V adds to the list of officially supported platforms!

With this release, native support for macOS arm64 is now here. In addition, Windows 11 users are also now officially supported.

If you weren't already aware, the P4API macOS arm64 build is currently available via https://ftp.perforce.com/perforce/r22.2/bin.macosx12arm64/. We are still working on adding native macOS arm64 support for P4 (command-line client) and P4D (Helix Core server).

Infrastructure Upgrade

A major version QT upgrade has been delivered.

We have upgraded our underlying QT infrastructure from QT 5.15.1 to QT 6.3.1.

Other Notable Updates

See the official release notes for a full list of bug fixes.

What’s New in P4V?

Support for Writable Streams Components

Users now have ultimate flexibility in defining Component and Consuming Stream relationships.

We have added support for Streams Components (introduced in 2022.1) to be writeable in addition to read-only, allowing users to submit changes to the Component Stream directly from a Consuming Stream. The two new writable Component Types, “writeall” and “writeimport+”, give teams granular control in defining which files a Consuming Stream can submit for change to a Component Stream.

Rename Client Workspaces

Workspace names can now be edited after initial creation.

Projects evolve, hardware changes, and the naming convention you used for your client workspace at initial inception might not fit your needs today. With this release, those less-than-ideal client workspace names can be adjusted. By default, superusers and admins can rename any client workspace (regardless of ownership), and individual users can only rename workspaces they own. This setting is configurable by the Perforce admin.

Max Memory Limitations for User Groups

Reduce the risk of server performance issues by temporarily rejecting commands when a memory limit has been exceeded.

Admins can set memory limits on specific user groups to help prevent a server from running out of available memory. This feature limits the amount of memory on a per user, per command basis. If the predefined memory threshold is exceeded during command execution, the operation will terminate without delay, which is preferred to failing after consuming time and resources. It works nicely for automated and novice user groups. Setting can be managed using P4Admin.

P4V 2022.3 Memory

Other Notable Enhancements

New support for Streams, including:

  • Find changelists containing (or not containing) streams via a new filter
  • Choice to create new or reuse workspace when choosing to “Work in this stream”
  • Line numbers added to Stream specification paths
  • Option to obliterate an entire stream at the end of an existing workflow

Users can now multi-select files and invoke context-click actions in the Submitted Changelist dialog.

What's New in P4V?

Additional Support For Stream Components

Component based development made even easier! Now you can map Component Streams to Consuming Streams with less manual effort and fewer mishaps.

Component based development best practices are now built directly into the P4V, via a new Components section on the stream spec, providing a clean and easy way to reuse components across projects.

Highlights of the improved functionality include:

  • Elimination of manual work. There’s no longer a need to copy and paste all the paths of one stream into another to define a component/consumer relationship. Now, the relationship between streams is mapped by writing just a single line of text in P4V, saving time and reducing the chance of human error.
  • Component versioning. Component/consumer relationships can be defined at a specific change number. There’s no requirement to take the latest version of a component – use the version that works best for your project.
  • Error checking. When setting up component relationships, users will be stopped if the relationship creates circular dependencies or tries to consume a stream that doesn’t exist.

Not familiar with component based development? Or trying to determine if it would work for your product? Check out this article.

Improved Handling of Stream Deletion

See who deleted a stream and when.

With this release, the act of deleting a stream is now directly tied to a changelist. This allows users to scroll through previously submitted changelists to find out when the action occurred and who performed the action.

Additional ways deleted streams will be visible in the client: 

  • Previously deleted streams can be viewed in a stream list view.
  • History of a deleted stream can be viewed.
  • A deletion event can be seen in the stream revision graph.
Screenshot of the Stream Revision Graph instead P4v, showing how you can view deleted streams.

Topology Improvements For System Admins

Filter the topology graph to see the servers that are most relevant to the question you want to answer.

Don’t let stale or test servers clutter your view. Get the most accurate representation of your architecture when training new staff, troubleshooting issues, or viewing other tasks at hand with the latest topology filtering capabilities. In this release, the new filter options will appear at the top of your topology graph within P4Admin.

Screenshot of the topology filter feature in P4V 2022.2

Other Notable Enhancements

Auto-reconnect extended to P4Admin: The auto-reconnect functionality that was introduced to P4V in the 2020.2 release has been extended to P4Admin. It is enabled by default for new users and the reconnect interval defaults to 30 seconds.    

User groups now have a description field: You can now enter a description for user groups as desired and view the description in the list view of groups. This is helpful to differentiate one set of users from another. 

What's in the Latest Release of P4V?

Workspace Management Improvements

It is now easier and more intuitive to find your desired workspace and return to it between connections.

We’ve heard that some users struggle to find their desired workspace.  To help with this, we’ve tweaked the experience around selecting recent workspaces.  P4V now has a new menu option, “More Workspaces…” below the last recent workspace in the list.  Selecting this option will open a new window to aid the user in locating their desired workspace.

We also know that on occasion some users get into P4V without realizing that they do not have a workspace selected.  To alleviate this confusion, we’ve made the default behavior of new P4V installations to restore the previous connection.  This means the standard Open Connection dialog will be bypassed and the user will automatically be brought into their most recent server connection with their most recently used workspace selected.  In addition, for those that do not want to bypass the Open Connection dialog, P4V now remembers the most recent workspace per server connection on the connection dialog.  Both enhancements should minimize the occurrence of users connecting to a server without having a workspace selected.  Less user confusion leads to higher development velocity.

Topology Graph Enhancements (Technical Preview)

Creating and saving the “p4 topology” output has never been easier.

We’ve enhanced the topology functionality within P4Admin so superusers can now copy to the clipboard the “p4 topology” command output used to render the graph.  This makes it easier share the output when interacting with peers as well as with Perforce.  As a reminder, this feature is in “technical preview” status while we continue to make additional enhancements based on your feedback. Please email [email protected] with your input on this feature. This feature requires Helix Core server version 2021.2 or greater.

Auto-Reconnect Enhancements

Why wouldn’t you want to automatically reconnect to the server?  We felt the same way.

We originally introduced auto-reconnect functionality back in the 2020.2 release of P4V.  In the 2021.3 release, we added on to that with our “interrupted sync recovery” functionality.  We now believe that all users should have auto-reconnect turned on by default, which means “interrupted sync recovery” is also on by default.  The change in default behavior only applies to new P4V installations.  If your organization wants to require all users to use auto-reconnect (or for some reason do not want to allow any users to use auto-reconnect), a new server property now exists to control this behavior companywide.

Miscellaneous Improvements

Small improvements that can make a large impact.

  • A new preference exists to prevent users from inadvertently deleting files.  Users can set a threshold to have P4V throw a warning when the user attempts to mark for delete a number of files that exceeds the threshold in a single transaction.
  • A new server property exists to require all stream edits to be checked out before editing.  This will help prevent stream edits from being published prematurely which can otherwise lead to breaking changes.
  • When creating a new depot within P4Admin, the default depot type is now set to “stream”.  This is to encourage new Helix Core customers to start with Streams as their preferred branching mechanism.
  • Windows users can now set their command prompt application preference and Linux users can now set their terminal and file manager application preference.  This will be used when users initiate the “Open Command Window [Terminal] Here” menu option.  This enhancement does not apply to Mac users.

What's in the Latest Release of P4V?

Global Lock Visibility

This change allows you to stop throwing away work and increase your development velocity.

Previously, when a user’s workspace was connected to an edge server, there was no way to initiate a global lock on a given asset. Instead, all locks were local to the edge server. Now, when a user is connected to an edge server and chooses the “lock” action against a given asset, that lock will automatically be global in scope, and all other P4V users connected to different servers will see a lock badge on the file to designate that the file has been globally locked. This added visibility will inform users to avoid editing an asset that is globally locked by another user and will eliminate throw away work.

Find in Streams

Easily trace a given file or directory across all dependent streams.

Ever worked with a shared library that is imported by multiple disparate streams? Sometimes it’s nice to know exactly which streams are dependent on that library. Answering that question is easier than ever since you can now right-click on a depot path and initiate a “Find in Streams” action to see all streams that are dependent on that depot path. This level of traceability helps you understand the ripple effects of modifying a particular asset. For example, it can help you understand the scope of potential testing that will be required. Options are also available for limiting search results based on path type, such as import, isolate, share, or exclude This enhancement is a big win for traceability when using streams.

Topology Reporting (Technical Preview)

Generate a visual graph of all Helix Core services to understand your overall topology.

Customers working at scale tend to deploy services such as brokers, proxies, and replicas, including edges. Over time, a complex multi-server deployment can become challenging to understand and manage. Super users can now access a new “topology” tab within P4Admin which will draw a graph of all services and how those services are interconnected. Individual servers can be clicked on to reveal more information about the server. This functionality is useful for capacity planning, for troubleshooting, and for engaging with Perforce Support and/or Consulting. This feature is being released in a “technical preview” status while we continue to make additional enhancements based on customer feedback. Please email [email protected] with your input on this feature. This feature requires Helix Core server version 2021.2 or greater.

P4V 2021.4: Topology
P4V 2021.4: Topology

Miscellaneous Improvements

  • Preview panes within P4V now support Markdown for improved readability. In addition, list views now support the display of HTML links for added convenience.
  • P4V now also supports one-to-many mappings for both classic and stream depot types.
  • P4VJS now supports the ability to get file icons which can be used in HTML windows and tabs.
  • P4Merge now offers a toolbar button to toggle preference for showing tabs and spaces.

What's in the Latest Release of P4V?

Interrupted Sync Recovery

Improve your velocity with automatic interrupted sync recovery!

With remote work exploding in popularity, users are often connecting to Helix Core servers via less stable internet connections than when physically in the office. This can lead to more frequent server disconnects which, when in the middle of a sync operation, previously caused that operation to fail and required the user to manually restart it upon successful reconnection to the server.

Users can now take advantage of the automatic reconnect functionality introduced in the P4V 2020.2 release and P4V will automatically restart any sync operations that were in progress when the connection is automatically re-established. This is especially useful for long-running syncs that users may kick off at the end of their workday.

New Tab Shortcut

Navigate more efficiently through tabs than ever before!

Working with lots of tabs within P4V? Now it’s easier to open a new tab, whether it be a standard tab or a custom tab implemented via P4VJS. Simply click on the anchored “+” icon next to the left-most active tab to reveal a list of currently unopened tabs. This saves the user from having to navigate to the “View” menu in order to open new tabs. The “+” button will disappear if all available tabs are open.

Markdown Support in Description Fields

Standard description fields – such as the changelist description – will now render in Markdown based on user preference. A floating “M↓” icon displays in the description field, which allows users to toggle between raw Markdown vs. rendered Markdown. The Markdown is rendered according to the GitHub standard. Users who never want to see Markdown can disable the icon permanently via a P4V preference, or their respective admin can disable it across all users via a system preference.

Want to see Markdown rendered beyond just standard description fields? Let us know where you’d like to see it!

General Usability Improvements

  • Sorting changelists in the pending changelist tab previously caused the “default” changelist to move to the bottom of the list when sorting in ascending order. This behavior has been changed so that the “default” changelist is always anchored at the top, regardless of the user’s sort preference.
  • Error messages returned from Helix Swarm’s API are now displayed in full in the log pane for easier troubleshooting.
  • Pasting a filepath with a revision specifier in the P4V address bar no longer results in an error. Instead, the revision specifier is ignored and the file is highlighted (if found).
  • A new minimize capability was added to both the “submit” and the “sync” progress dialogs. This is helpful because these dialogs are always in the forefront by default.

What’s in the Latest Release of P4V?

Helix Visual Client (P4V) 2021.2 includes a series of optimizations to Streams — simplifying working with a high volume of streams and switching between streams — as well as other efficiency enhancements.

TRY TODAY  FULL RELEASE DETAILS

Stream Graph Optimizations

Working with hundreds – or even thousands – of streams within a given depot just got a whole lot easier. The Stream Graph now supports the ability to filter desired streams, including the ability to save filters for future use. Selecting a given stream from the filter result set will highlight and then re-center the graph so the selected stream is in the viewport for improved usability.

Users can also select a given stream and only show that stream and its directly related stream in a narrowed view. The Stream Graph has also been optimized to display thousands of streams more efficiently, which is especially useful for customers employing a Component Based Development (CBD) methodology.

Cross-Depot Stream Switching

You can now switch between streams that do not reside in the same depot, even when those streams are unrelated. This is especially useful for task streams that reside in a different depot than their parent streams. In addition, P4Admin now supports obliterating files residing in task streams. Both enhancements require a Helix Core server to be running the 2021.1 release at minimum.

You can now request a Swarm review in cases where the only change in a changelist was made to the stream spec. In addition, when viewing a submitted changelist where the stream spec was modified, you can now easily view the history, revision graph, and perform diffs between different revisions of the stream spec.

Disabled Feature Reporting

Users can now easily see which P4V features have been disabled and understand whether they are disabled due to a server property set by their administrator or due to a preference the user has set locally. In addition, the “System Info” output has been reformatted for better readability and a one-click option to copy the data to the user’s clipboard. This helps when troubleshooting issues either internally or with Perforce Support.

Enhanced Git Support

A new tab called “Git References” enables users to view a list of branches and/or tags (both annotated and lightweight) defined for a given Git repo. In addition, if the user’s current workspace is mapped to the repo, the user will have the ability to switch to a given tag or branch. Users can now also view the history of directories within a given repo for improved auditability and traceability.

General Usability Improvements

The background colors for the Depot view and the Workspace view have been updated to show a visual distinction between them so users know what view they are currently working in.

Finally, MacOS users can now set the application color scheme (light vs. dark) to match their system theme set at the operating system level for added convenience.  Gone are the days of having to manage distinct preferences!

What’s in the Latest Release of P4V?

P4V 2021.1 includes a series of optimizations to P4VJS — which has fully replaced its predecessor, P4JSAPI — and additional client upgrades. Use P4VJS to extend P4V with custom windows, custom tabs, as well as custom actions on top of select P4V dialogs.

TRY TODAY  FULL RELEASE DETAILS

Enhanced Security Features

P4VJS requests are now only honored if they are issued from an HTML page that is hosted by P4V. In addition, for security reasons, developing new functionality must also be done from within P4V. 

Targeted Object Refresh

P4VJS now supports targeted refresh commands. You can refresh objects such as a branch, a pending or submitted change, a client, a group, a job, a label, a stream, a user, or a repo. Now you can avoid having to issue a global refresh when a targeted refresh is all that is needed.

Manipulate Client View Mappings

The equivalent functionality that P4JSAPI.Map() offered is now available via P4VJS. The new functions provide the ability to manipulate client view mappings that define which depot files are accessible for a specified workspace and where those files reside on local disk. 

P4VC Optimizations

This release also contains a set of optimizations to P4VC, the ideal way to launch into a particular P4V dialog via the command line.

HTML Actions Support

HTML Actions currently exist to add pre- and post-actions (including the ability to completely suppress) to the standard Submit dialogue inside P4V. P4VC now supports HTML actions. Now when you call the Submit dialog via p4vc, it will invoke any pre/post actions that have been configured.

Diff Enhancements

This release also includes various enhancements for the “p4vc diff” command. This command will now open a diff window when run without any arguments. In addition, better error handling was added for scenarios when you attempt to diff a file that does not reside on the server that you’re connected to.

What’s in the Latest Release of P4V?

File Rendering Optimizations

Both the depot and workspace views are now optimized to render files more efficiently. This is especially helpful in a scenario where you are opening a directory on the depot containing thousands of files.

A new preference lets you tell P4V how many files to fetch at a given time. New batches load as you reach the last loaded file in your depot list. This avoids long wait scenarios, like accidentally clicking on the wrong directory. In addition, the workspace now only decorates files as they are made visible (i.e., directory expanded) within the workspace. Wait less, go faster, and optimize your development pipeline with P4V!

Stream View Inheritance Controls

To better support Component Based Development, you can now set a “parent view” preference on your streams to control whether or a given stream should inherit its view (paths, remapped, and ignored) from its parent stream.

In addition, you can convert existing streams from “inherit” to “noinherit” (or vice versa) at any point in time. When going from ‘inherit” to “noinherit”, you can also have the system enter inline comments to annotate where the paths, remapped, and ignored values originated from. For example, this functionality can be used to set up release streams that will not be impacted by import library changes on the mainline.

Stream Spec Integration

Configuration as Code just got even better. You can now integrate stream spec changes to propagatable field values (which includes “views” in a noinherit scenario) across streams. In addition, the stream graph can now inform whether or not stream spec changes are eligible to be copied/merged.

You can switch your copy/merge view preference on the stream graph to only reflect file changes, only reflect stream spec changes, or to reflect either file or stream spec changes. Employ your standard source code practices to configuration using P4V!

Background Submit from Edge Servers

The 19.1 release of Helix Core included the ability to submit only the metadata from the edge server to the commit server in the foreground. Then you could schedule the archive transfer in the background.

Now, any P4V user who is directly connected to an edge server will automatically attempt to submit their changes in the background as well. This functionality must be enabled by an administrator via a global server property. Any attempt to submit in the background without the server property configured will simply fall back to “standard” submit behavior. Return the control back to your users more quickly with this added functionality!

Additional Optimizations

You will now see better performance when shelving a complete changelist of files. In addition, syntax highlighting within P4Merge has also been optimized, and the preference is now sticky between sessions.  Also, single threaded sync operations will now include a “percent complete” indicator in the progress window. This better informs users as to how their sync operation is progressing over time.

What’s in the Latest Release of P4V?

Enhanced Code Review Features

Already using Helix Swarm — the best code review tool for Helix Core? Now you can work smarter with enhanced Swarm interoperability within Helix Visual Client.

Context click on a file and/or a file revision to launch a view of that file in Swarm. This can be done from the depot/workspace tree view, a pending changelist, a submitted changelist, or in other contexts within P4V. You can also launch a view of a particular job in Swarm directly from the Helix Visual Client. Lastly, Swarm connection errors are now more detailed and include the Swarm URL and response code. Better interoperability helps your teams accelerate!

Syntax Highlighting

Ever wished you could more easily view the syntax of your programming language when diffing text files? Now you can with Helix Visual Merge Tool (P4Merge) with syntax highlighting capabilities!

Supported programming languages include – but are not limited to – Java, C, C++, C#, HTML/CSS, Python, PHP, Ruby, Perl, JavaScript, Lua, MATLAB, and Go. Lessen the time spent diffing files so you can get back to contributing more changes and look for added support in the merge and diff edit views in a future release.

Git Repo Support

Building on the hybrid workspace support that was launched in the 2020.1 release, you can now view a list of all your repos. Using the new “repos” tab inside of P4V, view the history of repo files, commits, and directories. P4V gives you a single source of truth for all assets! 

UX Enhancements

With so many people working remotely over VPN connections, it is important to periodically test the current connection and retry if it has been interrupted. P4V now automatically does this (if enabled). This alleviates you from having to acknowledge an interruption and manually reconnect to the Helix Core server.  Note this will NOT automatically restart any sync, submit, revert, resolve, or other actions that were interrupted, however.

When attempting to launch P4V using a version that is below the “minClient” threshold, P4V will continue to show an error, but it will now also offer the user a way to upgrade to the latest available version of P4V.

Lastly, users can now activate a preference to have P4V warn before removing files from a workspace when the number of files to be removed exceeds a user-defined threshold. Less rework leads to increased developer velocity!

What’s in the Latest Release of P4V?

Enhanced Extensibility

Easily validate changelist content prior to submission. Now you can now apply “pre” and “post” actions to the standard Submit dialog within P4V. These HTML Actions allow you to customize development workflows to provide additional resources to developers when they submit changes. This helps you automate more and remove bottlenecks in your process, saving you time and increasing your development velocity. For example:

  • Pre-action: Validate against a standard format for changelist descriptions before submitting.
  • Post-action: Send team notifications after a successful submit.

You can even completely suppress the standard Submit dialog with a pre-action if desired.

Implementing these types of actions ensures every member on your team is working smarter, not harder. You know that every developer is following the same standard process, which helps you move faster, with less errors.

Git Repo Support

Many teams work with multiple version control systems. However, that doesn’t mean information needs to be siloed. In latest release, we have added support for Git repos in P4V. Now you can see information regardless of whether it originated in Helix Core or Git.

With Helix4Git — which can be used with Helix TeamHub Enterprise — you get a comprehensive solution.  Now you can open and sync “mixed path” workspaces. Browse and view both Perforce and Git source files from the same window. You can also sync to the latest Git commit, branch, tag, or SHA-1.

Being able to see all your digital assets in one place gives you visibility into what every member of the team is working on. Increased visibility leads to reduced risk. Managing a single source of truth just got easier.

Learn more >>

Large Changelist Support

If your teams are working with 1,000s of files, you probably are dealing with large changelists. You can now adjust which files should remain in a changelist before proceeding with a change operation. This happens when you exceed the maximum number of files displayed per changelist set in your P4V preferences. 

You no longer have to exit your desired change operation, adjust your changelist content, and then re-initiate the action. These time savings enable you to go faster.

You can now view, filter, and remove files from a changelist before proceeding with your desired change operation. This large changelist optimization is available for the submit, shelve, unshelve, revert and resolve change operations. You can also view file history, revision history, see a timelapse view, and initiate file diffs from within your respective change dialog.

Diff Stream Specs

If you utilize a component-based development methodology, you want to be able manage your configuration just like you manage your code. Now you can diff Stream configuration changes just like you diff source code changes.

A new menu — located in “Stream History”— lets you drag and drop stream spec versions to perform diffs. You can view a side-by-side, line-by-line comparison. This helps you more easily diagnose the cause of broken builds.

Managing your component-based methodology with P4V continues to get easier.  Less configuration errors means less broken builds, which eliminate unnecessary costs associated with reduced developer productivity.

Learn more about Streams >>

Want to learn more?

READ THE BLOG

What’s in the Latest Release of P4V?

From the new dark theme to our new P4VJS API, there are many reasons to update to the latest version of P4V.

TRY TODAY

Introducing Dark Theme

For developers who prefer to view their work in dark mode, P4V now offers a darker side. This much requested feature can also be used for P4Admin, P4Merge, and P4VJS.

Extend P4V Functionality with P4VJS

In a major upgrade, P4VJS replaces P4JSAPI. WebKit is being retired, and the addition of WebEngine enables new features. Now you can support any HTML5 content inside P4V. This new capability gives you an easier and more powerful way to:

  • Add custom pages and windows to P4V.
  • Link to your own web-based applications.
  • Run Jira or Helix Swarm in P4V tabs.
  • Play tutorial videos for new developers in a P4V tab.

You can administer the capability globally from the Helix Core server. Sample programs are included to help you get started.

Currently using P4JSAPI? We plan to support it for another year. Review our guide for help porting legacy Javascript API code to P4VJS.

Autocomplete Available for Reviews

Now you can start typing user and group names when requesting a Helix Swarm review, and P4V will autocomplete the field.

Shelve/Unshelve Stream Specs

Just like shelving/unshelving code changes, configuration changes –– also known as stream specs –– can also be shelved, unshelved, and submitted from the shelf.

Submit Stream Spec for Review

You can now request reviews for stream specs alongside reviews of code changes.

Visualize Stream Revisions

The new Streams Revision Graph gives you detailed information when comparing stream versions. You can drag and drop streams to quickly and easily compare.

What’s in the Latest Release of P4V?

The 2019.1 release of Helix Visual Client (P4V) gains new flexibility with privately edited stream specs and Stream Graph filters.

Private Editing of Streams Specs

Perforce Streams gains new flexibility. Developers can privately edit stream specs, modifying only their own workspace without impacting other users or the project. Then code changes and/or stream spec changes can each be committed atomically.

Stream Enhancements

​​​​​​​In the depot panel, developers can now filter deleted or archived streams/files. They can also filter to show only certain stream types. There is additional functionality that helps developers save their existing work before switching streams. It automatically saves and restores their work in the default changelist.

What’s in the Latest Release of P4V?

The 2018.4 release of Helix Visual Client (P4V) offers enhanced security features.

Support for SAML 2.0 Authentication

​​​​​​Integrate your 2018.2 Helix Core server and clients with Helix SAML Desktop Agent to authenticate users via the command-line or client using popular solutions, such as Ping Identity, Okta, and others.

What’s in the Latest Release of P4V?

The 2018.3 release of Helix Visual Client (P4V) offers stream enhancements, usability improvements, and optional gating for advanced merges.

Stream Developments

Users can now save filters on Stream graph views to easily find and sort relevant branches. To free up space on the server, unmodified files associated with a Stream can be pruned and deleted.

Hands-Off Sync and Diff Functionality

When syncing files, users can now automatically resolve any non-conflicting changes. This eliminates an unnecessary step when merging. When running a diff, developers can quickly resolve any non-conflicting changes without checking each individual file.

Avoid Risky Business

Admins can set up warnings for advanced merge operations. Warnings also can be enabled to display when a user checks out a large number of files from a directory. These safeguards save developers time on avoidable mistakes.

Standardize Workflows

Admins can implement standardized workflows for users when creating workspaces. This allows admins to manage workflows easier and enables end users to clearly follow best practices.

Display Enhancements

P4V resizes menus and icons for Apple Retina, 4K monitors, and High-DPI screens.

What's in the Latest Release of P4V?

The 2018.2 release of P4V adds support for MFA.

Support for MFA

Integrate the Helix Core server and clients with your multi-factor authentication. Out-of-the-box MFA integration with Okta, and configurable MFA with other tools.

What's in the Latest Release of P4V?

The 2018.1 release of P4V adds numerous usability features while also improving code review administration and build performance. 

Improved Readability of Complex Security Configurations

In Helix Core, the protects table is where file-level granular permissions are set. Admins can now view and add comments in the protects table via the P4Admin tool. This new functionality helps new administrators understand complex security configurations.

Delete Reverted Files from Workspace

Users now have the option to delete reverted files from their workspace when the files are reverted from a changelist.  2018.1 provides an option to the user in the revert dialog and adds visual support for "revert -w".

New “P4 Undo” Command

The 2018.1 release now allows you to safely undo changes across single or multiple changelists or files revisions with one command: “p4 undo.” This simplifies the operation as P4V used to have a multitude of commands to perform this function.

Improved Visibility of Job Descriptions With HTML

Descriptions on any spec (e.g., jobs, changelists, labels, branches, workspaces, Streams) can now be formatted in rich text or HTML. This allows users to add more color and context to the descriptions, including links to web pages.

Increased Transparency When Submitting a Changelist With Shelved Files

The dialogue box denying submission of a changelist with shelved files can now tell the user why the files were shelved so they can decide how to proceed.

Parallel Shelving for Improved Build Performance

For organizations that store build outputs as global shelves on the master server, the 2018.1 release provides performance improvements. Now, shelved files are processed in parallel during builds to improve build performance and productivity.

Streamlined Swarm Integration

Users can now add groups as reviewers without having to leave P4V.

What's in the Latest Release of P4V?

Over time, projects get can get messy. P4V 2017.3 makes it easier to restore order so you can move on and move forward.

Restore Your Workspace to Its Original State

Helix Visual Client 2017.3 allows you to level set and restore your workspace to its original state so that it matches the depot. Users can leverage 2017.3 to rid their workspace of deleted files or ones that are not under source control and refresh the ones that have been modified.

Boost Stability and Performance with Multiple Parallel Sync

P4V users can now take advantage of the Helix Core 2017.2 enhancements to server resilience during multiple parallel sync operations for a boost in stability and performance.

What's in the Latest Release of P4V?

The 2017.2 release of P4V adds rich features to the already intuitive developer interface, offering flexibility within any product development workflow.

Visualize Empty Changelists

Helix Visual Client 2017.2 simplifies the search process by indicating collapsed, empty changelists in blue.

URL Handling in Jobs

Helix Visual Client (P4V) now recognizes URLs and provides links to files associated with a Perforce job. Streamline your work by cutting out the middle man — your bug tracking software, for example — when you need to complete jobs associated with user’s crash report files, software design change recommendations, or database dumps.

Shortcuts in Custom Tools

Ditch your mouse (and the Tools menu) and trade them in for your keyboard. Helix Visual Client lets you access your custom tools via keyboard shortcut to boost your productivity with streamlined workflows.

Incorporate Code from One Feature Stream to Another

Move a feature stream from one parent stream to another simply by dragging it over to the new stream as a child. You can also shelve the specific files that you want to migrate by moving the stream over, unshelving your files, and incorporating the code into your first feature.

Specify Stream Depth from P4Admin

Struggling to manage large depots and lots of streams? 2017.2 allows you to organize streams into logical hierarchies as you see fit by specifying stream depths from the Admin tool when creating stream depots.

Include Integrated Changelists on a Directory

The next time you branch or move a directory, opt to see the entire integration history of a folder so that you can see the list of submitted changelists that affected it prior to its change in location.

Raise Your Dashboard Limit

2017.2 empowers users with the ability raise — or even lower — the limit on the number of files they can view from their dashboard. Administrators can rest easy knowing that the global property allows them to retain overall control over users who set their limits too high or the ability to allow specific groups certain limit rights.

What's in the Latest Release of P4V?

The 2017.1 release gives developers unprecedented freedom to work with project files and version their work in any way they choose.

Leverage DVCS Functionality

DVCS functionality makes it easy to work—and version your work—from a personal server. You can initialize a personal server from the New Connection dialog or from the P4V toolbar. Quickly clone by context-clicking in the P4V depot tree or using a remote specification. Fetch changes and resolve conflicts easily. Push changes to a remote, shared Helix server with a single click.

Manage Remote Mappings

The new remote mappings tab lets you create and edit remote mappings on your personal and remote Helix servers from within the graphical interface. Put time back on the clock by setting the maximum number of revision archives to receive from your Helix server and reduce the time it takes to sync large binary files with revision history.