Andy 37b20ee670 For duplicate source files of the same package, make one redirect to the other (#16274)
* For duplicate source files of the same package, make one redirect to the other

* Add reuseProgramStructure tests

* Copy `sourceFileToPackageId` and `isSourceFileTargetOfRedirect` only if we completely reuse old structure

* Use fallthrough instead of early exit from loop

* Use a set to efficiently detect duplicate package names

* Move map setting outside of createRedirectSourceFile

* Correctly handle seenPackageNames set

* sourceFileToPackageId -> sourceFileToPackageName

* Renames

* Respond to PR comments

* Fix bug where `oldSourceFile !== newSourceFile` because oldSourceFile was a redirect

* Clean up redirectInfo

* Respond to PR comments
2017-08-09 14:39:06 -07:00
..
2017-05-01 11:42:22 -07:00
2017-05-31 17:18:36 -07:00
2017-06-29 15:14:09 -07:00
2017-05-01 09:03:12 -07:00
2017-05-22 16:48:45 -07:00
2017-06-14 21:41:19 -07:00
2017-06-14 21:41:19 -07:00
2017-06-19 16:18:42 -07:00
2017-05-04 16:13:32 -07:00
2017-05-15 14:45:30 -07:00
2017-05-29 21:48:43 -07:00
2017-03-27 14:17:27 -07:00
2017-03-27 14:17:27 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 19:22:29 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 19:22:29 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 18:59:30 -07:00
2017-06-08 18:59:30 -07:00