{"action":"created","issue":{"url":"https://api.github.com/repos/matthiasbeyer/imag/issues/765","repository_url":"https://api.github.com/repos/matthiasbeyer/imag","labels_url":"https://api.github.com/repos/matthiasbeyer/imag/issues/765/labels{/name}","comments_url":"https://api.github.com/repos/matthiasbeyer/imag/issues/765/comments","events_url":"https://api.github.com/repos/matthiasbeyer/imag/issues/765/events","html_url":"https://github.com/matthiasbeyer/imag/issues/765","id":178926716,"number":765,"title":"libimaglink: Annotations for internal links?","user":{"login":"matthiasbeyer","id":427866,"avatar_url":"https://avatars.githubusercontent.com/u/427866?v=3","gravatar_id":"","url":"https://api.github.com/users/matthiasbeyer","html_url":"https://github.com/matthiasbeyer","followers_url":"https://api.github.com/users/matthiasbeyer/followers","following_url":"https://api.github.com/users/matthiasbeyer/following{/other_user}","gists_url":"https://api.github.com/users/matthiasbeyer/gists{/gist_id}","starred_url":"https://api.github.com/users/matthiasbeyer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/matthiasbeyer/subscriptions","organizations_url":"https://api.github.com/users/matthiasbeyer/orgs","repos_url":"https://api.github.com/users/matthiasbeyer/repos","events_url":"https://api.github.com/users/matthiasbeyer/events{/privacy}","received_events_url":"https://api.github.com/users/matthiasbeyer/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/matthiasbeyer/imag/labels/complexity/medium","name":"complexity/medium","color":"5319e7"},{"url":"https://api.github.com/repos/matthiasbeyer/imag/labels/kind/enhancement","name":"kind/enhancement","color":"eb6420"},{"url":"https://api.github.com/repos/matthiasbeyer/imag/labels/kind/feature","name":"kind/feature","color":"eb6420"},{"url":"https://api.github.com/repos/matthiasbeyer/imag/labels/kind/infrastructure","name":"kind/infrastructure","color":"eb6420"},{"url":"https://api.github.com/repos/matthiasbeyer/imag/labels/meta/importance/high","name":"meta/importance/high","color":"d4c5f9"},{"url":"https://api.github.com/repos/matthiasbeyer/imag/labels/nochange/rfc","name":"nochange/rfc","color":"fef2c0"},{"url":"https://api.github.com/repos/matthiasbeyer/imag/labels/part/lib/imagentrylink","name":"part/lib/imagentrylink","color":"006b75"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":7,"created_at":"2016-09-23T17:02:23Z","updated_at":"2016-09-25T09:06:30Z","closed_at":null,"body":"Would it be a good idea to be able to create annotations for internal links?\r\n\r\nUse case: You have three mail objects in the database: \r\n\r\n* `Mail 1` and `Mail 2` should be linked because they are in one mail thread\r\n* `Mail 1` and `Mail 3` should be linked because they are from the same author\r\n\r\n---\r\n\r\n## Benefits\r\n\r\n* Currently we have the limitation that we can only link. With annotated links, we could create \"linked-author\" and \"link-thread\" links in the `libimagmail` and speed up the search for \"Give me all mails from the thread where this mail is in\"-like searches _a lot_.\r\n\r\n## Drawbacks\r\n\r\n* This makes links complex. The interface for `libimaglink` would get additional features and would be more complex, I don't see any more drawbacks by now.\r\n\r\n## Implementation (ideas)\r\n\r\nI have two ideas for how to implement this\r\n\r\n### Alter the `link` header entry. \r\n\r\nThe first idea would simply add fields to the `[link]` section in the header. That's rather easy, not backwards compatible (we could make it backwards-compatible, though I see not that much value in it, as we are pre-1.* releases), but should work.\r\n\r\n### Create intermediate entries\r\n\r\nThis would be more complex. We would create intermediate link objects which contain annotations then.\r\n\r\n```\r\nA <==== <C with annotation> ====> B\r\n```\r\n\r\nDrawbacks would be that this would be really complex to implement.\r\n\r\n---\r\n\r\nI like the first approach much more, but we might have a discussion whether the second one would be doable or something.\r\n\r\n@TheNeikos @neithernut @mario-kr What do you think.\r\n\r\n1. Do we need annotations for links?\r\n1. How to implement them?\r\n\r\nIf yes, I would make this a hard-required issue for milestone 0.3.0, I guess. This would then move the mail library `libimagmail` from 0.2.0 to 0.3.0 (or later) as this would be a crucial feature for the mail library, IMO."},"comment":{"url":"https://api.github.com/repos/matthiasbeyer/imag/issues/comments/249411093","html_url":"https://github.com/matthiasbeyer/imag/issues/765#issuecomment-249411093","issue_url":"https://api.github.com/repos/matthiasbeyer/imag/issues/765","id":249411093,"user":{"login":"neithernut","id":6747556,"avatar_url":"https://avatars.githubusercontent.com/u/6747556?v=3","gravatar_id":"","url":"https://api.github.com/users/neithernut","html_url":"https://github.com/neithernut","followers_url":"https://api.github.com/users/neithernut/followers","following_url":"https://api.github.com/users/neithernut/following{/other_user}","gists_url":"https://api.github.com/users/neithernut/gists{/gist_id}","starred_url":"https://api.github.com/users/neithernut/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/neithernut/subscriptions","organizations_url":"https://api.github.com/users/neithernut/orgs","repos_url":"https://api.github.com/users/neithernut/repos","events_url":"https://api.github.com/users/neithernut/events{/privacy}","received_events_url":"https://api.github.com/users/neithernut/received_events","type":"User","site_admin":false},"created_at":"2016-09-25T09:06:30Z","updated_at":"2016-09-25T09:06:30Z","body":"I still don't follow your reasoning. You have to load the entries at some point. If you run a query using a one-shot command, this *definitely* can be considered part of the search, at least form the user's perspective. Even with long-lived processes, it is doubtful that *all* the entries are loaded at *any* given point in time."}}
{"actor":{"display_login":"neithernut"}}