Page MenuHomePhabricator

Merge PhutilGitURI into PhutilURI
ClosedPublic

Authored by epriestley on Jun 13 2016, 12:41 PM.
Tags
None
Referenced Files
F17830342: D16099.id.diff
Sat, Jul 26, 10:59 AM
F17700495: D16099.diff
Tue, Jul 15, 8:52 PM
Unknown Object (File)
Jun 1 2025, 4:19 AM
Unknown Object (File)
May 31 2025, 5:02 AM
Unknown Object (File)
May 30 2025, 12:09 PM
Unknown Object (File)
May 27 2025, 11:14 AM
Unknown Object (File)
May 10 2025, 3:48 PM
Unknown Object (File)
May 6 2025, 8:19 PM
Subscribers
None

Details

Summary

Ref T11137. This addresses three general issues:

  • From T11137, I recently added a bad typehint.
  • From T11004, we currently have buggy behavior with Git URIs that have relative paths: we convert them into "ssh://" URIs but change the meaning of their paths.
  • Generally, Phabricator has a lot of instanceof-flavored code around URI handling, and this has been a frequent source of errors. See some discussion in T11137. See next revision for changes to Phabricator.
Test Plan

Unit tests; see next revision for field testing.

Diff Detail

Repository
rPHU libphutil
Branch
gituri1
Lint
Lint Passed
Unit
Tests Passed
Build Status
Buildable 12612
Build 16013: Run Core Tests
Build 16012: arc lint + arc unit

Event Timeline

epriestley retitled this revision from to Merge PhutilGitURI into PhutilURI.
epriestley updated this object.
epriestley edited the test plan for this revision. (Show Details)
epriestley added a reviewer: chad.
  • Test behavior for URIs with no protocol.
  • Test behavior for creating new Git URIs from other Git URIs.
  • Test behavior for implicit SSH protocol on Git URIs.
  • Remove "INVALID_PATH" faux-error.

Fixing those other test issues.

  • Fix ambiguous cases of "javascript:evil" and "mailto:user@domain".
  • Improve ease of debugging markup test case.
chad edited edge metadata.
This revision is now accepted and ready to land.Jun 13 2016, 2:18 PM
This revision was automatically updated to reflect the committed changes.