Safari 7.0.2: Records & autocompletes github deletion redirect URLs that cannot be removed from history
| Originator: | rix.rob | ||
| Number: | rdar://16467754 | Date Originated: | 30-Mar-2014 09:10 AM |
| Status: | Open | Resolved: | |
| Product: | Safari | Product Version: | Safari 7.0.2 (9537.74.9) |
| Classification: | Other Bug | Reproducible: | Always |
Summary: When I use GitHub.com in Safari to delete a repository, Safari has taken to storing the redirect URL and then preferring it for autocompletions. For example, if I delete a repository like https://github.com/robrix/Foo, I am forever afterwards offered https://github.com/robrix/Foo/settings/delete as the *first, preferred* autocompletion result when I type https://github/robrix* This makes it very frustrating to get quick access to the repositories within my account that still exist and which I would like to be able to select quickly as I interact with the site many times a day. Steps to Reproduce: Given that you have a GitHub account; that you have created a repository that you can delete; and that you have other repositories under that account available in your history for autocompletion, 1. Delete the repository on GitHub.com. 2. In History, delete all entries which mention that repository. For example, if your username were Apple and your repository were named Foo, you would search for https://github.com/Apple/Foo and delete all the history entries whose URLs have that as a prefix. 3. In the address bar, type https://github.com/<first few letters of the username>; do not type the trailing slash, as that changes the autocompletion results. Again, for example, if your username were Apple that might be 'https://github.com/App'. Expected Results: I expected that the autocompletion would be prepopulated with the repository I visited most often, or at least most recently. Actual Results: Instead, the deletion URL for the repository is the first autocompletion result. For example, if your username were Apple and the repo you deleted were named Foo, this URL would be https://github.com/Apple/Foo/settings/delete. In the case that you have deleted multiple repositories under that user, one of them--perhaps the most recent, perhaps some other heuristic is used, I am unsure--is presented, regardless of the fact that it was only ever used once. Version: Safari 7.0.2 (9537.74.9) on Mac OS X 10.9.2 Notes: I do not recall this occurring in Safari 6, but I could be mistaken. I have not tested that version. I went spelunking a little, and the actual information in question is being stored in ~/Library/Safari/History.plist as an entry in the array under WebHistoryDates. Here is a partial result for the dictionary in that array, eliding some of the entries that appear irrelevant to this discussion: <dict> <key></key> <string>https://github.com/</string> <key>title</key> <string>GitHub</string> <key>autocomplete</key> <array> <string>github.com/</string> </array> <key>redirectURLs</key> <array> <string>http://github.com/</string> <string>https://github.com/robrix/example-repo/settings/delete</string> </array> </dict> Deleting this entry from the plist *manually* appears to be the only way to cause this to stop happening, but it reappears as soon as you delete another repository.
Comments
Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!