{"action":"created","issue":{"url":"https://api.github.com/repos/elm-lang/package.elm-lang.org/issues/67","labels_url":"https://api.github.com/repos/elm-lang/package.elm-lang.org/issues/67/labels{/name}","comments_url":"https://api.github.com/repos/elm-lang/package.elm-lang.org/issues/67/comments","events_url":"https://api.github.com/repos/elm-lang/package.elm-lang.org/issues/67/events","html_url":"https://github.com/elm-lang/package.elm-lang.org/issues/67","id":100551077,"number":67,"title":"How to deal with \"conflicts\" between qualified types in documentation?","user":{"login":"jvoigtlaender","id":5853832,"avatar_url":"https://avatars.githubusercontent.com/u/5853832?v=3","gravatar_id":"","url":"https://api.github.com/users/jvoigtlaender","html_url":"https://github.com/jvoigtlaender","followers_url":"https://api.github.com/users/jvoigtlaender/followers","following_url":"https://api.github.com/users/jvoigtlaender/following{/other_user}","gists_url":"https://api.github.com/users/jvoigtlaender/gists{/gist_id}","starred_url":"https://api.github.com/users/jvoigtlaender/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jvoigtlaender/subscriptions","organizations_url":"https://api.github.com/users/jvoigtlaender/orgs","repos_url":"https://api.github.com/users/jvoigtlaender/repos","events_url":"https://api.github.com/users/jvoigtlaender/events{/privacy}","received_events_url":"https://api.github.com/users/jvoigtlaender/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":11,"created_at":"2015-08-12T14:01:39Z","updated_at":"2015-10-02T17:46:05Z","closed_at":null,"body":"Let's say there are two modules `A` and `B`, both exporting a type `T`, and a third module `C` importing the two, and defining a function like so:\r\n```elm\r\nmodule C where\r\nimport qualfied A\r\nimport qualified B\r\n\r\nf : A.T -> B.T\r\n```\r\nThe documentation for module C will show: \r\n```elm\r\nf : T -> T\r\n```\r\nLittle chance for readers of the documentation to find out what is going on here.\r\n\r\nPossible solution (without resorting to always showing all qualifiers): When showing documentation for a module, collect all type names that occur in its signatures, compare them to find out which names occur in at least two different qualified forms, then always print those with qualifiers (but all other type names without qualifiers)."},"comment":{"url":"https://api.github.com/repos/elm-lang/package.elm-lang.org/issues/comments/145096601","html_url":"https://github.com/elm-lang/package.elm-lang.org/issues/67#issuecomment-145096601","issue_url":"https://api.github.com/repos/elm-lang/package.elm-lang.org/issues/67","id":145096601,"user":{"login":"evancz","id":1658058,"avatar_url":"https://avatars.githubusercontent.com/u/1658058?v=3","gravatar_id":"","url":"https://api.github.com/users/evancz","html_url":"https://github.com/evancz","followers_url":"https://api.github.com/users/evancz/followers","following_url":"https://api.github.com/users/evancz/following{/other_user}","gists_url":"https://api.github.com/users/evancz/gists{/gist_id}","starred_url":"https://api.github.com/users/evancz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/evancz/subscriptions","organizations_url":"https://api.github.com/users/evancz/orgs","repos_url":"https://api.github.com/users/evancz/repos","events_url":"https://api.github.com/users/evancz/events{/privacy}","received_events_url":"https://api.github.com/users/evancz/received_events","type":"User","site_admin":false},"created_at":"2015-10-02T17:46:05Z","updated_at":"2015-10-02T17:46:05Z","body":"Yeah, it's not clear to me that this is actually plausible. Maybe the highest version in the given constraints? But I think it's the right move to just do it within the package for now."}}