Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Transfer failure due to special characters in path #3

Open
fhautekeete opened this issue Feb 28, 2021 · 3 comments
Open

Transfer failure due to special characters in path #3

fhautekeete opened this issue Feb 28, 2021 · 3 comments

Comments

@fhautekeete
Copy link

Windows 10
Python 2.7 (was recommended for Unicode compatibility in the documentation)

Issue: p4 reopen will fail if special characters are present in the file path (when fixing file types)
Reason: In fixFileTypes(self, filerevs, openedFiles) the 'fixed' local path is used for reopening: self.p4cmd('reopen', '-t', chRev.type, chRev.fixedLocalFile)

There is probably an inconsistency when to use the 'fixedLocalFile'. If invoking p4cmd one (maybe) only needs to restore the os separator but leave the special characters in their ASCII expanded form? I am currently using chRev.localFile for the reopen in fixFileTypes() and the transfer is proceeding.


log tail:

E:\P4TransferRoot\depot\Projects\MobileGame\Unity5\Assets\Custom\Assets@1x\Textures\Scenery\BabyRoomBed.jpg
2021-02-28 13:38:32,483:P4Transfer:DEBUG: targ('reopen', '-t', 'ubinary', 'E:\P4TransferRoot\depot\Projects\MobileGame\Unity5\Assets\Custom\Assets@1x\Textures\Scenery\BabyRoomBed.jpg')
2021-02-28 13:38:32,483:P4Transfer:ERROR: [P4#run] Errors during command execution( "p4 reopen -t ubinary E:\P4TransferRoot\depot\Projects\MobileGame\Unity5\Assets\Custom\Assets@1x\Textures\Scenery\BabyRoomBed.jpg" )

[Error]: "Invalid changelist/client/label/date '@1x\\Textures\\Scenery\\BabyRoomBed.jpg'."

Traceback (most recent call last):
File "P4TransferDebug.py", line 1823, in replicate
num_changes = self.replicate_changes()
File "P4TransferDebug.py", line 1677, in replicate_changes
targetChange = self.target.replicateChange(filerevs, change, self.source.p4.port)
File "P4TransferDebug.py", line 1027, in replicateChange
self.fixFileTypes(filerevs, openedFiles)
File "P4TransferDebug.py", line 1014, in fixFileTypes
self.p4cmd('reopen', '-t', chRev.type, chRev.fixedLocalFile)
File "P4TransferDebug.py", line 741, in p4cmd
output = self.p4.run(args, **kwargs)
File "C:\Python27\lib\site-packages\P4.py", line 611, in run
raise e
P4Exception: [P4#run] Errors during command execution( "p4 reopen -t ubinary E:\P4TransferRoot\depot\Projects\MobileGame\Unity5\Assets\Custom\Assets@1x\Textures\Scenery\BabyRoomBed.jpg" )

[Error]: "Invalid changelist/client/label/date '@1x\\Textures\\Scenery\\BabyRoomBed.jpg'."
@rcowham
Copy link
Contributor

rcowham commented Mar 2, 2021

Thanks - will have a look

@JulianGindi
Copy link

This is an issue that is impacting us as well. We are testing a bandaid fix, but just wanted to see if there has been any movement on this bug fix.

@rcowham
Copy link
Contributor

rcowham commented Jun 13, 2022

Worth a try with latest code - may have been fixed as a side effect of recent changes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants