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.