#preflight 645cc6062965f6ea8e8318cb
- Add a new command 'OpenJiraCommand' which will attempt to open jira in the users web browser to any issue tagged in that changelists description via the '#jira' tag.
-- We assume that the issue name will be Project-IssueNumber, where the project can contain both letters and numbers. The jira standard enforces that the first character of the project name cannot be a number but we have not enforced that in our checks for simplicity.
-- If multiple issues are tagged we should be able to match with them, even if they are on the same line and/or separated with ' ', ',' or '+'
-- If no tags are found we inform the user via a popup message.
-- We now have an entry in the ini file for the jira server.
- Added a new CommandCategory named 'Browser' to be used by commands that attempt to open new pages in the users web browser.
-- Moved the existing OpenPreflightCommand and RobomergePreviewCommand commands there.
-- It could be argued that PreflightCommand should be moved to 'Browser' too but it feels more at home under 'Horde'
- A number of commands were copy/pasting the code to open a path in a new process (given that the syntax is slightly different per platform) so this code has been moved to a shared ProcessUtils class.
[CL 25426132 by paul chipchase in ue5-main branch]
#rb trivial
#jira none
#rnx
#preflight 6448ec2e1c2846595cd91747
- There are a few commands that can submit changelists but do not feature under 'UE Submit' submenu which some people felt was misleading.
- As the only command there is currently intended to be used when submitting content, 'UE Content' feels like a good fit.
- Renamed SubmitCommand.cs as this was also misleading.
[CL 25195284 by paul chipchase in ue5-main branch]
- Added UserInterface static class for pulling DialogBox and Clipboard stuff, which needs per-platform implementations
- Changed Windows to install P4VUtils.exe <command>, instead of dotnet P4Utils.dll <command>
- Added scripts to build all platforms, from all platforms (using the IsWindows, IsLinux, IsOSX, WithRestricted properties in the project)
- Updated Binaries as well
#rb ryan.hummer
#preflight skip
[CL 24964516 by josh adams in ue5-main branch]
Allows adding internal commands for Epic use only
#rnx
#jira none
#preflight na
#rb ben.marsh, paul.chipcahse
[CL 24898336 by Ryan Hummer in ue5-main branch]
#rb Sebastian.Nordgren, Ryan.Hummer
#rnx
#preflight 636a63c063037c1026488d19
- We search the changelist description for '#preflight ???' and then open the appropriate page.
- If no tag is found we will display a message to the user via a modal dialog so that they are aware that no page will be opened.
- Refactored PreflightCommand.OpenUrl to be a public static method to avoid copy and pasting code.
- Refactored PreflightCommand.GetUrl to move the extraction of the Horde server address to a public static method to improve code re-use.
- The command will be added to P4 so that it can be used on pending and submitted changelists.
[CL 23050223 by paul chipchase in ue5-main branch]
Renamed UE Helpers to UE Toolbox
Moved backout tool to UE Toolbox
Moved 'find last edit' to 'Root Helpers' (from UE Helpers)
#jira UE-159399
#rnx
#preflight n/a
#rb Marc.Audy, Ben.Marsh
[CL 21092009 by aurel cordonnier in ue5-main branch]
#rb Sebastian.Nordgren
#rnx
#preflight 62985fe89907cbadbaa25855
- This is a follow on fix from 20451429, although that solved the problem of duplicate registered commands due to differing DotNet locations it did not solve a problem introduced in 20248689 caused by quoting the command argument.
- If the path in the command element does get quoted due to containing a space in the file path then FileReference will fail to parse it as RemoveCustomToolsFromNode intended and the comparison between the Command element and the DotNet location would always fail.
-- This meant that a newly published version of the tool would replace the old commands, but when published a second time would start to register duplicate commands.
- The simple solution is to try and strip the quotes (if any) before creating the FileReference for comparison.
[CL 20466696 by paul chipchase in ue5-main branch]
#rb Josh.Adams
#rnx
#preflight 62975f7c101592b805fa7cb9
- When UGS invokes the tool to be installed, it will call 'P4VUtils.exe install' which meant that getting the process path as the dotnet path would return the exe
- However previous versions of the tool were creating a path to dotnet.exe to use as the dotnet path
- When removing the old commands before installing the new ones, one of the filters is to check the dotnet path of the command and make sure that it matches the current one
- So if the older version was using a path to dotnet.exe and the newer version, the p4vutils.exe, they won't match and the old commands won't be removed, so when the new ones are added we end up with duplicates.
- For now the easiest fix is to go back to the logic before change 20248689, so on windows we make sure that we find dotnet.exe so it will match.
[CL 20451429 by paul chipchase in ue5-main branch]
#rb Sebastian.Nordgren
#rnx
#preflight 628c85f58673efbf3c0a5e3f
- Added checks when parsing xml to make sure that expected nodes/lists were found and are not null.
- Response was assigned as null, but nothing was checking for this. The initial value has been changed to an empty string which wioll invoke the user cancelling the operation as the default behaviour.
- StreamReader.ReadToEnd is a blocking call in an async method. Replaced with await StreamReader.ReadToEndAsync.
[CL 20346208 by paul chipchase in ue5-main branch]
- Will compile on Mac and Linux now
- Mac replaced the WinForms functionality with AppleScript
- Linux will compile be have reduced functionality
- Fixed up paths for p4v settings and dotnet location
- Added binaries and installer scripts for all 3 platforms - won't need UGS to install, will copy to user-library location (may need some adustment on Linux, will address after)
#rb will.damon
#preflight skip
[CL 20244727 by Josh Adams in ue5-main branch]
#rb Ben.Marsh
#rnx
#jira UE-143675
#preflight skip
### P4VUtils
- Add a new submenu "UESubmit" for commands related to the submission of files and changelists
-At the moment the submenu only has a single command SubmitAndVirtualizeCommand
### SubmitAndVirtualizeCommand
- This command is used to run the asset virtualization process over all of the files in a changelist before submitting it using the following logic:
-- Find all package files in a changelist
-- Sort the files by project
-- Find the engine installation associated with each project
-- Build and run the stand alone virtualization tool (if needed) and pass it the packages for the project
-- If the virtualization process succeeeded for all projects we can submit the original changelist, other wise print errors to the p4v terminal.
- In most cases all of the packages in a changelist will be under a single project, but the command should be able to cope with many packages from many different projects using many different engine installations.
- Note that unlike a normal submit, virtualizing a package can change it on disk (by removing the payload data) which means we will probably run into problems where a running instance of the editor has access locks on the file and they cannot be edited. At the moment this command and the stand alone tool will just error, there is no tool<->editor communication protocol set up to request that the editor release the package file. This will be addressed as a future work item.
- This is the first pass of the command, there are a number of non-essential todo comments left in the code that will be addressed based on feedback from the end users.
[CL 19752487 by paul chipchase in ue5-main branch]
Data tools:
* Convert data to local writable -> Convert All data in changelist or all selected data files to local writable
Unshelving tools:
* Unshelve to current revision -> Remembers revision all files you are about to unshelve and if the revision is older, will sync to saved revision
* Unshelve and make data writable -> Unshelve changelist but for data will make them writable locally
#jira none
#review-17681604
#rb Andy.Firth Brandon.Dawson
#preflight skip
#robomerge 5.0
#robomerge FnMain
[CL 18039467 by Maxime Mercier in ue5-main branch]
- snapshot now more descriptive
- backout now more descriptive
- preflightAndSubmit reverted to old behavior, new command to MoveWriteableFilesthenPreflightAndSubmit added
#review @Ben.Marsh
[CL 16596338 by andrew firth in ue5-main branch]