Page MenuHomePhabricator

Support arbitrarily long filenames in Differential
ClosedPublic

Authored by epriestley on Dec 15 2016, 7:33 PM.
Tags
None
Referenced Files
F14352726: D17062.diff
Thu, Dec 19, 2:40 PM
Unknown Object (File)
Thu, Dec 12, 6:41 PM
Unknown Object (File)
Wed, Dec 11, 8:39 PM
Unknown Object (File)
Tue, Dec 10, 5:43 PM
Unknown Object (File)
Tue, Dec 3, 9:16 AM
Unknown Object (File)
Sat, Nov 23, 9:18 PM
Unknown Object (File)
Wed, Nov 20, 7:29 PM
Unknown Object (File)
Nov 16 2024, 4:32 AM
Subscribers
None

Details

Summary

Fixes T11660. Currently, if you try to diff a path with more than 255 total characters, we fail to create the diff because we have a text255 column.

There are actually two issues here:

  • File names may be arbitrarily long (T11660).
  • File names may not be UTF8 (T6633, etc). This is much more complicated and has other issues -- largely that we can't JSON-encode non-UTF8 filenames. I'm punting on that for now and will deal with it later. This doesn't specifically address non-UTF8 paths, although it is a change that's (probably?) required to eventually support them.

This will cause some potentially slow migrations, but better to do them now, if possible, so we have fewer complicated/slow upgrades overall.

Test Plan

Created a change touching file: very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_directory_name/very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_very_long_filename.txt

Screen Shot 2016-12-15 at 11.27.42 AM.png (1×1 px, 223 KB)

Diff Detail

Repository
rP Phabricator
Branch
diff21
Lint
Lint Passed
Unit
Tests Passed
Build Status
Buildable 14932
Build 19567: Run Core Tests
Build 19566: arc lint + arc unit

Event Timeline

epriestley retitled this revision from to Support arbitrarily long filenames in Differential.
epriestley updated this object.
epriestley edited the test plan for this revision. (Show Details)
epriestley added a reviewer: chad.
chad edited edge metadata.
This revision is now accepted and ready to land.Dec 15 2016, 7:33 PM
This revision was automatically updated to reflect the committed changes.