Page MenuHomePhabricator

Support arbitrarily long filenames in Differential
ClosedPublic

Authored by epriestley on Dec 15 2016, 7:33 PM.
Tags
None
Referenced Files
F13167181: D17062.diff
Tue, May 7, 6:59 AM
Unknown Object (File)
Fri, May 3, 4:55 AM
Unknown Object (File)
Thu, Apr 25, 12:41 AM
Unknown Object (File)
Apr 3 2024, 6:19 AM
Unknown Object (File)
Apr 3 2024, 5:59 AM
Unknown Object (File)
Apr 3 2024, 5:18 AM
Unknown Object (File)
Apr 2 2024, 12:54 PM
Unknown Object (File)
Apr 1 2024, 6:47 PM
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
Lint
Lint Not Applicable
Unit
Tests Not Applicable

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.