,url,repository_url,labels_url,comments_url,events_url,html_url,id,node_id,number,title,user,labels,state,locked,assignee,assignees,milestone,comments,created_at,updated_at,closed_at,author_association,active_lock_reason,pull_request,body,performed_via_github_app
0,https://api.github.com/repos/tinode/chat/issues/539,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/539/labels{/name},https://api.github.com/repos/tinode/chat/issues/539/comments,https://api.github.com/repos/tinode/chat/issues/539/events,https://github.com/tinode/chat/pull/539,690814142,MDExOlB1bGxSZXF1ZXN0NDc3NjQ5NDgy,539,Session inflight sub/leave request tracking,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-09-02T08:10:14Z,2020-09-04T00:23:57Z,2020-09-04T00:23:57Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/539', 'html_url': 'https://github.com/tinode/chat/pull/539', 'diff_url': 'https://github.com/tinode/chat/pull/539.diff', 'patch_url': 'https://github.com/tinode/chat/pull/539.patch'}",Should address https://github.com/tinode/chat/issues/535,
1,https://api.github.com/repos/tinode/chat/issues/538,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/538/labels{/name},https://api.github.com/repos/tinode/chat/issues/538/comments,https://api.github.com/repos/tinode/chat/issues/538/events,https://github.com/tinode/chat/pull/538,690514377,MDExOlB1bGxSZXF1ZXN0NDc3MzkwODEy,538,Set correct permissions for invited channel admins,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-09-01T23:28:57Z,2020-09-02T00:40:54Z,2020-09-02T00:40:54Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/538', 'html_url': 'https://github.com/tinode/chat/pull/538', 'diff_url': 'https://github.com/tinode/chat/pull/538.diff', 'patch_url': 'https://github.com/tinode/chat/pull/538.patch'}","This is the fix for
> log in as bob
> open ""Coffee"" group, go to group settings
> add new member eve to the group
> log out
> log in as eve - the group doesn't show up in the list",
2,https://api.github.com/repos/tinode/chat/issues/537,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/537/labels{/name},https://api.github.com/repos/tinode/chat/issues/537/comments,https://api.github.com/repos/tinode/chat/issues/537/events,https://github.com/tinode/chat/pull/537,689236498,MDExOlB1bGxSZXF1ZXN0NDc2MzIyNTkx,537,Update datamodel.go,"{'login': 'yedamao', 'id': 8220938, 'node_id': 'MDQ6VXNlcjgyMjA5Mzg=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/8220938?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/yedamao', 'html_url': 'https://github.com/yedamao', 'followers_url': 'https://api.github.com/users/yedamao/followers', 'following_url': 'https://api.github.com/users/yedamao/following{/other_user}', 'gists_url': 'https://api.github.com/users/yedamao/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/yedamao/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/yedamao/subscriptions', 'organizations_url': 'https://api.github.com/users/yedamao/orgs', 'repos_url': 'https://api.github.com/users/yedamao/repos', 'events_url': 'https://api.github.com/users/yedamao/events{/privacy}', 'received_events_url': 'https://api.github.com/users/yedamao/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-08-31T14:07:35Z,2020-08-31T14:26:07Z,2020-08-31T14:25:59Z,NONE,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/537', 'html_url': 'https://github.com/tinode/chat/pull/537', 'diff_url': 'https://github.com/tinode/chat/pull/537.diff', 'patch_url': 'https://github.com/tinode/chat/pull/537.patch'}",fix typo in comments,
3,https://api.github.com/repos/tinode/chat/issues/536,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/536/labels{/name},https://api.github.com/repos/tinode/chat/issues/536/comments,https://api.github.com/repos/tinode/chat/issues/536/events,https://github.com/tinode/chat/pull/536,688759341,MDExOlB1bGxSZXF1ZXN0NDc1OTQwNTQ0,536,Allow setting custom auth mechanism in mongo db,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-30T17:35:39Z,2020-08-31T00:22:15Z,2020-08-31T00:22:15Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/536', 'html_url': 'https://github.com/tinode/chat/pull/536', 'diff_url': 'https://github.com/tinode/chat/pull/536.diff', 'patch_url': 'https://github.com/tinode/chat/pull/536.patch'}",,
4,https://api.github.com/repos/tinode/chat/issues/535,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/535/labels{/name},https://api.github.com/repos/tinode/chat/issues/535/comments,https://api.github.com/repos/tinode/chat/issues/535/events,https://github.com/tinode/chat/issues/535,688642272,MDU6SXNzdWU2ODg2NDIyNzI=,535,Hold up Session cleanup until all requests completed,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977920, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjA=', 'url': 'https://api.github.com/repos/tinode/chat/labels/bug', 'name': 'bug', 'color': 'fc2929', 'default': True, 'description': None}]",open,False,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}]",,5,2020-08-30T02:58:48Z,2020-08-31T16:56:09Z,,CONTRIBUTOR,,,"Currently, a session quits whenever it receives a shutdown request.
When there are requests from this session in flight when the session is shutting down, these requests will continue to execute and may modify the server state breaking a broad range of invariants leading to memory leaks and other types of unexpected behavior.
Keep track of requests in flight, and make sure they complete before the session proceeds to the cleanup phase.",
5,https://api.github.com/repos/tinode/chat/issues/534,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/534/labels{/name},https://api.github.com/repos/tinode/chat/issues/534/comments,https://api.github.com/repos/tinode/chat/issues/534/events,https://github.com/tinode/chat/issues/534,688462516,MDU6SXNzdWU2ODg0NjI1MTY=,534,A very strange deadlock,"{'login': 'hhy5861', 'id': 8274977, 'node_id': 'MDQ6VXNlcjgyNzQ5Nzc=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/8274977?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/hhy5861', 'html_url': 'https://github.com/hhy5861', 'followers_url': 'https://api.github.com/users/hhy5861/followers', 'following_url': 'https://api.github.com/users/hhy5861/following{/other_user}', 'gists_url': 'https://api.github.com/users/hhy5861/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/hhy5861/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/hhy5861/subscriptions', 'organizations_url': 'https://api.github.com/users/hhy5861/orgs', 'repos_url': 'https://api.github.com/users/hhy5861/repos', 'events_url': 'https://api.github.com/users/hhy5861/events{/privacy}', 'received_events_url': 'https://api.github.com/users/hhy5861/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977920, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjA=', 'url': 'https://api.github.com/repos/tinode/chat/labels/bug', 'name': 'bug', 'color': 'fc2929', 'default': True, 'description': None}]",open,False,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}]",,6,2020-08-29T05:15:32Z,2020-08-31T04:10:41Z,,NONE,,,"tinode version: 0.16.6
1. A large number of users subscribe to me will cause a deadlock. There is no response to the ctrl event.
2. The case has not been found yet.
3. This phenomenon can be reproduced by pressure test. Stand-alone also appeared.",
6,https://api.github.com/repos/tinode/chat/issues/533,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/533/labels{/name},https://api.github.com/repos/tinode/chat/issues/533/comments,https://api.github.com/repos/tinode/chat/issues/533/events,https://github.com/tinode/chat/pull/533,688438187,MDExOlB1bGxSZXF1ZXN0NDc1NzA0NjMx,533,Always kill proxy topic when it has no more sessions.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-08-29T02:10:43Z,2020-08-29T03:04:50Z,2020-08-29T03:04:50Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/533', 'html_url': 'https://github.com/tinode/chat/pull/533', 'diff_url': 'https://github.com/tinode/chat/pull/533.diff', 'patch_url': 'https://github.com/tinode/chat/pull/533.patch'}",It should help https://github.com/tinode/chat/issues/529,
7,https://api.github.com/repos/tinode/chat/issues/532,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/532/labels{/name},https://api.github.com/repos/tinode/chat/issues/532/comments,https://api.github.com/repos/tinode/chat/issues/532/events,https://github.com/tinode/chat/issues/532,687710792,MDU6SXNzdWU2ODc3MTA3OTI=,532,How about the performance of tinode? Will we do some benchmarking,"{'login': 'warfrogsdf', 'id': 2961265, 'node_id': 'MDQ6VXNlcjI5NjEyNjU=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/2961265?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/warfrogsdf', 'html_url': 'https://github.com/warfrogsdf', 'followers_url': 'https://api.github.com/users/warfrogsdf/followers', 'following_url': 'https://api.github.com/users/warfrogsdf/following{/other_user}', 'gists_url': 'https://api.github.com/users/warfrogsdf/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/warfrogsdf/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/warfrogsdf/subscriptions', 'organizations_url': 'https://api.github.com/users/warfrogsdf/orgs', 'repos_url': 'https://api.github.com/users/warfrogsdf/repos', 'events_url': 'https://api.github.com/users/warfrogsdf/events{/privacy}', 'received_events_url': 'https://api.github.com/users/warfrogsdf/received_events', 'type': 'User', 'site_admin': False}","[{'id': 811090999, 'node_id': 'MDU6TGFiZWw4MTEwOTA5OTk=', 'url': 'https://api.github.com/repos/tinode/chat/labels/feature%20request', 'name': 'feature request', 'color': 'edcf8b', 'default': False, 'description': None}]",open,False,,[],,3,2020-08-28T04:52:38Z,2020-08-28T11:09:19Z,,NONE,,,"
",
8,https://api.github.com/repos/tinode/chat/issues/531,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/531/labels{/name},https://api.github.com/repos/tinode/chat/issues/531/comments,https://api.github.com/repos/tinode/chat/issues/531/events,https://github.com/tinode/chat/pull/531,687594009,MDExOlB1bGxSZXF1ZXN0NDc0OTkzMzYy,531,"Added channel to demo data, small bug fix.","{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-08-27T22:56:57Z,2020-08-28T02:58:31Z,2020-08-28T02:58:31Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/531', 'html_url': 'https://github.com/tinode/chat/pull/531', 'diff_url': 'https://github.com/tinode/chat/pull/531.diff', 'patch_url': 'https://github.com/tinode/chat/pull/531.patch'}",,
9,https://api.github.com/repos/tinode/chat/issues/530,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/530/labels{/name},https://api.github.com/repos/tinode/chat/issues/530/comments,https://api.github.com/repos/tinode/chat/issues/530/events,https://github.com/tinode/chat/pull/530,686996053,MDExOlB1bGxSZXF1ZXN0NDc0NDk0NzM4,530,Break Session.writeLoop() in session cleanup.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-27T06:59:32Z,2020-08-27T20:20:52Z,2020-08-27T20:20:52Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/530', 'html_url': 'https://github.com/tinode/chat/pull/530', 'diff_url': 'https://github.com/tinode/chat/pull/530.diff', 'patch_url': 'https://github.com/tinode/chat/pull/530.patch'}",Write loop continues to run after its host session quits. Fix it.,
10,https://api.github.com/repos/tinode/chat/issues/529,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/529/labels{/name},https://api.github.com/repos/tinode/chat/issues/529/comments,https://api.github.com/repos/tinode/chat/issues/529/events,https://github.com/tinode/chat/issues/529,686945488,MDU6SXNzdWU2ODY5NDU0ODg=,529,too many goruntines cause very high memory usage.,"{'login': 'hhy5861', 'id': 8274977, 'node_id': 'MDQ6VXNlcjgyNzQ5Nzc=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/8274977?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/hhy5861', 'html_url': 'https://github.com/hhy5861', 'followers_url': 'https://api.github.com/users/hhy5861/followers', 'following_url': 'https://api.github.com/users/hhy5861/following{/other_user}', 'gists_url': 'https://api.github.com/users/hhy5861/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/hhy5861/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/hhy5861/subscriptions', 'organizations_url': 'https://api.github.com/users/hhy5861/orgs', 'repos_url': 'https://api.github.com/users/hhy5861/repos', 'events_url': 'https://api.github.com/users/hhy5861/events{/privacy}', 'received_events_url': 'https://api.github.com/users/hhy5861/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977920, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjA=', 'url': 'https://api.github.com/repos/tinode/chat/labels/bug', 'name': 'bug', 'color': 'fc2929', 'default': True, 'description': None}]",closed,False,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}]",,5,2020-08-27T05:14:58Z,2020-08-29T03:06:41Z,2020-08-29T03:06:41Z,NONE,,,"```
goroutine profile: total 920756
626254 @ 0x437070 0x447363 0xb3570f 0x4671c1
# 0xb3570e main.(*Session).clusterWriteLoop+0x14e /Users/mike/golang/poizon/duinfr/spider/server/cluster.go:1013
278952 @ 0x437070 0x447363 0xb77212 0xb65cdb 0x4671c1
# 0xb77211 main.(*Topic).runProxy+0x251 /Users/mike/golang/poizon/duinfr/spider/server/topic_proxy.go:22
# 0xb65cda main.(*Topic).run+0x3a /Users/mike/golang/poizon/duinfr/spider/server/topic.go:169
9478 @ 0x437070 0x447363 0xb664cd 0xb65cf8 0x4671c1
# 0xb664cc main.(*Topic).runLocal+0x2bc /Users/mike/golang/poizon/duinfr/spider/server/topic.go:219
# 0xb65cf7 main.(*Topic).run+0x57 /Users/mike/golang/poizon/duinfr/spider/server/topic.go:167
3289 @ 0x437070 0x447363 0xb3b952 0x4671c1
# 0xb3b951 main.(*Session).writeLoop+0x1c1 /Users/mike/golang/poizon/duinfr/spider/server/hdl_websock.go:76
2678 @ 0x437070 0x43002a 0x42f595 0x4dcfe5 0x4dde7b 0x4dde5d 0x56d7bf 0x57ff3e 0x6500d0 0x47ee31 0x65031c 0x64e8d5 0x6529fb 0x652a06 0x4fe443 0x4fe5af 0x8d2d30 0x8d528c 0x8d631f 0x8d6a9f 0xb3b5ec 0x4671c1
# 0x42f594 internal/poll.runtime_pollWait+0x54 /Users/mike/.gvm/gos/go1.14.6/src/runtime/netpoll.go:203
# 0x4dcfe4 internal/poll.(*pollDesc).wait+0x44 /Users/mike/.gvm/gos/go1.14.6/src/internal/poll/fd_poll_runtime.go:87
# 0x4dde7a internal/poll.(*pollDesc).waitRead+0x19a /Users/mike/.gvm/gos/go1.14.6/src/internal/poll/fd_poll_runtime.go:92
# 0x4dde5c internal/poll.(*FD).Read+0x17c /Users/mike/.gvm/gos/go1.14.6/src/internal/poll/fd_unix.go:169
# 0x56d7be net.(*netFD).Read+0x4e /Users/mike/.gvm/gos/go1.14.6/src/net/fd_unix.go:202
# 0x57ff3d net.(*conn).Read+0x8d /Users/mike/.gvm/gos/go1.14.6/src/net/net.go:184
# 0x6500cf crypto/tls.(*atLeastReader).Read+0x5f /Users/mike/.gvm/gos/go1.14.6/src/crypto/tls/conn.go:760
# 0x47ee30 bytes.(*Buffer).ReadFrom+0xb0 /Users/mike/.gvm/gos/go1.14.6/src/bytes/buffer.go:204
# 0x65031b crypto/tls.(*Conn).readFromUntil+0xeb /Users/mike/.gvm/gos/go1.14.6/src/crypto/tls/conn.go:782
# 0x64e8d4 crypto/tls.(*Conn).readRecordOrCCS+0x114 /Users/mike/.gvm/gos/go1.14.6/src/crypto/tls/conn.go:589
# 0x6529fa crypto/tls.(*Conn).readRecord+0x15a /Users/mike/.gvm/gos/go1.14.6/src/crypto/tls/conn.go:557
# 0x652a05 crypto/tls.(*Conn).Read+0x165 /Users/mike/.gvm/gos/go1.14.6/src/crypto/tls/conn.go:1233
# 0x4fe442 bufio.(*Reader).fill+0x102 /Users/mike/.gvm/gos/go1.14.6/src/bufio/bufio.go:100
# 0x4fe5ae bufio.(*Reader).Peek+0x4e /Users/mike/.gvm/gos/go1.14.6/src/bufio/bufio.go:138
# 0x8d2d2f github.com/gorilla/websocket.(*Conn).read+0x3f /Users/mike/.gvm/pkgsets/go1.14.6/global/pkg/mod/github.com/gorilla/websocket@v1.4.2/conn.go:370
# 0x8d528b github.com/gorilla/websocket.(*Conn).advanceFrame+0x5b /Users/mike/.gvm/pkgsets/go1.14.6/global/pkg/mod/github.com/gorilla/websocket@v1.4.2/conn.go:798
# 0x8d631e github.com/gorilla/websocket.(*Conn).NextReader+0x8e /Users/mike/.gvm/pkgsets/go1.14.6/global/pkg/mod/github.com/gorilla/websocket@v1.4.2/conn.go:980
# 0x8d6a9e github.com/gorilla/websocket.(*Conn).ReadMessage+0x2e /Users/mike/.gvm/pkgsets/go1.14.6/global/pkg/mod/github.com/gorilla/websocket@v1.4.2/conn.go:1064
# 0xb3b5eb main.(*Session).readLoop+0x14b /Users/mike/golang/poizon/duinfr/spider/server/hdl_websock.go:54
19 @ 0x437070 0x43002a 0x42f595 0x4dcfe5 0x4dde7b 0x4dde5d 0x56d7bf 0x57ff3e 0x4feaff 0x4754d7 0x506b8f 0x506b42 0x5111e7 0x51173c 0x511a4b 0x5118cd 0x781495 0x780765 0x4671c1
# 0x42f594 internal/poll.runtime_pollWait+0x54 /Users/mike/.gvm/gos/go1.14.6/src/runtime/netpoll.go:203
# 0x4dcfe4 internal/poll.(*pollDesc).wait+0x44 /Users/mike/.gvm/gos/go1.14.6/src/internal/poll/fd_poll_runtime.go:87
# 0x4dde7a internal/poll.(*pollDesc).waitRead+0x19a /Users/mike/.gvm/gos/go1.14.6/src/internal/poll/fd_poll_runtime.go:92
# 0x4dde5c internal/poll.(*FD).Read+0x17c /Users/mike/.gvm/gos/go1.14.6/src/internal/poll/fd_unix.go:169
# 0x56d7be net.(*netFD).Read+0x4e /Users/mike/.gvm/gos/go1.14.6/src/net/fd_unix.go:202
# 0x57ff3d net.(*conn).Read+0x8d /Users/mike/.gvm/gos/go1.14.6/src/net/net.go:184
# 0x4feafe bufio.(*Reader).Read+0x24e /Users/mike/.gvm/gos/go1.14.6/src/bufio/bufio.go:226
# 0x4754d6 io.ReadAtLeast+0x86 /Users/mike/.gvm/gos/go1.14.6/src/io/io.go:310
# 0x506b8e io.ReadFull+0x6e /Users/mike/.gvm/gos/go1.14.6/src/io/io.go:329
# 0x506b41 encoding/gob.decodeUintReader+0x21 /Users/mike/.gvm/gos/go1.14.6/src/encoding/gob/decode.go:120
# 0x5111e6 encoding/gob.(*Decoder).recvMessage+0x56 /Users/mike/.gvm/gos/go1.14.6/src/encoding/gob/decoder.go:81
# 0x51173b encoding/gob.(*Decoder).decodeTypeSequence+0x10b /Users/mike/.gvm/gos/go1.14.6/src/encoding/gob/decoder.go:143
# 0x511a4a encoding/gob.(*Decoder).DecodeValue+0xda /Users/mike/.gvm/gos/go1.14.6/src/encoding/gob/decoder.go:211
# 0x5118cc encoding/gob.(*Decoder).Decode+0x16c /Users/mike/.gvm/gos/go1.14.6/src/encoding/gob/decoder.go:188
# 0x781494 net/rpc.(*gobClientCodec).ReadResponseHeader+0x44 /Users/mike/.gvm/gos/go1.14.6/src/net/rpc/client.go:228
# 0x780764 net/rpc.(*Client).input+0xa4 /Users/mike/.gvm/gos/go1.14.6/src/net/rpc/client.go:109
19 @ 0x437070 0x43002a 0x42f595 0x4dcfe5 0x4dde7b 0x4dde5d 0x56d7bf 0x57ff3e 0x4feaff 0x4754d7 0x506b8f 0x506b42 0x5111e7 0x51173c 0x511a4b 0x5118cd 0x783aa5 0x7852c7 0x784bca 0x784167 0x783fb9 0x4671c1
# 0x42f594 internal/poll.runtime_pollWait+0x54 /Users/mike/.gvm/gos/go1.14.6/src/runtime/netpoll.go:203
# 0x4dcfe4 internal/poll.(*pollDesc).wait+0x44 /Users/mike/.gvm/gos/go1.14.6/src/internal/poll/fd_poll_runtime.go:87
# 0x4dde7a internal/poll.(*pollDesc).waitRead+0x19a /Users/mike/.gvm/gos/go1.14.6/src/internal/poll/fd_poll_runtime.go:92
# 0x4dde5c internal/poll.(*FD).Read+0x17c /Users/mike/.gvm/gos/go1.14.6/src/internal/poll/fd_unix.go:169
# 0x56d7be net.(*netFD).Read+0x4e /Users/mike/.gvm/gos/go1.14.6/src/net/fd_unix.go:202
# 0x57ff3d net.(*conn).Read+0x8d /Users/mike/.gvm/gos/go1.14.6/src/net/net.go:184
# 0x4feafe bufio.(*Reader).Read+0x24e /Users/mike/.gvm/gos/go1.14.6/src/bufio/bufio.go:226
# 0x4754d6 io.ReadAtLeast+0x86 /Users/mike/.gvm/gos/go1.14.6/src/io/io.go:310
# 0x506b8e io.ReadFull+0x6e /Users/mike/.gvm/gos/go1.14.6/src/io/io.go:329
# 0x506b41 encoding/gob.decodeUintReader+0x21 /Users/mike/.gvm/gos/go1.14.6/src/encoding/gob/decode.go:120
# 0x5111e6 encoding/gob.(*Decoder).recvMessage+0x56 /Users/mike/.gvm/gos/go1.14.6/src/encoding/gob/decoder.go:81
# 0x51173b encoding/gob.(*Decoder).decodeTypeSequence+0x10b /Users/mike/.gvm/gos/go1.14.6/src/encoding/gob/decoder.go:143
# 0x511a4a encoding/gob.(*Decoder).DecodeValue+0xda /Users/mike/.gvm/gos/go1.14.6/src/encoding/gob/decoder.go:211
# 0x5118cc encoding/gob.(*Decoder).Decode+0x16c /Users/mike/.gvm/gos/go1.14.6/src/encoding/gob/decoder.go:188
# 0x783aa4 net/rpc.(*gobServerCodec).ReadRequestHeader+0x44 /Users/mike/.gvm/gos/go1.14.6/src/net/rpc/server.go:397
# 0x7852c6 net/rpc.(*Server).readRequestHeader+0x66 /Users/mike/.gvm/gos/go1.14.6/src/net/rpc/server.go:583
# 0x784bc9 net/rpc.(*Server).readRequest+0x59 /Users/mike/.gvm/gos/go1.14.6/src/net/rpc/server.go:543
# 0x784166 net/rpc.(*Server).ServeCodec+0x96 /Users/mike/.gvm/gos/go1.14.6/src/net/rpc/server.go:458
# 0x783fb8 net/rpc.(*Server).ServeConn+0x158 /Users/mike/.gvm/gos/go1.14.6/src/net/rpc/server.go:449
15 @ 0x437070 0x43002a 0x42f595 0x4dcfe5 0x4dde7b 0x4dde5d 0x56d7bf 0x57ff3e 0x6500d0 0x47ee31 0x65031c 0x64e8d5 0x6511fd 0x651208 0x66a4da 0x6684af 0x668061 0x653151 0x70ec5d 0x4671c1
# 0x42f594 internal/poll.runtime_pollWait+0x54 /Users/mike/.gvm/gos/go1.14.6/src/runtime/netpoll.go:203
# 0x4dcfe4 internal/poll.(*pollDesc).wait+0x44 /Users/mike/.gvm/gos/go1.14.6/src/internal/poll/fd_poll_runtime.go:87
# 0x4dde7a internal/poll.(*pollDesc).waitRead+0x19a /Users/mike/.gvm/gos/go1.14.6/src/internal/poll/fd_poll_runtime.go:92
# 0x4dde5c internal/poll.(*FD).Read+0x17c /Users/mike/.gvm/gos/go1.14.6/src/internal/poll/fd_unix.go:169
# 0x56d7be net.(*netFD).Read+0x4e /Users/mike/.gvm/gos/go1.14.6/src/net/fd_unix.go:202
# 0x57ff3d net.(*conn).Read+0x8d /Users/mike/.gvm/gos/go1.14.6/src/net/net.go:184
# 0x6500cf crypto/tls.(*atLeastReader).Read+0x5f /Users/mike/.gvm/gos/go1.14.6/src/crypto/tls/conn.go:760
# 0x47ee30 bytes.(*Buffer).ReadFrom+0xb0 /Users/mike/.gvm/gos/go1.14.6/src/bytes/buffer.go:204
# 0x65031b crypto/tls.(*Conn).readFromUntil+0xeb /Users/mike/.gvm/gos/go1.14.6/src/crypto/tls/conn.go:782
# 0x64e8d4 crypto/tls.(*Conn).readRecordOrCCS+0x114 /Users/mike/.gvm/gos/go1.14.6/src/crypto/tls/conn.go:589
# 0x6511fc crypto/tls.(*Conn).readRecord+0x6c /Users/mike/.gvm/gos/go1.14.6/src/crypto/tls/conn.go:557
# 0x651207 crypto/tls.(*Conn).readHandshake+0x77 /Users/mike/.gvm/gos/go1.14.6/src/crypto/tls/conn.go:973
# 0x66a4d9 crypto/tls.(*serverHandshakeState).doFullHandshake+0x4e9 /Users/mike/.gvm/gos/go1.14.6/src/crypto/tls/handshake_server.go:524
# 0x6684ae crypto/tls.(*serverHandshakeState).handshake+0x31e /Users/mike/.gvm/gos/go1.14.6/src/crypto/tls/handshake_server.go:105
# 0x668060 crypto/tls.(*Conn).serverHandshake+0x100 /Users/mike/.gvm/gos/go1.14.6/src/crypto/tls/handshake_server.go:60
# 0x653150 crypto/tls.(*Conn).Handshake+0x1e0 /Users/mike/.gvm/gos/go1.14.6/src/crypto/tls/conn.go:1342
# 0x70ec5c net/http.(*conn).serve+0x19c /Users/mike/.gvm/gos/go1.14.6/src/net/http/server.go:1816
```
tinode version 0.16.6
The current number of cluster nodes is 20",
11,https://api.github.com/repos/tinode/chat/issues/528,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/528/labels{/name},https://api.github.com/repos/tinode/chat/issues/528/comments,https://api.github.com/repos/tinode/chat/issues/528/events,https://github.com/tinode/chat/pull/528,686605783,MDExOlB1bGxSZXF1ZXN0NDc0MTQ0MzUw,528,Channel,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-26T20:47:01Z,2020-08-26T20:47:39Z,2020-08-26T20:47:10Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/528', 'html_url': 'https://github.com/tinode/chat/pull/528', 'diff_url': 'https://github.com/tinode/chat/pull/528.diff', 'patch_url': 'https://github.com/tinode/chat/pull/528.patch'}",,
12,https://api.github.com/repos/tinode/chat/issues/527,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/527/labels{/name},https://api.github.com/repos/tinode/chat/issues/527/comments,https://api.github.com/repos/tinode/chat/issues/527/events,https://github.com/tinode/chat/pull/527,686040484,MDExOlB1bGxSZXF1ZXN0NDczNjc0NzM5,527,Fail subscribe requests when the Hub's join queue is full.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-26T06:15:14Z,2020-08-27T06:54:40Z,2020-08-27T06:54:40Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/527', 'html_url': 'https://github.com/tinode/chat/pull/527', 'diff_url': 'https://github.com/tinode/chat/pull/527.diff', 'patch_url': 'https://github.com/tinode/chat/pull/527.patch'}","Handle subscribe responses in tsung.xml in such cases.
Also, gofmt on session.go.",
13,https://api.github.com/repos/tinode/chat/issues/526,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/526/labels{/name},https://api.github.com/repos/tinode/chat/issues/526/comments,https://api.github.com/repos/tinode/chat/issues/526/events,https://github.com/tinode/chat/pull/526,685923249,MDExOlB1bGxSZXF1ZXN0NDczNTc4NjU5,526,Fixed channel permissions and disabled deleting messages in channels.,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-26T00:46:44Z,2020-08-26T20:45:57Z,2020-08-26T20:45:57Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/526', 'html_url': 'https://github.com/tinode/chat/pull/526', 'diff_url': 'https://github.com/tinode/chat/pull/526.diff', 'patch_url': 'https://github.com/tinode/chat/pull/526.patch'}","This is probably the last PR next -> channel. I'll merge channel into devel afterwards.
Things look functional with no obvious bugs. Channels can be tested with webapp from 'next'. ",
14,https://api.github.com/repos/tinode/chat/issues/525,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/525/labels{/name},https://api.github.com/repos/tinode/chat/issues/525/comments,https://api.github.com/repos/tinode/chat/issues/525/events,https://github.com/tinode/chat/pull/525,685812964,MDExOlB1bGxSZXF1ZXN0NDczNDgyOTQx,525,fix for #524,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-25T20:58:15Z,2020-08-26T20:47:28Z,2020-08-25T23:56:56Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/525', 'html_url': 'https://github.com/tinode/chat/pull/525', 'diff_url': 'https://github.com/tinode/chat/pull/525.diff', 'patch_url': 'https://github.com/tinode/chat/pull/525.patch'}","I think this should work, another lock is not needed. What do you think?",
15,https://api.github.com/repos/tinode/chat/issues/524,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/524/labels{/name},https://api.github.com/repos/tinode/chat/issues/524/comments,https://api.github.com/repos/tinode/chat/issues/524/events,https://github.com/tinode/chat/issues/524,685551936,MDU6SXNzdWU2ODU1NTE5MzY=,524,cluster thread safety,"{'login': 'hhy5861', 'id': 8274977, 'node_id': 'MDQ6VXNlcjgyNzQ5Nzc=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/8274977?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/hhy5861', 'html_url': 'https://github.com/hhy5861', 'followers_url': 'https://api.github.com/users/hhy5861/followers', 'following_url': 'https://api.github.com/users/hhy5861/following{/other_user}', 'gists_url': 'https://api.github.com/users/hhy5861/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/hhy5861/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/hhy5861/subscriptions', 'organizations_url': 'https://api.github.com/users/hhy5861/orgs', 'repos_url': 'https://api.github.com/users/hhy5861/repos', 'events_url': 'https://api.github.com/users/hhy5861/events{/privacy}', 'received_events_url': 'https://api.github.com/users/hhy5861/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977920, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjA=', 'url': 'https://api.github.com/repos/tinode/chat/labels/bug', 'name': 'bug', 'color': 'fc2929', 'default': True, 'description': None}]",open,False,,[],,1,2020-08-25T14:48:44Z,2020-08-25T23:57:14Z,,NONE,,,"2020/08/25 22:39:59 in: '{""hi"":{""id"":""110283"",""lang"":""zh_CN"",""ua"":""dewuApp\\4.52.0 (Android 4.14.116; zh_CN_#Hans); dewuApp/4.52.0"",""ver"":""0.16""}}' sid='aF1xOAB_tlw' uid=''
fatal error: concurrent map writes2020/08/25 22:39:59 cluster: multiplexing session started usrdjMgjtkej-s-node-02 1274
goroutine 7886 [running]:
runtime.throw(0xd6bae1, 0x15)
/Users/mike/.gvm/gos/go1.14.6/src/runtime/panic.go:1116 +0x72 fp=0xc003490a10 sp=0xc0034909e0 pc=0x434642
runtime.mapassign_faststr(0xc32940, 0xc00037c3c0, 0xc002541470, 0x21, 0x21)
/Users/mike/.gvm/gos/go1.14.6/src/runtime/map_faststr.go:211 +0x3f7 fp=0xc003490a78 sp=0xc003490a10 pc=0x413497
main.(*Cluster).TopicMaster(0xc00019e1e0, 0xc0027017a0, 0xc0006edc88, 0x0, 0x0)
/Users/mike/golang/poizon/duinfr/spider/server/cluster.go:399 +0xccb fp=0xc003490bc0 sp=0xc003490a78 pc=0xaf9cbb
runtime.call64(0xc0002fc840, 0xc00009c250, 0xc000a0fd40, 0x1800000028)
/Users/mike/.gvm/gos/go1.14.6/src/runtime/asm_amd64.s:540 +0x3b fp=0xc003490c10 sp=0xc003490bc0 pc=0x46566b
reflect.Value.call(0xc000180900, 0xc00009c250, 0x13, 0xd5cfe8, 0x4, 0xc003490f08, 0x3, 0x3, 0x0, 0x0, ...)
/Users/mike/.gvm/gos/go1.14.6/src/reflect/value.go:460 +0x8ab fp=0xc003490e28 sp=0xc003490c10 pc=0x49b8ab
reflect.Value.Call(0xc000180900, 0xc00009c250, 0x13, 0xc0026be708, 0x3, 0x3, 0xc0026be768, 0x405f8b, 0xc001843320)
/Users/mike/.gvm/gos/go1.14.6/src/reflect/value.go:321 +0xb4 fp=0xc003490ea8 sp=0xc003490e28 pc=0x49adb4
net/rpc.(*service).call(0xc00018ca40, 0xc0000a8000, 0xc0000977a8, 0xc0000977e0, 0xc0000a4400, 0xc000189980, 0xbb70e0, 0xc0027017a0, 0x16, 0xba94a0, ...)
/Users/mike/.gvm/gos/go1.14.6/src/net/rpc/server.go:377 +0x17f fp=0xc003490f70 sp=0xc003490ea8 pc=0x781faf
runtime.goexit()
/Users/mike/.gvm/gos/go1.14.6/src/runtime/asm_amd64.s:1373 +0x1 fp=0xc003490f78 sp=0xc003490f70 pc=0x4671c1
created by net/rpc.(*Server).ServeCodec
/Users/mike/.gvm/gos/go1.14.6/src/net/rpc/server.go:474 +0x42b
goroutine 1 [select]:
main.listenAndServe(0xc00057b968, 0x4, 0xc0004d2ec0, 0xc000083c80, 0x101, 0x93a80, 0xc0000968d0, 0x10, 0xc0000968e0, 0x10, ...)
/Users/mike/golang/poizon/duinfr/spider/server/http.go:79 +0x1c2
main.main()
/Users/mike/golang/poizon/duinfr/spider/server/main.go:571 +0x18f6
goroutine 33 [select]:
go.opencensus.io/stats/view.(*worker).start(0xc00019e2d0)
/Users/mike/.gvm/pkgsets/go1.14.6/global/pkg/mod/go.opencensus.io@v0.21.0/stats/view/worker.go:154 +0x100
created by go.opencensus.io/stats/view.init.0
/Users/mike/.gvm/pkgsets/go1.14.6/global/pkg/mod/go.opencensus.io@v0.21.0/stats/view/worker.go:32 +0x57
goroutine 19 [chan receive]:
main.statsUpdater()
/Users/mike/golang/poizon/duinfr/spider/server/stats.go:78 +0x50
created by main.statsInit
/Users/mike/golang/poizon/duinfr/spider/server/stats.go:38 +0x156
goroutine 20 [select]:
database/sql.(*DB).connectionOpener(0xc0000fc180, 0xfe10a0, 0xc0004d3200)
/Users/mike/.gvm/gos/go1.14.6/src/database/sql/sql.go:1071 +0xe8
created by database/sql.OpenDB
/Users/mike/.gvm/gos/go1.14.6/src/database/sql/sql.go:742 +0x12a
goroutine 418 [select]:
main.(*Session).writeLoop(0xc000916160)
/Users/mike/golang/poizon/duinfr/spider/server/hdl_websock.go:75 +0x1c2
created by main.serveWebSocket
/Users/mike/golang/poizon/duinfr/spider/server/hdl_websock.go:180 +0x663
goroutine 85 [select]:
google.golang.org/grpc/internal/transport.(*controlBuffer).get(0xc000074500, 0x1, 0x0, 0x0, 0x0, 0x0)
/Users/mike/.gvm/pkgsets/go1.14.6/global/pkg/mod/google.golang.org/grpc@v1.28.0/internal/transport/controlbuf.go:395 +0x122
google.golang.org/grpc/internal/transport.(*loopyWriter).run(0xc00058b560, 0x0, 0x0)
/Users/mike/.gvm/pkgsets/go1.14.6/global/pkg/mod/google.golang.org/grpc@v1.28.0/internal/transport/controlbuf.go:513 +0x1cd
google.golang.org/grpc/internal/transport.newHTTP2Client.func3(0xc000126700)
/Users/mike/.gvm/pkgsets/go1.14.6/global/pkg/mod/google.golang.org/grpc@v1.28.0/internal/transport/http2_client.go:346 +0x7b
created by google.golang.org/grpc/internal/transport.newHTTP2Client
/Users/mike/.gvm/pkgsets/go1.14.6/global/pkg/mod/google.golang.org/grpc@v1.28.0/internal/transport/http2_client.go:344 +0xedb
goroutine 10 [select]:
google.golang.org/grpc.(*ccBalancerWrapper).watcher(0xc00018c240)
/Users/mike/.gvm/pkgsets/go1.14.6/global/pkg/mod/google.golang.org/grpc@v1.28.0/balancer_conn_wrappers.go:69 +0xc2
created by google.golang.org/grpc.newCCBalancerWrapper
/Users/mike/.gvm/pkgsets/go1.14.6/global/pkg/mod/google.golang.org/grpc@v1.28.0/balancer_conn_wrappers.go:60 +0x16d
goroutine 11 [chan receive]:
google.golang.org/grpc.(*addrConn).resetTransport(0xc0000ac2c0)
/Users/mike/.gvm/pkgsets/go1.14.6/global/pkg/mod/google.golang.org/grpc@v1.28.0/clientconn.go:1155 +0x6ea
created by google.golang.org/grpc.(*addrConn).connect
/Users/mike/.gvm/pkgsets/go1.14.6/global/pkg/mod/google.golang.org/grpc@v1.28.0/clientconn.go:798 +0x128
goroutine 12 [select]:
google.golang.org/grpc.(*ccBalancerWrapper).watcher(0xc00018c980)
/Users/mike/.gvm/pkgsets/go1.14.6/global/pkg/mod/google.golang.org/grpc@v1.28.0/balancer_conn_wrappers.go:69 +0xc2
created by google.golang.org/grpc.newCCBalancerWrapper
/Users/mike/.gvm/pkgsets/go1.14.6/global/pkg/mod/google.golang.org/grpc@v1.28.0/balancer_conn_wrappers.go:60 +0x16d
tinode version:
0.16.6",
16,https://api.github.com/repos/tinode/chat/issues/523,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/523/labels{/name},https://api.github.com/repos/tinode/chat/issues/523/comments,https://api.github.com/repos/tinode/chat/issues/523/events,https://github.com/tinode/chat/issues/523,685551466,MDU6SXNzdWU2ODU1NTE0NjY=,523,cluster thread safety,"{'login': 'hhy5861', 'id': 8274977, 'node_id': 'MDQ6VXNlcjgyNzQ5Nzc=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/8274977?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/hhy5861', 'html_url': 'https://github.com/hhy5861', 'followers_url': 'https://api.github.com/users/hhy5861/followers', 'following_url': 'https://api.github.com/users/hhy5861/following{/other_user}', 'gists_url': 'https://api.github.com/users/hhy5861/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/hhy5861/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/hhy5861/subscriptions', 'organizations_url': 'https://api.github.com/users/hhy5861/orgs', 'repos_url': 'https://api.github.com/users/hhy5861/repos', 'events_url': 'https://api.github.com/users/hhy5861/events{/privacy}', 'received_events_url': 'https://api.github.com/users/hhy5861/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977920, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjA=', 'url': 'https://api.github.com/repos/tinode/chat/labels/bug', 'name': 'bug', 'color': 'fc2929', 'default': True, 'description': None}]",closed,False,,[],,0,2020-08-25T14:48:11Z,2020-08-25T14:49:47Z,2020-08-25T14:49:47Z,NONE,,,"2020/08/25 22:39:59 in: '{""hi"":{""id"":""110283"",""lang"":""zh_CN"",""ua"":""dewuApp\\4.52.0 (Android 4.14.116; zh_CN_#Hans); dewuApp/4.52.0"",""ver"":""0.16""}}' sid='aF1xOAB_tlw' uid=''
fatal error: concurrent map writes2020/08/25 22:39:59 cluster: multiplexing session started usrdjMgjtkej-s-node-02 1274
goroutine 7886 [running]:
runtime.throw(0xd6bae1, 0x15)
/Users/mike/.gvm/gos/go1.14.6/src/runtime/panic.go:1116 +0x72 fp=0xc003490a10 sp=0xc0034909e0 pc=0x434642
runtime.mapassign_faststr(0xc32940, 0xc00037c3c0, 0xc002541470, 0x21, 0x21)
/Users/mike/.gvm/gos/go1.14.6/src/runtime/map_faststr.go:211 +0x3f7 fp=0xc003490a78 sp=0xc003490a10 pc=0x413497
main.(*Cluster).TopicMaster(0xc00019e1e0, 0xc0027017a0, 0xc0006edc88, 0x0, 0x0)
/Users/mike/golang/poizon/duinfr/spider/server/cluster.go:399 +0xccb fp=0xc003490bc0 sp=0xc003490a78 pc=0xaf9cbb
runtime.call64(0xc0002fc840, 0xc00009c250, 0xc000a0fd40, 0x1800000028)
/Users/mike/.gvm/gos/go1.14.6/src/runtime/asm_amd64.s:540 +0x3b fp=0xc003490c10 sp=0xc003490bc0 pc=0x46566b
reflect.Value.call(0xc000180900, 0xc00009c250, 0x13, 0xd5cfe8, 0x4, 0xc003490f08, 0x3, 0x3, 0x0, 0x0, ...)
/Users/mike/.gvm/gos/go1.14.6/src/reflect/value.go:460 +0x8ab fp=0xc003490e28 sp=0xc003490c10 pc=0x49b8ab
reflect.Value.Call(0xc000180900, 0xc00009c250, 0x13, 0xc0026be708, 0x3, 0x3, 0xc0026be768, 0x405f8b, 0xc001843320)
/Users/mike/.gvm/gos/go1.14.6/src/reflect/value.go:321 +0xb4 fp=0xc003490ea8 sp=0xc003490e28 pc=0x49adb4
net/rpc.(*service).call(0xc00018ca40, 0xc0000a8000, 0xc0000977a8, 0xc0000977e0, 0xc0000a4400, 0xc000189980, 0xbb70e0, 0xc0027017a0, 0x16, 0xba94a0, ...)
/Users/mike/.gvm/gos/go1.14.6/src/net/rpc/server.go:377 +0x17f fp=0xc003490f70 sp=0xc003490ea8 pc=0x781faf
runtime.goexit()
/Users/mike/.gvm/gos/go1.14.6/src/runtime/asm_amd64.s:1373 +0x1 fp=0xc003490f78 sp=0xc003490f70 pc=0x4671c1
created by net/rpc.(*Server).ServeCodec
/Users/mike/.gvm/gos/go1.14.6/src/net/rpc/server.go:474 +0x42b
goroutine 1 [select]:
main.listenAndServe(0xc00057b968, 0x4, 0xc0004d2ec0, 0xc000083c80, 0x101, 0x93a80, 0xc0000968d0, 0x10, 0xc0000968e0, 0x10, ...)
/Users/mike/golang/poizon/duinfr/spider/server/http.go:79 +0x1c2
main.main()
/Users/mike/golang/poizon/duinfr/spider/server/main.go:571 +0x18f6
:",
17,https://api.github.com/repos/tinode/chat/issues/522,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/522/labels{/name},https://api.github.com/repos/tinode/chat/issues/522/comments,https://api.github.com/repos/tinode/chat/issues/522/events,https://github.com/tinode/chat/pull/522,685152402,MDExOlB1bGxSZXF1ZXN0NDcyOTIyODIy,522,Export response code counters.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-25T04:05:15Z,2020-08-25T23:44:52Z,2020-08-25T23:44:51Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/522', 'html_url': 'https://github.com/tinode/chat/pull/522', 'diff_url': 'https://github.com/tinode/chat/pull/522.diff', 'patch_url': 'https://github.com/tinode/chat/pull/522.patch'}",As CtrlCodesTotal?xx variables.,
18,https://api.github.com/repos/tinode/chat/issues/521,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/521/labels{/name},https://api.github.com/repos/tinode/chat/issues/521/comments,https://api.github.com/repos/tinode/chat/issues/521/events,https://github.com/tinode/chat/pull/521,683924843,MDExOlB1bGxSZXF1ZXN0NDcxOTM0NDY0,521,Export histo data to influxdb.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-22T04:24:17Z,2020-08-22T21:04:20Z,2020-08-22T21:04:19Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/521', 'html_url': 'https://github.com/tinode/chat/pull/521', 'diff_url': 'https://github.com/tinode/chat/pull/521.diff', 'patch_url': 'https://github.com/tinode/chat/pull/521.patch'}",,
19,https://api.github.com/repos/tinode/chat/issues/520,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/520/labels{/name},https://api.github.com/repos/tinode/chat/issues/520/comments,https://api.github.com/repos/tinode/chat/issues/520/events,https://github.com/tinode/chat/pull/520,683147627,MDExOlB1bGxSZXF1ZXN0NDcxMjg0NDUw,520,Handle P access mode changes for channel readers,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-20T23:07:58Z,2020-08-21T03:02:51Z,2020-08-21T03:02:51Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/520', 'html_url': 'https://github.com/tinode/chat/pull/520', 'diff_url': 'https://github.com/tinode/chat/pull/520.diff', 'patch_url': 'https://github.com/tinode/chat/pull/520.patch'}",,
20,https://api.github.com/repos/tinode/chat/issues/519,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/519/labels{/name},https://api.github.com/repos/tinode/chat/issues/519/comments,https://api.github.com/repos/tinode/chat/issues/519/events,https://github.com/tinode/chat/issues/519,683013242,MDU6SXNzdWU2ODMwMTMyNDI=,519,[github] Confusing usage of tags,"{'login': 'mar-v-in', 'id': 994036, 'node_id': 'MDQ6VXNlcjk5NDAzNg==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/994036?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mar-v-in', 'html_url': 'https://github.com/mar-v-in', 'followers_url': 'https://api.github.com/users/mar-v-in/followers', 'following_url': 'https://api.github.com/users/mar-v-in/following{/other_user}', 'gists_url': 'https://api.github.com/users/mar-v-in/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mar-v-in/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mar-v-in/subscriptions', 'organizations_url': 'https://api.github.com/users/mar-v-in/orgs', 'repos_url': 'https://api.github.com/users/mar-v-in/repos', 'events_url': 'https://api.github.com/users/mar-v-in/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mar-v-in/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-08-20T18:40:01Z,2020-08-20T21:20:38Z,2020-08-20T20:29:44Z,NONE,,,"In your repository's about section you added the topics ""whatsapp"", ""telegram"" and ""xmpp"", yet the project has nothing to do with any of those, is not compatible with them or anything, except that it's just another chat system. I came here only by accident because I was searching for XMPP related projects, which this project clearly isn't. Please refrain from advertising with unrelated topics.
Thank you.",
21,https://api.github.com/repos/tinode/chat/issues/518,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/518/labels{/name},https://api.github.com/repos/tinode/chat/issues/518/comments,https://api.github.com/repos/tinode/chat/issues/518/events,https://github.com/tinode/chat/pull/518,680570993,MDExOlB1bGxSZXF1ZXN0NDY5MTA1NjE1,518,Subscribing/unsubscribing to FCM topics,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-17T22:51:08Z,2020-08-18T21:07:45Z,2020-08-18T21:07:45Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/518', 'html_url': 'https://github.com/tinode/chat/pull/518', 'diff_url': 'https://github.com/tinode/chat/pull/518.diff', 'patch_url': 'https://github.com/tinode/chat/pull/518.patch'}","Mostly done.
Missing:
1. Subscribe/unsubscribe to FCM topics in response to changes to P permission.
~2. Send push to user's devices when the user subscribes to a channel.~ -- done
3. Allow admins to delete channel subscriptions.
4. Maybe allow admins to add users to channels, but I'm not sure. Could be too spammy.",
22,https://api.github.com/repos/tinode/chat/issues/517,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/517/labels{/name},https://api.github.com/repos/tinode/chat/issues/517/comments,https://api.github.com/repos/tinode/chat/issues/517/events,https://github.com/tinode/chat/pull/517,679366774,MDExOlB1bGxSZXF1ZXN0NDY4MTU0NDgy,517,Support for FCM topic subscriptions,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-08-14T19:44:18Z,2020-08-16T16:16:12Z,2020-08-16T16:16:12Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/517', 'html_url': 'https://github.com/tinode/chat/pull/517', 'diff_url': 'https://github.com/tinode/chat/pull/517.diff', 'patch_url': 'https://github.com/tinode/chat/pull/517.patch'}",,
23,https://api.github.com/repos/tinode/chat/issues/516,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/516/labels{/name},https://api.github.com/repos/tinode/chat/issues/516/comments,https://api.github.com/repos/tinode/chat/issues/516/events,https://github.com/tinode/chat/pull/516,678183513,MDExOlB1bGxSZXF1ZXN0NDY3MTc0MTEy,516,"Export latency, response size and #goroutines to Prometheus.","{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-13T06:17:34Z,2020-08-14T04:22:55Z,2020-08-14T04:22:55Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/516', 'html_url': 'https://github.com/tinode/chat/pull/516', 'diff_url': 'https://github.com/tinode/chat/pull/516.diff', 'patch_url': 'https://github.com/tinode/chat/pull/516.patch'}",Next step: add influxdb support.,
24,https://api.github.com/repos/tinode/chat/issues/515,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/515/labels{/name},https://api.github.com/repos/tinode/chat/issues/515/comments,https://api.github.com/repos/tinode/chat/issues/515/events,https://github.com/tinode/chat/pull/515,676627893,MDExOlB1bGxSZXF1ZXN0NDY1OTA0ODM2,515,Update install guide,"{'login': 'Tiano2019', 'id': 54930118, 'node_id': 'MDQ6VXNlcjU0OTMwMTE4', 'avatar_url': 'https://avatars1.githubusercontent.com/u/54930118?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Tiano2019', 'html_url': 'https://github.com/Tiano2019', 'followers_url': 'https://api.github.com/users/Tiano2019/followers', 'following_url': 'https://api.github.com/users/Tiano2019/following{/other_user}', 'gists_url': 'https://api.github.com/users/Tiano2019/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Tiano2019/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Tiano2019/subscriptions', 'organizations_url': 'https://api.github.com/users/Tiano2019/orgs', 'repos_url': 'https://api.github.com/users/Tiano2019/repos', 'events_url': 'https://api.github.com/users/Tiano2019/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Tiano2019/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-11T06:47:26Z,2020-08-11T20:08:43Z,2020-08-11T20:08:43Z,NONE,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/515', 'html_url': 'https://github.com/tinode/chat/pull/515', 'diff_url': 'https://github.com/tinode/chat/pull/515.diff', 'patch_url': 'https://github.com/tinode/chat/pull/515.patch'}","When running a standalone server, a symlink need to be created for the template directory. ",
25,https://api.github.com/repos/tinode/chat/issues/514,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/514/labels{/name},https://api.github.com/repos/tinode/chat/issues/514/comments,https://api.github.com/repos/tinode/chat/issues/514/events,https://github.com/tinode/chat/issues/514,676104602,MDU6SXNzdWU2NzYxMDQ2MDI=,514,Push message from client problem,"{'login': 'hhy5861', 'id': 8274977, 'node_id': 'MDQ6VXNlcjgyNzQ5Nzc=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/8274977?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/hhy5861', 'html_url': 'https://github.com/hhy5861', 'followers_url': 'https://api.github.com/users/hhy5861/followers', 'following_url': 'https://api.github.com/users/hhy5861/following{/other_user}', 'gists_url': 'https://api.github.com/users/hhy5861/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/hhy5861/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/hhy5861/subscriptions', 'organizations_url': 'https://api.github.com/users/hhy5861/orgs', 'repos_url': 'https://api.github.com/users/hhy5861/repos', 'events_url': 'https://api.github.com/users/hhy5861/events{/privacy}', 'received_events_url': 'https://api.github.com/users/hhy5861/received_events', 'type': 'User', 'site_admin': False}","[{'id': 910591285, 'node_id': 'MDU6TGFiZWw5MTA1OTEyODU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/incomplete', 'name': 'incomplete', 'color': 'ff6633', 'default': False, 'description': ''}]",open,False,,[],,1,2020-08-10T12:39:24Z,2020-08-10T15:43:44Z,,NONE,,,"```
2020/08/10 20:20:26 session SBhwbJVbjsU: 31149 message(s) dropped
2020/08/10 20:20:26 topic[grpJQa2klCLCP8]: connection stuck, detaching
2020/08/10 20:20:26 s.queueOutBytes: send queue is full CwqneYpL5sY
2020/08/10 20:20:26 session CwqneYpL5sY: 22341 message(s) dropped
2020/08/10 20:20:26 topic[grpJQa2klCLCP8]: connection stuck, detaching
2020/08/10 20:20:26 s.queueOutBytes: send queue is full 4I-2QOcFzwI
2020/08/10 20:20:26 session 4I-2QOcFzwI: 34729 message(s) dropped
2020/08/10 20:20:26 topic[grpJQa2klCLCP8]: connection stuck, detaching
2020/08/10 20:20:26 s.queueOutBytes: send queue is full VCxD9_pJoRk
2020/08/10 20:20:26 session VCxD9_pJoRk: 14233 message(s) dropped
2020/08/10 20:20:26 topic[grpJQa2klCLCP8]: connection stuck, detaching
2020/08/10 20:20:26 s.queueOutBytes: send queue is full 3B16vD3HLhA
2020/08/10 20:20:26 session 3B16vD3HLhA: 22479 message(s) dropped
2020/08/10 20:20:26 topic[grpJQa2klCLCP8]: connection stuck, detaching
2020/08/10 20:20:26 s.queueOutBytes: send queue is full XLgAb8fcR4Y
2020/08/10 20:20:26 session XLgAb8fcR4Y: 30241 message(s) dropped
2020/08/10 20:20:26 topic[grpJQa2klCLCP8]: connection stuck, detaching
2020/08/10 20:20:26 s.queueOutBytes: send queue is full bF_W21FUBBE
2020/08/10 20:20:26 session bF_W21FUBBE: 24342 message(s) dropped
2020/08/10 20:20:26 topic[grpJQa2klCLCP8]: connection stuck, detaching
```
version :
v0.16.5",
26,https://api.github.com/repos/tinode/chat/issues/513,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/513/labels{/name},https://api.github.com/repos/tinode/chat/issues/513/comments,https://api.github.com/repos/tinode/chat/issues/513/events,https://github.com/tinode/chat/issues/513,675920287,MDU6SXNzdWU2NzU5MjAyODc=,513,panic on devel branch with grpc instead of other adapters,"{'login': 'AVVS', 'id': 1713617, 'node_id': 'MDQ6VXNlcjE3MTM2MTc=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1713617?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/AVVS', 'html_url': 'https://github.com/AVVS', 'followers_url': 'https://api.github.com/users/AVVS/followers', 'following_url': 'https://api.github.com/users/AVVS/following{/other_user}', 'gists_url': 'https://api.github.com/users/AVVS/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/AVVS/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/AVVS/subscriptions', 'organizations_url': 'https://api.github.com/users/AVVS/orgs', 'repos_url': 'https://api.github.com/users/AVVS/repos', 'events_url': 'https://api.github.com/users/AVVS/events{/privacy}', 'received_events_url': 'https://api.github.com/users/AVVS/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977920, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjA=', 'url': 'https://api.github.com/repos/tinode/chat/labels/bug', 'name': 'bug', 'color': 'fc2929', 'default': True, 'description': None}]",closed,False,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}]",,4,2020-08-10T07:08:40Z,2020-08-11T05:34:41Z,2020-08-11T05:34:41Z,NONE,,,"on devel branch using grpc adapter. with json works fine - probably should add some tests cases :)
panic: interface conversion: interface {} is *pbx.ServerMsg, not []uint8
```
goroutine 56 [running]:
main.(*Session).queueOut(0xc0000cf760, 0xc000256120, 0x0)
/home/runner/sl-tinode/server/session.go:263 +0x38b
main.(*Session).hello(0xc0000cf760, 0xc000259740)
/home/runner/sl-tinode/server/session.go:682 +0x2c5
main.(*Session).dispatch(0xc0000cf760, 0xc000259740)
/home/runner/sl-tinode/server/session.go:450 +0x41f
main.(*grpcNodeServer).MessageLoop(0x1c77598, 0x14dc980, 0xc000347a80, 0x0, 0x0)
/home/runner/sl-tinode/server/hdl_grpc.go:63 +0x3bd
github.com/tinode/chat/pbx._Node_MessageLoop_Handler(0xf27ce0, 0x1c77598, 0x14d87e0, 0xc000b60780, 0x1c77598, 0xc000108800)
/home/runner/sl-tinode/pbx/model.pb.go:3655 +0xad
google.golang.org/grpc.(*Server).processStreamingRPC(0xc00017a000, 0x14dde80, 0xc000226d80, 0xc000108800, 0xc000aee450, 0x1c34c40, 0x0, 0x0, 0x0)
/home/runner/go/pkg/mod/google.golang.org/grpc@v1.28.0/server.go:1329 +0xcdd
google.golang.org/grpc.(*Server).handleStream(0xc00017a000, 0x14dde80, 0xc000226d80, 0xc000108800, 0x0)
/home/runner/go/pkg/mod/google.golang.org/grpc@v1.28.0/server.go:1409 +0xc62
google.golang.org/grpc.(*Server).serveStreams.func1.1(0xc000202820, 0xc00017a000, 0x14dde80, 0xc000226d80, 0xc000108800)
/home/runner/go/pkg/mod/google.golang.org/grpc@v1.28.0/server.go:746 +0xa1
created by google.golang.org/grpc.(*Server).serveStreams.func1
/home/runner/go/pkg/mod/google.golang.org/grpc@v1.28.0/server.go:744 +0xa1
```",
27,https://api.github.com/repos/tinode/chat/issues/512,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/512/labels{/name},https://api.github.com/repos/tinode/chat/issues/512/comments,https://api.github.com/repos/tinode/chat/issues/512/events,https://github.com/tinode/chat/pull/512,675783527,MDExOlB1bGxSZXF1ZXN0NDY1MjEwNzk1,512,Implement token authentication in loadtest.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-09T22:28:31Z,2020-08-09T22:55:21Z,2020-08-09T22:55:16Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/512', 'html_url': 'https://github.com/tinode/chat/pull/512', 'diff_url': 'https://github.com/tinode/chat/pull/512.diff', 'patch_url': 'https://github.com/tinode/chat/pull/512.patch'}","Tokens are saved in the log directory, and thus (a) can be re-used by other sessions and (b) are isolated between the runs.",
28,https://api.github.com/repos/tinode/chat/issues/511,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/511/labels{/name},https://api.github.com/repos/tinode/chat/issues/511/comments,https://api.github.com/repos/tinode/chat/issues/511/events,https://github.com/tinode/chat/pull/511,675573568,MDExOlB1bGxSZXF1ZXN0NDY1MDY0MzQz,511,Support for fcm push topics,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-08T19:08:35Z,2020-08-09T22:29:24Z,2020-08-09T01:59:28Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/511', 'html_url': 'https://github.com/tinode/chat/pull/511', 'diff_url': 'https://github.com/tinode/chat/pull/511.diff', 'patch_url': 'https://github.com/tinode/chat/pull/511.patch'}","Added support for fcm push topics to send channel notifications.
Also a couple of bugs fixed.",
29,https://api.github.com/repos/tinode/chat/issues/510,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/510/labels{/name},https://api.github.com/repos/tinode/chat/issues/510/comments,https://api.github.com/repos/tinode/chat/issues/510/events,https://github.com/tinode/chat/issues/510,673036679,MDU6SXNzdWU2NzMwMzY2Nzk=,510,userData.online incremented multiple times for the same session,"{'login': 'AVVS', 'id': 1713617, 'node_id': 'MDQ6VXNlcjE3MTM2MTc=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1713617?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/AVVS', 'html_url': 'https://github.com/AVVS', 'followers_url': 'https://api.github.com/users/AVVS/followers', 'following_url': 'https://api.github.com/users/AVVS/following{/other_user}', 'gists_url': 'https://api.github.com/users/AVVS/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/AVVS/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/AVVS/subscriptions', 'organizations_url': 'https://api.github.com/users/AVVS/orgs', 'repos_url': 'https://api.github.com/users/AVVS/repos', 'events_url': 'https://api.github.com/users/AVVS/events{/privacy}', 'received_events_url': 'https://api.github.com/users/AVVS/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977920, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjA=', 'url': 'https://api.github.com/repos/tinode/chat/labels/bug', 'name': 'bug', 'color': 'fc2929', 'default': True, 'description': None}]",open,False,,[],,4,2020-08-04T19:41:37Z,2020-08-06T17:28:36Z,,NONE,,,"https://github.com/tinode/chat/blob/master/server/topic.go#L1317
Subj, to reproduce:
1. create new group topic
2. subscribe to group topic with acs wanted=JRWPAS (as an example) - online equals 1
3. perform set.sub request { mode='JRPAS' } - changing wanted - online equals 2
4. perform {leave} - {pres} off wont come as userData.online equals 1
noticed when performing the said flow. to fix it you may want to return bool in terms of whether this is a new or old session from t.addSession and skip incrementing based don this",
30,https://api.github.com/repos/tinode/chat/issues/539,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/539/labels{/name},https://api.github.com/repos/tinode/chat/issues/539/comments,https://api.github.com/repos/tinode/chat/issues/539/events,https://github.com/tinode/chat/pull/539,690814142,MDExOlB1bGxSZXF1ZXN0NDc3NjQ5NDgy,539,Session inflight sub/leave request tracking,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-09-02T08:10:14Z,2020-09-04T00:23:57Z,2020-09-04T00:23:57Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/539', 'html_url': 'https://github.com/tinode/chat/pull/539', 'diff_url': 'https://github.com/tinode/chat/pull/539.diff', 'patch_url': 'https://github.com/tinode/chat/pull/539.patch'}",Should address https://github.com/tinode/chat/issues/535,
31,https://api.github.com/repos/tinode/chat/issues/538,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/538/labels{/name},https://api.github.com/repos/tinode/chat/issues/538/comments,https://api.github.com/repos/tinode/chat/issues/538/events,https://github.com/tinode/chat/pull/538,690514377,MDExOlB1bGxSZXF1ZXN0NDc3MzkwODEy,538,Set correct permissions for invited channel admins,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-09-01T23:28:57Z,2020-09-02T00:40:54Z,2020-09-02T00:40:54Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/538', 'html_url': 'https://github.com/tinode/chat/pull/538', 'diff_url': 'https://github.com/tinode/chat/pull/538.diff', 'patch_url': 'https://github.com/tinode/chat/pull/538.patch'}","This is the fix for
> log in as bob
> open ""Coffee"" group, go to group settings
> add new member eve to the group
> log out
> log in as eve - the group doesn't show up in the list",
32,https://api.github.com/repos/tinode/chat/issues/537,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/537/labels{/name},https://api.github.com/repos/tinode/chat/issues/537/comments,https://api.github.com/repos/tinode/chat/issues/537/events,https://github.com/tinode/chat/pull/537,689236498,MDExOlB1bGxSZXF1ZXN0NDc2MzIyNTkx,537,Update datamodel.go,"{'login': 'yedamao', 'id': 8220938, 'node_id': 'MDQ6VXNlcjgyMjA5Mzg=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/8220938?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/yedamao', 'html_url': 'https://github.com/yedamao', 'followers_url': 'https://api.github.com/users/yedamao/followers', 'following_url': 'https://api.github.com/users/yedamao/following{/other_user}', 'gists_url': 'https://api.github.com/users/yedamao/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/yedamao/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/yedamao/subscriptions', 'organizations_url': 'https://api.github.com/users/yedamao/orgs', 'repos_url': 'https://api.github.com/users/yedamao/repos', 'events_url': 'https://api.github.com/users/yedamao/events{/privacy}', 'received_events_url': 'https://api.github.com/users/yedamao/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-08-31T14:07:35Z,2020-08-31T14:26:07Z,2020-08-31T14:25:59Z,NONE,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/537', 'html_url': 'https://github.com/tinode/chat/pull/537', 'diff_url': 'https://github.com/tinode/chat/pull/537.diff', 'patch_url': 'https://github.com/tinode/chat/pull/537.patch'}",fix typo in comments,
33,https://api.github.com/repos/tinode/chat/issues/536,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/536/labels{/name},https://api.github.com/repos/tinode/chat/issues/536/comments,https://api.github.com/repos/tinode/chat/issues/536/events,https://github.com/tinode/chat/pull/536,688759341,MDExOlB1bGxSZXF1ZXN0NDc1OTQwNTQ0,536,Allow setting custom auth mechanism in mongo db,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-30T17:35:39Z,2020-08-31T00:22:15Z,2020-08-31T00:22:15Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/536', 'html_url': 'https://github.com/tinode/chat/pull/536', 'diff_url': 'https://github.com/tinode/chat/pull/536.diff', 'patch_url': 'https://github.com/tinode/chat/pull/536.patch'}",,
34,https://api.github.com/repos/tinode/chat/issues/535,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/535/labels{/name},https://api.github.com/repos/tinode/chat/issues/535/comments,https://api.github.com/repos/tinode/chat/issues/535/events,https://github.com/tinode/chat/issues/535,688642272,MDU6SXNzdWU2ODg2NDIyNzI=,535,Hold up Session cleanup until all requests completed,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977920, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjA=', 'url': 'https://api.github.com/repos/tinode/chat/labels/bug', 'name': 'bug', 'color': 'fc2929', 'default': True, 'description': None}]",open,False,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}]",,5,2020-08-30T02:58:48Z,2020-08-31T16:56:09Z,,CONTRIBUTOR,,,"Currently, a session quits whenever it receives a shutdown request.
When there are requests from this session in flight when the session is shutting down, these requests will continue to execute and may modify the server state breaking a broad range of invariants leading to memory leaks and other types of unexpected behavior.
Keep track of requests in flight, and make sure they complete before the session proceeds to the cleanup phase.",
35,https://api.github.com/repos/tinode/chat/issues/534,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/534/labels{/name},https://api.github.com/repos/tinode/chat/issues/534/comments,https://api.github.com/repos/tinode/chat/issues/534/events,https://github.com/tinode/chat/issues/534,688462516,MDU6SXNzdWU2ODg0NjI1MTY=,534,A very strange deadlock,"{'login': 'hhy5861', 'id': 8274977, 'node_id': 'MDQ6VXNlcjgyNzQ5Nzc=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/8274977?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/hhy5861', 'html_url': 'https://github.com/hhy5861', 'followers_url': 'https://api.github.com/users/hhy5861/followers', 'following_url': 'https://api.github.com/users/hhy5861/following{/other_user}', 'gists_url': 'https://api.github.com/users/hhy5861/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/hhy5861/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/hhy5861/subscriptions', 'organizations_url': 'https://api.github.com/users/hhy5861/orgs', 'repos_url': 'https://api.github.com/users/hhy5861/repos', 'events_url': 'https://api.github.com/users/hhy5861/events{/privacy}', 'received_events_url': 'https://api.github.com/users/hhy5861/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977920, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjA=', 'url': 'https://api.github.com/repos/tinode/chat/labels/bug', 'name': 'bug', 'color': 'fc2929', 'default': True, 'description': None}]",open,False,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}]",,6,2020-08-29T05:15:32Z,2020-08-31T04:10:41Z,,NONE,,,"tinode version: 0.16.6
1. A large number of users subscribe to me will cause a deadlock. There is no response to the ctrl event.
2. The case has not been found yet.
3. This phenomenon can be reproduced by pressure test. Stand-alone also appeared.",
36,https://api.github.com/repos/tinode/chat/issues/533,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/533/labels{/name},https://api.github.com/repos/tinode/chat/issues/533/comments,https://api.github.com/repos/tinode/chat/issues/533/events,https://github.com/tinode/chat/pull/533,688438187,MDExOlB1bGxSZXF1ZXN0NDc1NzA0NjMx,533,Always kill proxy topic when it has no more sessions.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-08-29T02:10:43Z,2020-08-29T03:04:50Z,2020-08-29T03:04:50Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/533', 'html_url': 'https://github.com/tinode/chat/pull/533', 'diff_url': 'https://github.com/tinode/chat/pull/533.diff', 'patch_url': 'https://github.com/tinode/chat/pull/533.patch'}",It should help https://github.com/tinode/chat/issues/529,
37,https://api.github.com/repos/tinode/chat/issues/532,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/532/labels{/name},https://api.github.com/repos/tinode/chat/issues/532/comments,https://api.github.com/repos/tinode/chat/issues/532/events,https://github.com/tinode/chat/issues/532,687710792,MDU6SXNzdWU2ODc3MTA3OTI=,532,How about the performance of tinode? Will we do some benchmarking,"{'login': 'warfrogsdf', 'id': 2961265, 'node_id': 'MDQ6VXNlcjI5NjEyNjU=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/2961265?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/warfrogsdf', 'html_url': 'https://github.com/warfrogsdf', 'followers_url': 'https://api.github.com/users/warfrogsdf/followers', 'following_url': 'https://api.github.com/users/warfrogsdf/following{/other_user}', 'gists_url': 'https://api.github.com/users/warfrogsdf/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/warfrogsdf/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/warfrogsdf/subscriptions', 'organizations_url': 'https://api.github.com/users/warfrogsdf/orgs', 'repos_url': 'https://api.github.com/users/warfrogsdf/repos', 'events_url': 'https://api.github.com/users/warfrogsdf/events{/privacy}', 'received_events_url': 'https://api.github.com/users/warfrogsdf/received_events', 'type': 'User', 'site_admin': False}","[{'id': 811090999, 'node_id': 'MDU6TGFiZWw4MTEwOTA5OTk=', 'url': 'https://api.github.com/repos/tinode/chat/labels/feature%20request', 'name': 'feature request', 'color': 'edcf8b', 'default': False, 'description': None}]",open,False,,[],,3,2020-08-28T04:52:38Z,2020-08-28T11:09:19Z,,NONE,,,"
",
38,https://api.github.com/repos/tinode/chat/issues/531,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/531/labels{/name},https://api.github.com/repos/tinode/chat/issues/531/comments,https://api.github.com/repos/tinode/chat/issues/531/events,https://github.com/tinode/chat/pull/531,687594009,MDExOlB1bGxSZXF1ZXN0NDc0OTkzMzYy,531,"Added channel to demo data, small bug fix.","{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-08-27T22:56:57Z,2020-08-28T02:58:31Z,2020-08-28T02:58:31Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/531', 'html_url': 'https://github.com/tinode/chat/pull/531', 'diff_url': 'https://github.com/tinode/chat/pull/531.diff', 'patch_url': 'https://github.com/tinode/chat/pull/531.patch'}",,
39,https://api.github.com/repos/tinode/chat/issues/530,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/530/labels{/name},https://api.github.com/repos/tinode/chat/issues/530/comments,https://api.github.com/repos/tinode/chat/issues/530/events,https://github.com/tinode/chat/pull/530,686996053,MDExOlB1bGxSZXF1ZXN0NDc0NDk0NzM4,530,Break Session.writeLoop() in session cleanup.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-27T06:59:32Z,2020-08-27T20:20:52Z,2020-08-27T20:20:52Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/530', 'html_url': 'https://github.com/tinode/chat/pull/530', 'diff_url': 'https://github.com/tinode/chat/pull/530.diff', 'patch_url': 'https://github.com/tinode/chat/pull/530.patch'}",Write loop continues to run after its host session quits. Fix it.,
40,https://api.github.com/repos/tinode/chat/issues/529,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/529/labels{/name},https://api.github.com/repos/tinode/chat/issues/529/comments,https://api.github.com/repos/tinode/chat/issues/529/events,https://github.com/tinode/chat/issues/529,686945488,MDU6SXNzdWU2ODY5NDU0ODg=,529,too many goruntines cause very high memory usage.,"{'login': 'hhy5861', 'id': 8274977, 'node_id': 'MDQ6VXNlcjgyNzQ5Nzc=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/8274977?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/hhy5861', 'html_url': 'https://github.com/hhy5861', 'followers_url': 'https://api.github.com/users/hhy5861/followers', 'following_url': 'https://api.github.com/users/hhy5861/following{/other_user}', 'gists_url': 'https://api.github.com/users/hhy5861/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/hhy5861/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/hhy5861/subscriptions', 'organizations_url': 'https://api.github.com/users/hhy5861/orgs', 'repos_url': 'https://api.github.com/users/hhy5861/repos', 'events_url': 'https://api.github.com/users/hhy5861/events{/privacy}', 'received_events_url': 'https://api.github.com/users/hhy5861/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977920, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjA=', 'url': 'https://api.github.com/repos/tinode/chat/labels/bug', 'name': 'bug', 'color': 'fc2929', 'default': True, 'description': None}]",closed,False,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}]",,5,2020-08-27T05:14:58Z,2020-08-29T03:06:41Z,2020-08-29T03:06:41Z,NONE,,,"```
goroutine profile: total 920756
626254 @ 0x437070 0x447363 0xb3570f 0x4671c1
# 0xb3570e main.(*Session).clusterWriteLoop+0x14e /Users/mike/golang/poizon/duinfr/spider/server/cluster.go:1013
278952 @ 0x437070 0x447363 0xb77212 0xb65cdb 0x4671c1
# 0xb77211 main.(*Topic).runProxy+0x251 /Users/mike/golang/poizon/duinfr/spider/server/topic_proxy.go:22
# 0xb65cda main.(*Topic).run+0x3a /Users/mike/golang/poizon/duinfr/spider/server/topic.go:169
9478 @ 0x437070 0x447363 0xb664cd 0xb65cf8 0x4671c1
# 0xb664cc main.(*Topic).runLocal+0x2bc /Users/mike/golang/poizon/duinfr/spider/server/topic.go:219
# 0xb65cf7 main.(*Topic).run+0x57 /Users/mike/golang/poizon/duinfr/spider/server/topic.go:167
3289 @ 0x437070 0x447363 0xb3b952 0x4671c1
# 0xb3b951 main.(*Session).writeLoop+0x1c1 /Users/mike/golang/poizon/duinfr/spider/server/hdl_websock.go:76
2678 @ 0x437070 0x43002a 0x42f595 0x4dcfe5 0x4dde7b 0x4dde5d 0x56d7bf 0x57ff3e 0x6500d0 0x47ee31 0x65031c 0x64e8d5 0x6529fb 0x652a06 0x4fe443 0x4fe5af 0x8d2d30 0x8d528c 0x8d631f 0x8d6a9f 0xb3b5ec 0x4671c1
# 0x42f594 internal/poll.runtime_pollWait+0x54 /Users/mike/.gvm/gos/go1.14.6/src/runtime/netpoll.go:203
# 0x4dcfe4 internal/poll.(*pollDesc).wait+0x44 /Users/mike/.gvm/gos/go1.14.6/src/internal/poll/fd_poll_runtime.go:87
# 0x4dde7a internal/poll.(*pollDesc).waitRead+0x19a /Users/mike/.gvm/gos/go1.14.6/src/internal/poll/fd_poll_runtime.go:92
# 0x4dde5c internal/poll.(*FD).Read+0x17c /Users/mike/.gvm/gos/go1.14.6/src/internal/poll/fd_unix.go:169
# 0x56d7be net.(*netFD).Read+0x4e /Users/mike/.gvm/gos/go1.14.6/src/net/fd_unix.go:202
# 0x57ff3d net.(*conn).Read+0x8d /Users/mike/.gvm/gos/go1.14.6/src/net/net.go:184
# 0x6500cf crypto/tls.(*atLeastReader).Read+0x5f /Users/mike/.gvm/gos/go1.14.6/src/crypto/tls/conn.go:760
# 0x47ee30 bytes.(*Buffer).ReadFrom+0xb0 /Users/mike/.gvm/gos/go1.14.6/src/bytes/buffer.go:204
# 0x65031b crypto/tls.(*Conn).readFromUntil+0xeb /Users/mike/.gvm/gos/go1.14.6/src/crypto/tls/conn.go:782
# 0x64e8d4 crypto/tls.(*Conn).readRecordOrCCS+0x114 /Users/mike/.gvm/gos/go1.14.6/src/crypto/tls/conn.go:589
# 0x6529fa crypto/tls.(*Conn).readRecord+0x15a /Users/mike/.gvm/gos/go1.14.6/src/crypto/tls/conn.go:557
# 0x652a05 crypto/tls.(*Conn).Read+0x165 /Users/mike/.gvm/gos/go1.14.6/src/crypto/tls/conn.go:1233
# 0x4fe442 bufio.(*Reader).fill+0x102 /Users/mike/.gvm/gos/go1.14.6/src/bufio/bufio.go:100
# 0x4fe5ae bufio.(*Reader).Peek+0x4e /Users/mike/.gvm/gos/go1.14.6/src/bufio/bufio.go:138
# 0x8d2d2f github.com/gorilla/websocket.(*Conn).read+0x3f /Users/mike/.gvm/pkgsets/go1.14.6/global/pkg/mod/github.com/gorilla/websocket@v1.4.2/conn.go:370
# 0x8d528b github.com/gorilla/websocket.(*Conn).advanceFrame+0x5b /Users/mike/.gvm/pkgsets/go1.14.6/global/pkg/mod/github.com/gorilla/websocket@v1.4.2/conn.go:798
# 0x8d631e github.com/gorilla/websocket.(*Conn).NextReader+0x8e /Users/mike/.gvm/pkgsets/go1.14.6/global/pkg/mod/github.com/gorilla/websocket@v1.4.2/conn.go:980
# 0x8d6a9e github.com/gorilla/websocket.(*Conn).ReadMessage+0x2e /Users/mike/.gvm/pkgsets/go1.14.6/global/pkg/mod/github.com/gorilla/websocket@v1.4.2/conn.go:1064
# 0xb3b5eb main.(*Session).readLoop+0x14b /Users/mike/golang/poizon/duinfr/spider/server/hdl_websock.go:54
19 @ 0x437070 0x43002a 0x42f595 0x4dcfe5 0x4dde7b 0x4dde5d 0x56d7bf 0x57ff3e 0x4feaff 0x4754d7 0x506b8f 0x506b42 0x5111e7 0x51173c 0x511a4b 0x5118cd 0x781495 0x780765 0x4671c1
# 0x42f594 internal/poll.runtime_pollWait+0x54 /Users/mike/.gvm/gos/go1.14.6/src/runtime/netpoll.go:203
# 0x4dcfe4 internal/poll.(*pollDesc).wait+0x44 /Users/mike/.gvm/gos/go1.14.6/src/internal/poll/fd_poll_runtime.go:87
# 0x4dde7a internal/poll.(*pollDesc).waitRead+0x19a /Users/mike/.gvm/gos/go1.14.6/src/internal/poll/fd_poll_runtime.go:92
# 0x4dde5c internal/poll.(*FD).Read+0x17c /Users/mike/.gvm/gos/go1.14.6/src/internal/poll/fd_unix.go:169
# 0x56d7be net.(*netFD).Read+0x4e /Users/mike/.gvm/gos/go1.14.6/src/net/fd_unix.go:202
# 0x57ff3d net.(*conn).Read+0x8d /Users/mike/.gvm/gos/go1.14.6/src/net/net.go:184
# 0x4feafe bufio.(*Reader).Read+0x24e /Users/mike/.gvm/gos/go1.14.6/src/bufio/bufio.go:226
# 0x4754d6 io.ReadAtLeast+0x86 /Users/mike/.gvm/gos/go1.14.6/src/io/io.go:310
# 0x506b8e io.ReadFull+0x6e /Users/mike/.gvm/gos/go1.14.6/src/io/io.go:329
# 0x506b41 encoding/gob.decodeUintReader+0x21 /Users/mike/.gvm/gos/go1.14.6/src/encoding/gob/decode.go:120
# 0x5111e6 encoding/gob.(*Decoder).recvMessage+0x56 /Users/mike/.gvm/gos/go1.14.6/src/encoding/gob/decoder.go:81
# 0x51173b encoding/gob.(*Decoder).decodeTypeSequence+0x10b /Users/mike/.gvm/gos/go1.14.6/src/encoding/gob/decoder.go:143
# 0x511a4a encoding/gob.(*Decoder).DecodeValue+0xda /Users/mike/.gvm/gos/go1.14.6/src/encoding/gob/decoder.go:211
# 0x5118cc encoding/gob.(*Decoder).Decode+0x16c /Users/mike/.gvm/gos/go1.14.6/src/encoding/gob/decoder.go:188
# 0x781494 net/rpc.(*gobClientCodec).ReadResponseHeader+0x44 /Users/mike/.gvm/gos/go1.14.6/src/net/rpc/client.go:228
# 0x780764 net/rpc.(*Client).input+0xa4 /Users/mike/.gvm/gos/go1.14.6/src/net/rpc/client.go:109
19 @ 0x437070 0x43002a 0x42f595 0x4dcfe5 0x4dde7b 0x4dde5d 0x56d7bf 0x57ff3e 0x4feaff 0x4754d7 0x506b8f 0x506b42 0x5111e7 0x51173c 0x511a4b 0x5118cd 0x783aa5 0x7852c7 0x784bca 0x784167 0x783fb9 0x4671c1
# 0x42f594 internal/poll.runtime_pollWait+0x54 /Users/mike/.gvm/gos/go1.14.6/src/runtime/netpoll.go:203
# 0x4dcfe4 internal/poll.(*pollDesc).wait+0x44 /Users/mike/.gvm/gos/go1.14.6/src/internal/poll/fd_poll_runtime.go:87
# 0x4dde7a internal/poll.(*pollDesc).waitRead+0x19a /Users/mike/.gvm/gos/go1.14.6/src/internal/poll/fd_poll_runtime.go:92
# 0x4dde5c internal/poll.(*FD).Read+0x17c /Users/mike/.gvm/gos/go1.14.6/src/internal/poll/fd_unix.go:169
# 0x56d7be net.(*netFD).Read+0x4e /Users/mike/.gvm/gos/go1.14.6/src/net/fd_unix.go:202
# 0x57ff3d net.(*conn).Read+0x8d /Users/mike/.gvm/gos/go1.14.6/src/net/net.go:184
# 0x4feafe bufio.(*Reader).Read+0x24e /Users/mike/.gvm/gos/go1.14.6/src/bufio/bufio.go:226
# 0x4754d6 io.ReadAtLeast+0x86 /Users/mike/.gvm/gos/go1.14.6/src/io/io.go:310
# 0x506b8e io.ReadFull+0x6e /Users/mike/.gvm/gos/go1.14.6/src/io/io.go:329
# 0x506b41 encoding/gob.decodeUintReader+0x21 /Users/mike/.gvm/gos/go1.14.6/src/encoding/gob/decode.go:120
# 0x5111e6 encoding/gob.(*Decoder).recvMessage+0x56 /Users/mike/.gvm/gos/go1.14.6/src/encoding/gob/decoder.go:81
# 0x51173b encoding/gob.(*Decoder).decodeTypeSequence+0x10b /Users/mike/.gvm/gos/go1.14.6/src/encoding/gob/decoder.go:143
# 0x511a4a encoding/gob.(*Decoder).DecodeValue+0xda /Users/mike/.gvm/gos/go1.14.6/src/encoding/gob/decoder.go:211
# 0x5118cc encoding/gob.(*Decoder).Decode+0x16c /Users/mike/.gvm/gos/go1.14.6/src/encoding/gob/decoder.go:188
# 0x783aa4 net/rpc.(*gobServerCodec).ReadRequestHeader+0x44 /Users/mike/.gvm/gos/go1.14.6/src/net/rpc/server.go:397
# 0x7852c6 net/rpc.(*Server).readRequestHeader+0x66 /Users/mike/.gvm/gos/go1.14.6/src/net/rpc/server.go:583
# 0x784bc9 net/rpc.(*Server).readRequest+0x59 /Users/mike/.gvm/gos/go1.14.6/src/net/rpc/server.go:543
# 0x784166 net/rpc.(*Server).ServeCodec+0x96 /Users/mike/.gvm/gos/go1.14.6/src/net/rpc/server.go:458
# 0x783fb8 net/rpc.(*Server).ServeConn+0x158 /Users/mike/.gvm/gos/go1.14.6/src/net/rpc/server.go:449
15 @ 0x437070 0x43002a 0x42f595 0x4dcfe5 0x4dde7b 0x4dde5d 0x56d7bf 0x57ff3e 0x6500d0 0x47ee31 0x65031c 0x64e8d5 0x6511fd 0x651208 0x66a4da 0x6684af 0x668061 0x653151 0x70ec5d 0x4671c1
# 0x42f594 internal/poll.runtime_pollWait+0x54 /Users/mike/.gvm/gos/go1.14.6/src/runtime/netpoll.go:203
# 0x4dcfe4 internal/poll.(*pollDesc).wait+0x44 /Users/mike/.gvm/gos/go1.14.6/src/internal/poll/fd_poll_runtime.go:87
# 0x4dde7a internal/poll.(*pollDesc).waitRead+0x19a /Users/mike/.gvm/gos/go1.14.6/src/internal/poll/fd_poll_runtime.go:92
# 0x4dde5c internal/poll.(*FD).Read+0x17c /Users/mike/.gvm/gos/go1.14.6/src/internal/poll/fd_unix.go:169
# 0x56d7be net.(*netFD).Read+0x4e /Users/mike/.gvm/gos/go1.14.6/src/net/fd_unix.go:202
# 0x57ff3d net.(*conn).Read+0x8d /Users/mike/.gvm/gos/go1.14.6/src/net/net.go:184
# 0x6500cf crypto/tls.(*atLeastReader).Read+0x5f /Users/mike/.gvm/gos/go1.14.6/src/crypto/tls/conn.go:760
# 0x47ee30 bytes.(*Buffer).ReadFrom+0xb0 /Users/mike/.gvm/gos/go1.14.6/src/bytes/buffer.go:204
# 0x65031b crypto/tls.(*Conn).readFromUntil+0xeb /Users/mike/.gvm/gos/go1.14.6/src/crypto/tls/conn.go:782
# 0x64e8d4 crypto/tls.(*Conn).readRecordOrCCS+0x114 /Users/mike/.gvm/gos/go1.14.6/src/crypto/tls/conn.go:589
# 0x6511fc crypto/tls.(*Conn).readRecord+0x6c /Users/mike/.gvm/gos/go1.14.6/src/crypto/tls/conn.go:557
# 0x651207 crypto/tls.(*Conn).readHandshake+0x77 /Users/mike/.gvm/gos/go1.14.6/src/crypto/tls/conn.go:973
# 0x66a4d9 crypto/tls.(*serverHandshakeState).doFullHandshake+0x4e9 /Users/mike/.gvm/gos/go1.14.6/src/crypto/tls/handshake_server.go:524
# 0x6684ae crypto/tls.(*serverHandshakeState).handshake+0x31e /Users/mike/.gvm/gos/go1.14.6/src/crypto/tls/handshake_server.go:105
# 0x668060 crypto/tls.(*Conn).serverHandshake+0x100 /Users/mike/.gvm/gos/go1.14.6/src/crypto/tls/handshake_server.go:60
# 0x653150 crypto/tls.(*Conn).Handshake+0x1e0 /Users/mike/.gvm/gos/go1.14.6/src/crypto/tls/conn.go:1342
# 0x70ec5c net/http.(*conn).serve+0x19c /Users/mike/.gvm/gos/go1.14.6/src/net/http/server.go:1816
```
tinode version 0.16.6
The current number of cluster nodes is 20",
41,https://api.github.com/repos/tinode/chat/issues/528,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/528/labels{/name},https://api.github.com/repos/tinode/chat/issues/528/comments,https://api.github.com/repos/tinode/chat/issues/528/events,https://github.com/tinode/chat/pull/528,686605783,MDExOlB1bGxSZXF1ZXN0NDc0MTQ0MzUw,528,Channel,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-26T20:47:01Z,2020-08-26T20:47:39Z,2020-08-26T20:47:10Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/528', 'html_url': 'https://github.com/tinode/chat/pull/528', 'diff_url': 'https://github.com/tinode/chat/pull/528.diff', 'patch_url': 'https://github.com/tinode/chat/pull/528.patch'}",,
42,https://api.github.com/repos/tinode/chat/issues/527,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/527/labels{/name},https://api.github.com/repos/tinode/chat/issues/527/comments,https://api.github.com/repos/tinode/chat/issues/527/events,https://github.com/tinode/chat/pull/527,686040484,MDExOlB1bGxSZXF1ZXN0NDczNjc0NzM5,527,Fail subscribe requests when the Hub's join queue is full.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-26T06:15:14Z,2020-08-27T06:54:40Z,2020-08-27T06:54:40Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/527', 'html_url': 'https://github.com/tinode/chat/pull/527', 'diff_url': 'https://github.com/tinode/chat/pull/527.diff', 'patch_url': 'https://github.com/tinode/chat/pull/527.patch'}","Handle subscribe responses in tsung.xml in such cases.
Also, gofmt on session.go.",
43,https://api.github.com/repos/tinode/chat/issues/526,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/526/labels{/name},https://api.github.com/repos/tinode/chat/issues/526/comments,https://api.github.com/repos/tinode/chat/issues/526/events,https://github.com/tinode/chat/pull/526,685923249,MDExOlB1bGxSZXF1ZXN0NDczNTc4NjU5,526,Fixed channel permissions and disabled deleting messages in channels.,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-26T00:46:44Z,2020-08-26T20:45:57Z,2020-08-26T20:45:57Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/526', 'html_url': 'https://github.com/tinode/chat/pull/526', 'diff_url': 'https://github.com/tinode/chat/pull/526.diff', 'patch_url': 'https://github.com/tinode/chat/pull/526.patch'}","This is probably the last PR next -> channel. I'll merge channel into devel afterwards.
Things look functional with no obvious bugs. Channels can be tested with webapp from 'next'. ",
44,https://api.github.com/repos/tinode/chat/issues/525,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/525/labels{/name},https://api.github.com/repos/tinode/chat/issues/525/comments,https://api.github.com/repos/tinode/chat/issues/525/events,https://github.com/tinode/chat/pull/525,685812964,MDExOlB1bGxSZXF1ZXN0NDczNDgyOTQx,525,fix for #524,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-25T20:58:15Z,2020-08-26T20:47:28Z,2020-08-25T23:56:56Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/525', 'html_url': 'https://github.com/tinode/chat/pull/525', 'diff_url': 'https://github.com/tinode/chat/pull/525.diff', 'patch_url': 'https://github.com/tinode/chat/pull/525.patch'}","I think this should work, another lock is not needed. What do you think?",
45,https://api.github.com/repos/tinode/chat/issues/524,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/524/labels{/name},https://api.github.com/repos/tinode/chat/issues/524/comments,https://api.github.com/repos/tinode/chat/issues/524/events,https://github.com/tinode/chat/issues/524,685551936,MDU6SXNzdWU2ODU1NTE5MzY=,524,cluster thread safety,"{'login': 'hhy5861', 'id': 8274977, 'node_id': 'MDQ6VXNlcjgyNzQ5Nzc=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/8274977?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/hhy5861', 'html_url': 'https://github.com/hhy5861', 'followers_url': 'https://api.github.com/users/hhy5861/followers', 'following_url': 'https://api.github.com/users/hhy5861/following{/other_user}', 'gists_url': 'https://api.github.com/users/hhy5861/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/hhy5861/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/hhy5861/subscriptions', 'organizations_url': 'https://api.github.com/users/hhy5861/orgs', 'repos_url': 'https://api.github.com/users/hhy5861/repos', 'events_url': 'https://api.github.com/users/hhy5861/events{/privacy}', 'received_events_url': 'https://api.github.com/users/hhy5861/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977920, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjA=', 'url': 'https://api.github.com/repos/tinode/chat/labels/bug', 'name': 'bug', 'color': 'fc2929', 'default': True, 'description': None}]",open,False,,[],,1,2020-08-25T14:48:44Z,2020-08-25T23:57:14Z,,NONE,,,"2020/08/25 22:39:59 in: '{""hi"":{""id"":""110283"",""lang"":""zh_CN"",""ua"":""dewuApp\\4.52.0 (Android 4.14.116; zh_CN_#Hans); dewuApp/4.52.0"",""ver"":""0.16""}}' sid='aF1xOAB_tlw' uid=''
fatal error: concurrent map writes2020/08/25 22:39:59 cluster: multiplexing session started usrdjMgjtkej-s-node-02 1274
goroutine 7886 [running]:
runtime.throw(0xd6bae1, 0x15)
/Users/mike/.gvm/gos/go1.14.6/src/runtime/panic.go:1116 +0x72 fp=0xc003490a10 sp=0xc0034909e0 pc=0x434642
runtime.mapassign_faststr(0xc32940, 0xc00037c3c0, 0xc002541470, 0x21, 0x21)
/Users/mike/.gvm/gos/go1.14.6/src/runtime/map_faststr.go:211 +0x3f7 fp=0xc003490a78 sp=0xc003490a10 pc=0x413497
main.(*Cluster).TopicMaster(0xc00019e1e0, 0xc0027017a0, 0xc0006edc88, 0x0, 0x0)
/Users/mike/golang/poizon/duinfr/spider/server/cluster.go:399 +0xccb fp=0xc003490bc0 sp=0xc003490a78 pc=0xaf9cbb
runtime.call64(0xc0002fc840, 0xc00009c250, 0xc000a0fd40, 0x1800000028)
/Users/mike/.gvm/gos/go1.14.6/src/runtime/asm_amd64.s:540 +0x3b fp=0xc003490c10 sp=0xc003490bc0 pc=0x46566b
reflect.Value.call(0xc000180900, 0xc00009c250, 0x13, 0xd5cfe8, 0x4, 0xc003490f08, 0x3, 0x3, 0x0, 0x0, ...)
/Users/mike/.gvm/gos/go1.14.6/src/reflect/value.go:460 +0x8ab fp=0xc003490e28 sp=0xc003490c10 pc=0x49b8ab
reflect.Value.Call(0xc000180900, 0xc00009c250, 0x13, 0xc0026be708, 0x3, 0x3, 0xc0026be768, 0x405f8b, 0xc001843320)
/Users/mike/.gvm/gos/go1.14.6/src/reflect/value.go:321 +0xb4 fp=0xc003490ea8 sp=0xc003490e28 pc=0x49adb4
net/rpc.(*service).call(0xc00018ca40, 0xc0000a8000, 0xc0000977a8, 0xc0000977e0, 0xc0000a4400, 0xc000189980, 0xbb70e0, 0xc0027017a0, 0x16, 0xba94a0, ...)
/Users/mike/.gvm/gos/go1.14.6/src/net/rpc/server.go:377 +0x17f fp=0xc003490f70 sp=0xc003490ea8 pc=0x781faf
runtime.goexit()
/Users/mike/.gvm/gos/go1.14.6/src/runtime/asm_amd64.s:1373 +0x1 fp=0xc003490f78 sp=0xc003490f70 pc=0x4671c1
created by net/rpc.(*Server).ServeCodec
/Users/mike/.gvm/gos/go1.14.6/src/net/rpc/server.go:474 +0x42b
goroutine 1 [select]:
main.listenAndServe(0xc00057b968, 0x4, 0xc0004d2ec0, 0xc000083c80, 0x101, 0x93a80, 0xc0000968d0, 0x10, 0xc0000968e0, 0x10, ...)
/Users/mike/golang/poizon/duinfr/spider/server/http.go:79 +0x1c2
main.main()
/Users/mike/golang/poizon/duinfr/spider/server/main.go:571 +0x18f6
goroutine 33 [select]:
go.opencensus.io/stats/view.(*worker).start(0xc00019e2d0)
/Users/mike/.gvm/pkgsets/go1.14.6/global/pkg/mod/go.opencensus.io@v0.21.0/stats/view/worker.go:154 +0x100
created by go.opencensus.io/stats/view.init.0
/Users/mike/.gvm/pkgsets/go1.14.6/global/pkg/mod/go.opencensus.io@v0.21.0/stats/view/worker.go:32 +0x57
goroutine 19 [chan receive]:
main.statsUpdater()
/Users/mike/golang/poizon/duinfr/spider/server/stats.go:78 +0x50
created by main.statsInit
/Users/mike/golang/poizon/duinfr/spider/server/stats.go:38 +0x156
goroutine 20 [select]:
database/sql.(*DB).connectionOpener(0xc0000fc180, 0xfe10a0, 0xc0004d3200)
/Users/mike/.gvm/gos/go1.14.6/src/database/sql/sql.go:1071 +0xe8
created by database/sql.OpenDB
/Users/mike/.gvm/gos/go1.14.6/src/database/sql/sql.go:742 +0x12a
goroutine 418 [select]:
main.(*Session).writeLoop(0xc000916160)
/Users/mike/golang/poizon/duinfr/spider/server/hdl_websock.go:75 +0x1c2
created by main.serveWebSocket
/Users/mike/golang/poizon/duinfr/spider/server/hdl_websock.go:180 +0x663
goroutine 85 [select]:
google.golang.org/grpc/internal/transport.(*controlBuffer).get(0xc000074500, 0x1, 0x0, 0x0, 0x0, 0x0)
/Users/mike/.gvm/pkgsets/go1.14.6/global/pkg/mod/google.golang.org/grpc@v1.28.0/internal/transport/controlbuf.go:395 +0x122
google.golang.org/grpc/internal/transport.(*loopyWriter).run(0xc00058b560, 0x0, 0x0)
/Users/mike/.gvm/pkgsets/go1.14.6/global/pkg/mod/google.golang.org/grpc@v1.28.0/internal/transport/controlbuf.go:513 +0x1cd
google.golang.org/grpc/internal/transport.newHTTP2Client.func3(0xc000126700)
/Users/mike/.gvm/pkgsets/go1.14.6/global/pkg/mod/google.golang.org/grpc@v1.28.0/internal/transport/http2_client.go:346 +0x7b
created by google.golang.org/grpc/internal/transport.newHTTP2Client
/Users/mike/.gvm/pkgsets/go1.14.6/global/pkg/mod/google.golang.org/grpc@v1.28.0/internal/transport/http2_client.go:344 +0xedb
goroutine 10 [select]:
google.golang.org/grpc.(*ccBalancerWrapper).watcher(0xc00018c240)
/Users/mike/.gvm/pkgsets/go1.14.6/global/pkg/mod/google.golang.org/grpc@v1.28.0/balancer_conn_wrappers.go:69 +0xc2
created by google.golang.org/grpc.newCCBalancerWrapper
/Users/mike/.gvm/pkgsets/go1.14.6/global/pkg/mod/google.golang.org/grpc@v1.28.0/balancer_conn_wrappers.go:60 +0x16d
goroutine 11 [chan receive]:
google.golang.org/grpc.(*addrConn).resetTransport(0xc0000ac2c0)
/Users/mike/.gvm/pkgsets/go1.14.6/global/pkg/mod/google.golang.org/grpc@v1.28.0/clientconn.go:1155 +0x6ea
created by google.golang.org/grpc.(*addrConn).connect
/Users/mike/.gvm/pkgsets/go1.14.6/global/pkg/mod/google.golang.org/grpc@v1.28.0/clientconn.go:798 +0x128
goroutine 12 [select]:
google.golang.org/grpc.(*ccBalancerWrapper).watcher(0xc00018c980)
/Users/mike/.gvm/pkgsets/go1.14.6/global/pkg/mod/google.golang.org/grpc@v1.28.0/balancer_conn_wrappers.go:69 +0xc2
created by google.golang.org/grpc.newCCBalancerWrapper
/Users/mike/.gvm/pkgsets/go1.14.6/global/pkg/mod/google.golang.org/grpc@v1.28.0/balancer_conn_wrappers.go:60 +0x16d
tinode version:
0.16.6",
46,https://api.github.com/repos/tinode/chat/issues/523,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/523/labels{/name},https://api.github.com/repos/tinode/chat/issues/523/comments,https://api.github.com/repos/tinode/chat/issues/523/events,https://github.com/tinode/chat/issues/523,685551466,MDU6SXNzdWU2ODU1NTE0NjY=,523,cluster thread safety,"{'login': 'hhy5861', 'id': 8274977, 'node_id': 'MDQ6VXNlcjgyNzQ5Nzc=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/8274977?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/hhy5861', 'html_url': 'https://github.com/hhy5861', 'followers_url': 'https://api.github.com/users/hhy5861/followers', 'following_url': 'https://api.github.com/users/hhy5861/following{/other_user}', 'gists_url': 'https://api.github.com/users/hhy5861/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/hhy5861/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/hhy5861/subscriptions', 'organizations_url': 'https://api.github.com/users/hhy5861/orgs', 'repos_url': 'https://api.github.com/users/hhy5861/repos', 'events_url': 'https://api.github.com/users/hhy5861/events{/privacy}', 'received_events_url': 'https://api.github.com/users/hhy5861/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977920, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjA=', 'url': 'https://api.github.com/repos/tinode/chat/labels/bug', 'name': 'bug', 'color': 'fc2929', 'default': True, 'description': None}]",closed,False,,[],,0,2020-08-25T14:48:11Z,2020-08-25T14:49:47Z,2020-08-25T14:49:47Z,NONE,,,"2020/08/25 22:39:59 in: '{""hi"":{""id"":""110283"",""lang"":""zh_CN"",""ua"":""dewuApp\\4.52.0 (Android 4.14.116; zh_CN_#Hans); dewuApp/4.52.0"",""ver"":""0.16""}}' sid='aF1xOAB_tlw' uid=''
fatal error: concurrent map writes2020/08/25 22:39:59 cluster: multiplexing session started usrdjMgjtkej-s-node-02 1274
goroutine 7886 [running]:
runtime.throw(0xd6bae1, 0x15)
/Users/mike/.gvm/gos/go1.14.6/src/runtime/panic.go:1116 +0x72 fp=0xc003490a10 sp=0xc0034909e0 pc=0x434642
runtime.mapassign_faststr(0xc32940, 0xc00037c3c0, 0xc002541470, 0x21, 0x21)
/Users/mike/.gvm/gos/go1.14.6/src/runtime/map_faststr.go:211 +0x3f7 fp=0xc003490a78 sp=0xc003490a10 pc=0x413497
main.(*Cluster).TopicMaster(0xc00019e1e0, 0xc0027017a0, 0xc0006edc88, 0x0, 0x0)
/Users/mike/golang/poizon/duinfr/spider/server/cluster.go:399 +0xccb fp=0xc003490bc0 sp=0xc003490a78 pc=0xaf9cbb
runtime.call64(0xc0002fc840, 0xc00009c250, 0xc000a0fd40, 0x1800000028)
/Users/mike/.gvm/gos/go1.14.6/src/runtime/asm_amd64.s:540 +0x3b fp=0xc003490c10 sp=0xc003490bc0 pc=0x46566b
reflect.Value.call(0xc000180900, 0xc00009c250, 0x13, 0xd5cfe8, 0x4, 0xc003490f08, 0x3, 0x3, 0x0, 0x0, ...)
/Users/mike/.gvm/gos/go1.14.6/src/reflect/value.go:460 +0x8ab fp=0xc003490e28 sp=0xc003490c10 pc=0x49b8ab
reflect.Value.Call(0xc000180900, 0xc00009c250, 0x13, 0xc0026be708, 0x3, 0x3, 0xc0026be768, 0x405f8b, 0xc001843320)
/Users/mike/.gvm/gos/go1.14.6/src/reflect/value.go:321 +0xb4 fp=0xc003490ea8 sp=0xc003490e28 pc=0x49adb4
net/rpc.(*service).call(0xc00018ca40, 0xc0000a8000, 0xc0000977a8, 0xc0000977e0, 0xc0000a4400, 0xc000189980, 0xbb70e0, 0xc0027017a0, 0x16, 0xba94a0, ...)
/Users/mike/.gvm/gos/go1.14.6/src/net/rpc/server.go:377 +0x17f fp=0xc003490f70 sp=0xc003490ea8 pc=0x781faf
runtime.goexit()
/Users/mike/.gvm/gos/go1.14.6/src/runtime/asm_amd64.s:1373 +0x1 fp=0xc003490f78 sp=0xc003490f70 pc=0x4671c1
created by net/rpc.(*Server).ServeCodec
/Users/mike/.gvm/gos/go1.14.6/src/net/rpc/server.go:474 +0x42b
goroutine 1 [select]:
main.listenAndServe(0xc00057b968, 0x4, 0xc0004d2ec0, 0xc000083c80, 0x101, 0x93a80, 0xc0000968d0, 0x10, 0xc0000968e0, 0x10, ...)
/Users/mike/golang/poizon/duinfr/spider/server/http.go:79 +0x1c2
main.main()
/Users/mike/golang/poizon/duinfr/spider/server/main.go:571 +0x18f6
:",
47,https://api.github.com/repos/tinode/chat/issues/522,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/522/labels{/name},https://api.github.com/repos/tinode/chat/issues/522/comments,https://api.github.com/repos/tinode/chat/issues/522/events,https://github.com/tinode/chat/pull/522,685152402,MDExOlB1bGxSZXF1ZXN0NDcyOTIyODIy,522,Export response code counters.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-25T04:05:15Z,2020-08-25T23:44:52Z,2020-08-25T23:44:51Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/522', 'html_url': 'https://github.com/tinode/chat/pull/522', 'diff_url': 'https://github.com/tinode/chat/pull/522.diff', 'patch_url': 'https://github.com/tinode/chat/pull/522.patch'}",As CtrlCodesTotal?xx variables.,
48,https://api.github.com/repos/tinode/chat/issues/521,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/521/labels{/name},https://api.github.com/repos/tinode/chat/issues/521/comments,https://api.github.com/repos/tinode/chat/issues/521/events,https://github.com/tinode/chat/pull/521,683924843,MDExOlB1bGxSZXF1ZXN0NDcxOTM0NDY0,521,Export histo data to influxdb.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-22T04:24:17Z,2020-08-22T21:04:20Z,2020-08-22T21:04:19Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/521', 'html_url': 'https://github.com/tinode/chat/pull/521', 'diff_url': 'https://github.com/tinode/chat/pull/521.diff', 'patch_url': 'https://github.com/tinode/chat/pull/521.patch'}",,
49,https://api.github.com/repos/tinode/chat/issues/520,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/520/labels{/name},https://api.github.com/repos/tinode/chat/issues/520/comments,https://api.github.com/repos/tinode/chat/issues/520/events,https://github.com/tinode/chat/pull/520,683147627,MDExOlB1bGxSZXF1ZXN0NDcxMjg0NDUw,520,Handle P access mode changes for channel readers,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-20T23:07:58Z,2020-08-21T03:02:51Z,2020-08-21T03:02:51Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/520', 'html_url': 'https://github.com/tinode/chat/pull/520', 'diff_url': 'https://github.com/tinode/chat/pull/520.diff', 'patch_url': 'https://github.com/tinode/chat/pull/520.patch'}",,
50,https://api.github.com/repos/tinode/chat/issues/519,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/519/labels{/name},https://api.github.com/repos/tinode/chat/issues/519/comments,https://api.github.com/repos/tinode/chat/issues/519/events,https://github.com/tinode/chat/issues/519,683013242,MDU6SXNzdWU2ODMwMTMyNDI=,519,[github] Confusing usage of tags,"{'login': 'mar-v-in', 'id': 994036, 'node_id': 'MDQ6VXNlcjk5NDAzNg==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/994036?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mar-v-in', 'html_url': 'https://github.com/mar-v-in', 'followers_url': 'https://api.github.com/users/mar-v-in/followers', 'following_url': 'https://api.github.com/users/mar-v-in/following{/other_user}', 'gists_url': 'https://api.github.com/users/mar-v-in/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mar-v-in/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mar-v-in/subscriptions', 'organizations_url': 'https://api.github.com/users/mar-v-in/orgs', 'repos_url': 'https://api.github.com/users/mar-v-in/repos', 'events_url': 'https://api.github.com/users/mar-v-in/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mar-v-in/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-08-20T18:40:01Z,2020-08-20T21:20:38Z,2020-08-20T20:29:44Z,NONE,,,"In your repository's about section you added the topics ""whatsapp"", ""telegram"" and ""xmpp"", yet the project has nothing to do with any of those, is not compatible with them or anything, except that it's just another chat system. I came here only by accident because I was searching for XMPP related projects, which this project clearly isn't. Please refrain from advertising with unrelated topics.
Thank you.",
51,https://api.github.com/repos/tinode/chat/issues/518,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/518/labels{/name},https://api.github.com/repos/tinode/chat/issues/518/comments,https://api.github.com/repos/tinode/chat/issues/518/events,https://github.com/tinode/chat/pull/518,680570993,MDExOlB1bGxSZXF1ZXN0NDY5MTA1NjE1,518,Subscribing/unsubscribing to FCM topics,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-17T22:51:08Z,2020-08-18T21:07:45Z,2020-08-18T21:07:45Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/518', 'html_url': 'https://github.com/tinode/chat/pull/518', 'diff_url': 'https://github.com/tinode/chat/pull/518.diff', 'patch_url': 'https://github.com/tinode/chat/pull/518.patch'}","Mostly done.
Missing:
1. Subscribe/unsubscribe to FCM topics in response to changes to P permission.
~2. Send push to user's devices when the user subscribes to a channel.~ -- done
3. Allow admins to delete channel subscriptions.
4. Maybe allow admins to add users to channels, but I'm not sure. Could be too spammy.",
52,https://api.github.com/repos/tinode/chat/issues/517,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/517/labels{/name},https://api.github.com/repos/tinode/chat/issues/517/comments,https://api.github.com/repos/tinode/chat/issues/517/events,https://github.com/tinode/chat/pull/517,679366774,MDExOlB1bGxSZXF1ZXN0NDY4MTU0NDgy,517,Support for FCM topic subscriptions,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-08-14T19:44:18Z,2020-08-16T16:16:12Z,2020-08-16T16:16:12Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/517', 'html_url': 'https://github.com/tinode/chat/pull/517', 'diff_url': 'https://github.com/tinode/chat/pull/517.diff', 'patch_url': 'https://github.com/tinode/chat/pull/517.patch'}",,
53,https://api.github.com/repos/tinode/chat/issues/516,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/516/labels{/name},https://api.github.com/repos/tinode/chat/issues/516/comments,https://api.github.com/repos/tinode/chat/issues/516/events,https://github.com/tinode/chat/pull/516,678183513,MDExOlB1bGxSZXF1ZXN0NDY3MTc0MTEy,516,"Export latency, response size and #goroutines to Prometheus.","{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-13T06:17:34Z,2020-08-14T04:22:55Z,2020-08-14T04:22:55Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/516', 'html_url': 'https://github.com/tinode/chat/pull/516', 'diff_url': 'https://github.com/tinode/chat/pull/516.diff', 'patch_url': 'https://github.com/tinode/chat/pull/516.patch'}",Next step: add influxdb support.,
54,https://api.github.com/repos/tinode/chat/issues/515,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/515/labels{/name},https://api.github.com/repos/tinode/chat/issues/515/comments,https://api.github.com/repos/tinode/chat/issues/515/events,https://github.com/tinode/chat/pull/515,676627893,MDExOlB1bGxSZXF1ZXN0NDY1OTA0ODM2,515,Update install guide,"{'login': 'Tiano2019', 'id': 54930118, 'node_id': 'MDQ6VXNlcjU0OTMwMTE4', 'avatar_url': 'https://avatars1.githubusercontent.com/u/54930118?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Tiano2019', 'html_url': 'https://github.com/Tiano2019', 'followers_url': 'https://api.github.com/users/Tiano2019/followers', 'following_url': 'https://api.github.com/users/Tiano2019/following{/other_user}', 'gists_url': 'https://api.github.com/users/Tiano2019/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Tiano2019/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Tiano2019/subscriptions', 'organizations_url': 'https://api.github.com/users/Tiano2019/orgs', 'repos_url': 'https://api.github.com/users/Tiano2019/repos', 'events_url': 'https://api.github.com/users/Tiano2019/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Tiano2019/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-11T06:47:26Z,2020-08-11T20:08:43Z,2020-08-11T20:08:43Z,NONE,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/515', 'html_url': 'https://github.com/tinode/chat/pull/515', 'diff_url': 'https://github.com/tinode/chat/pull/515.diff', 'patch_url': 'https://github.com/tinode/chat/pull/515.patch'}","When running a standalone server, a symlink need to be created for the template directory. ",
55,https://api.github.com/repos/tinode/chat/issues/514,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/514/labels{/name},https://api.github.com/repos/tinode/chat/issues/514/comments,https://api.github.com/repos/tinode/chat/issues/514/events,https://github.com/tinode/chat/issues/514,676104602,MDU6SXNzdWU2NzYxMDQ2MDI=,514,Push message from client problem,"{'login': 'hhy5861', 'id': 8274977, 'node_id': 'MDQ6VXNlcjgyNzQ5Nzc=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/8274977?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/hhy5861', 'html_url': 'https://github.com/hhy5861', 'followers_url': 'https://api.github.com/users/hhy5861/followers', 'following_url': 'https://api.github.com/users/hhy5861/following{/other_user}', 'gists_url': 'https://api.github.com/users/hhy5861/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/hhy5861/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/hhy5861/subscriptions', 'organizations_url': 'https://api.github.com/users/hhy5861/orgs', 'repos_url': 'https://api.github.com/users/hhy5861/repos', 'events_url': 'https://api.github.com/users/hhy5861/events{/privacy}', 'received_events_url': 'https://api.github.com/users/hhy5861/received_events', 'type': 'User', 'site_admin': False}","[{'id': 910591285, 'node_id': 'MDU6TGFiZWw5MTA1OTEyODU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/incomplete', 'name': 'incomplete', 'color': 'ff6633', 'default': False, 'description': ''}]",open,False,,[],,1,2020-08-10T12:39:24Z,2020-08-10T15:43:44Z,,NONE,,,"```
2020/08/10 20:20:26 session SBhwbJVbjsU: 31149 message(s) dropped
2020/08/10 20:20:26 topic[grpJQa2klCLCP8]: connection stuck, detaching
2020/08/10 20:20:26 s.queueOutBytes: send queue is full CwqneYpL5sY
2020/08/10 20:20:26 session CwqneYpL5sY: 22341 message(s) dropped
2020/08/10 20:20:26 topic[grpJQa2klCLCP8]: connection stuck, detaching
2020/08/10 20:20:26 s.queueOutBytes: send queue is full 4I-2QOcFzwI
2020/08/10 20:20:26 session 4I-2QOcFzwI: 34729 message(s) dropped
2020/08/10 20:20:26 topic[grpJQa2klCLCP8]: connection stuck, detaching
2020/08/10 20:20:26 s.queueOutBytes: send queue is full VCxD9_pJoRk
2020/08/10 20:20:26 session VCxD9_pJoRk: 14233 message(s) dropped
2020/08/10 20:20:26 topic[grpJQa2klCLCP8]: connection stuck, detaching
2020/08/10 20:20:26 s.queueOutBytes: send queue is full 3B16vD3HLhA
2020/08/10 20:20:26 session 3B16vD3HLhA: 22479 message(s) dropped
2020/08/10 20:20:26 topic[grpJQa2klCLCP8]: connection stuck, detaching
2020/08/10 20:20:26 s.queueOutBytes: send queue is full XLgAb8fcR4Y
2020/08/10 20:20:26 session XLgAb8fcR4Y: 30241 message(s) dropped
2020/08/10 20:20:26 topic[grpJQa2klCLCP8]: connection stuck, detaching
2020/08/10 20:20:26 s.queueOutBytes: send queue is full bF_W21FUBBE
2020/08/10 20:20:26 session bF_W21FUBBE: 24342 message(s) dropped
2020/08/10 20:20:26 topic[grpJQa2klCLCP8]: connection stuck, detaching
```
version :
v0.16.5",
56,https://api.github.com/repos/tinode/chat/issues/513,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/513/labels{/name},https://api.github.com/repos/tinode/chat/issues/513/comments,https://api.github.com/repos/tinode/chat/issues/513/events,https://github.com/tinode/chat/issues/513,675920287,MDU6SXNzdWU2NzU5MjAyODc=,513,panic on devel branch with grpc instead of other adapters,"{'login': 'AVVS', 'id': 1713617, 'node_id': 'MDQ6VXNlcjE3MTM2MTc=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1713617?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/AVVS', 'html_url': 'https://github.com/AVVS', 'followers_url': 'https://api.github.com/users/AVVS/followers', 'following_url': 'https://api.github.com/users/AVVS/following{/other_user}', 'gists_url': 'https://api.github.com/users/AVVS/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/AVVS/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/AVVS/subscriptions', 'organizations_url': 'https://api.github.com/users/AVVS/orgs', 'repos_url': 'https://api.github.com/users/AVVS/repos', 'events_url': 'https://api.github.com/users/AVVS/events{/privacy}', 'received_events_url': 'https://api.github.com/users/AVVS/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977920, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjA=', 'url': 'https://api.github.com/repos/tinode/chat/labels/bug', 'name': 'bug', 'color': 'fc2929', 'default': True, 'description': None}]",closed,False,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}]",,4,2020-08-10T07:08:40Z,2020-08-11T05:34:41Z,2020-08-11T05:34:41Z,NONE,,,"on devel branch using grpc adapter. with json works fine - probably should add some tests cases :)
panic: interface conversion: interface {} is *pbx.ServerMsg, not []uint8
```
goroutine 56 [running]:
main.(*Session).queueOut(0xc0000cf760, 0xc000256120, 0x0)
/home/runner/sl-tinode/server/session.go:263 +0x38b
main.(*Session).hello(0xc0000cf760, 0xc000259740)
/home/runner/sl-tinode/server/session.go:682 +0x2c5
main.(*Session).dispatch(0xc0000cf760, 0xc000259740)
/home/runner/sl-tinode/server/session.go:450 +0x41f
main.(*grpcNodeServer).MessageLoop(0x1c77598, 0x14dc980, 0xc000347a80, 0x0, 0x0)
/home/runner/sl-tinode/server/hdl_grpc.go:63 +0x3bd
github.com/tinode/chat/pbx._Node_MessageLoop_Handler(0xf27ce0, 0x1c77598, 0x14d87e0, 0xc000b60780, 0x1c77598, 0xc000108800)
/home/runner/sl-tinode/pbx/model.pb.go:3655 +0xad
google.golang.org/grpc.(*Server).processStreamingRPC(0xc00017a000, 0x14dde80, 0xc000226d80, 0xc000108800, 0xc000aee450, 0x1c34c40, 0x0, 0x0, 0x0)
/home/runner/go/pkg/mod/google.golang.org/grpc@v1.28.0/server.go:1329 +0xcdd
google.golang.org/grpc.(*Server).handleStream(0xc00017a000, 0x14dde80, 0xc000226d80, 0xc000108800, 0x0)
/home/runner/go/pkg/mod/google.golang.org/grpc@v1.28.0/server.go:1409 +0xc62
google.golang.org/grpc.(*Server).serveStreams.func1.1(0xc000202820, 0xc00017a000, 0x14dde80, 0xc000226d80, 0xc000108800)
/home/runner/go/pkg/mod/google.golang.org/grpc@v1.28.0/server.go:746 +0xa1
created by google.golang.org/grpc.(*Server).serveStreams.func1
/home/runner/go/pkg/mod/google.golang.org/grpc@v1.28.0/server.go:744 +0xa1
```",
57,https://api.github.com/repos/tinode/chat/issues/512,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/512/labels{/name},https://api.github.com/repos/tinode/chat/issues/512/comments,https://api.github.com/repos/tinode/chat/issues/512/events,https://github.com/tinode/chat/pull/512,675783527,MDExOlB1bGxSZXF1ZXN0NDY1MjEwNzk1,512,Implement token authentication in loadtest.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-09T22:28:31Z,2020-08-09T22:55:21Z,2020-08-09T22:55:16Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/512', 'html_url': 'https://github.com/tinode/chat/pull/512', 'diff_url': 'https://github.com/tinode/chat/pull/512.diff', 'patch_url': 'https://github.com/tinode/chat/pull/512.patch'}","Tokens are saved in the log directory, and thus (a) can be re-used by other sessions and (b) are isolated between the runs.",
58,https://api.github.com/repos/tinode/chat/issues/511,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/511/labels{/name},https://api.github.com/repos/tinode/chat/issues/511/comments,https://api.github.com/repos/tinode/chat/issues/511/events,https://github.com/tinode/chat/pull/511,675573568,MDExOlB1bGxSZXF1ZXN0NDY1MDY0MzQz,511,Support for fcm push topics,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-08T19:08:35Z,2020-08-09T22:29:24Z,2020-08-09T01:59:28Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/511', 'html_url': 'https://github.com/tinode/chat/pull/511', 'diff_url': 'https://github.com/tinode/chat/pull/511.diff', 'patch_url': 'https://github.com/tinode/chat/pull/511.patch'}","Added support for fcm push topics to send channel notifications.
Also a couple of bugs fixed.",
59,https://api.github.com/repos/tinode/chat/issues/510,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/510/labels{/name},https://api.github.com/repos/tinode/chat/issues/510/comments,https://api.github.com/repos/tinode/chat/issues/510/events,https://github.com/tinode/chat/issues/510,673036679,MDU6SXNzdWU2NzMwMzY2Nzk=,510,userData.online incremented multiple times for the same session,"{'login': 'AVVS', 'id': 1713617, 'node_id': 'MDQ6VXNlcjE3MTM2MTc=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1713617?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/AVVS', 'html_url': 'https://github.com/AVVS', 'followers_url': 'https://api.github.com/users/AVVS/followers', 'following_url': 'https://api.github.com/users/AVVS/following{/other_user}', 'gists_url': 'https://api.github.com/users/AVVS/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/AVVS/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/AVVS/subscriptions', 'organizations_url': 'https://api.github.com/users/AVVS/orgs', 'repos_url': 'https://api.github.com/users/AVVS/repos', 'events_url': 'https://api.github.com/users/AVVS/events{/privacy}', 'received_events_url': 'https://api.github.com/users/AVVS/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977920, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjA=', 'url': 'https://api.github.com/repos/tinode/chat/labels/bug', 'name': 'bug', 'color': 'fc2929', 'default': True, 'description': None}]",open,False,,[],,4,2020-08-04T19:41:37Z,2020-08-06T17:28:36Z,,NONE,,,"https://github.com/tinode/chat/blob/master/server/topic.go#L1317
Subj, to reproduce:
1. create new group topic
2. subscribe to group topic with acs wanted=JRWPAS (as an example) - online equals 1
3. perform set.sub request { mode='JRPAS' } - changing wanted - online equals 2
4. perform {leave} - {pres} off wont come as userData.online equals 1
noticed when performing the said flow. to fix it you may want to return bool in terms of whether this is a new or old session from t.addSession and skip incrementing based don this",
60,https://api.github.com/repos/tinode/chat/issues/508,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/508/labels{/name},https://api.github.com/repos/tinode/chat/issues/508/comments,https://api.github.com/repos/tinode/chat/issues/508/events,https://github.com/tinode/chat/issues/508,669396559,MDU6SXNzdWU2NjkzOTY1NTk=,508,go mod error ,"{'login': 'joshua0x', 'id': 44366103, 'node_id': 'MDQ6VXNlcjQ0MzY2MTAz', 'avatar_url': 'https://avatars3.githubusercontent.com/u/44366103?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/joshua0x', 'html_url': 'https://github.com/joshua0x', 'followers_url': 'https://api.github.com/users/joshua0x/followers', 'following_url': 'https://api.github.com/users/joshua0x/following{/other_user}', 'gists_url': 'https://api.github.com/users/joshua0x/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/joshua0x/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/joshua0x/subscriptions', 'organizations_url': 'https://api.github.com/users/joshua0x/orgs', 'repos_url': 'https://api.github.com/users/joshua0x/repos', 'events_url': 'https://api.github.com/users/joshua0x/events{/privacy}', 'received_events_url': 'https://api.github.com/users/joshua0x/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977920, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjA=', 'url': 'https://api.github.com/repos/tinode/chat/labels/bug', 'name': 'bug', 'color': 'fc2929', 'default': True, 'description': None}]",closed,False,,[],,1,2020-07-31T04:24:27Z,2020-07-31T18:08:56Z,2020-07-31T18:08:55Z,NONE,,,"go build
go: github.com/tinode/chat@v0.16.7 requires
gopkg.in/rethinkdb/rethinkdb-go.v5@v5.1.0: reading gopkg.in/rethinkdb/rethinkdb-go.v5/go.mod at revision v5.1.0: unknown revision v5.1.0
",
61,https://api.github.com/repos/tinode/chat/issues/507,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/507/labels{/name},https://api.github.com/repos/tinode/chat/issues/507/comments,https://api.github.com/repos/tinode/chat/issues/507/events,https://github.com/tinode/chat/pull/507,669340926,MDExOlB1bGxSZXF1ZXN0NDU5NzIyNDg5,507,"Subscribing, sending and receiving channel data messages works","{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-31T02:13:41Z,2020-08-01T02:15:48Z,2020-08-01T02:15:48Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/507', 'html_url': 'https://github.com/tinode/chat/pull/507', 'diff_url': 'https://github.com/tinode/chat/pull/507.diff', 'patch_url': 'https://github.com/tinode/chat/pull/507.patch'}",,
62,https://api.github.com/repos/tinode/chat/issues/506,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/506/labels{/name},https://api.github.com/repos/tinode/chat/issues/506/comments,https://api.github.com/repos/tinode/chat/issues/506/events,https://github.com/tinode/chat/pull/506,669339016,MDExOlB1bGxSZXF1ZXN0NDU5NzIwODg1,506,Sending and receiving messages in channels works,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-31T02:09:10Z,2020-07-31T02:11:29Z,2020-07-31T02:11:29Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/506', 'html_url': 'https://github.com/tinode/chat/pull/506', 'diff_url': 'https://github.com/tinode/chat/pull/506.diff', 'patch_url': 'https://github.com/tinode/chat/pull/506.patch'}",,
63,https://api.github.com/repos/tinode/chat/issues/505,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/505/labels{/name},https://api.github.com/repos/tinode/chat/issues/505/comments,https://api.github.com/repos/tinode/chat/issues/505/events,https://github.com/tinode/chat/pull/505,668479372,MDExOlB1bGxSZXF1ZXN0NDU4OTYwNzYy,505,Latency reporting - remaining cases,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-07-30T08:17:55Z,2020-08-05T04:22:48Z,2020-08-05T04:22:48Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/505', 'html_url': 'https://github.com/tinode/chat/pull/505', 'diff_url': 'https://github.com/tinode/chat/pull/505.diff', 'patch_url': 'https://github.com/tinode/chat/pull/505.patch'}","1. Properly handle incoming timestamps in the cluster mode.
2. Distinguish between server ts and incoming ts in ctrl message wrappers.",
64,https://api.github.com/repos/tinode/chat/issues/504,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/504/labels{/name},https://api.github.com/repos/tinode/chat/issues/504/comments,https://api.github.com/repos/tinode/chat/issues/504/events,https://github.com/tinode/chat/pull/504,665977711,MDExOlB1bGxSZXF1ZXN0NDU2ODk5NTk3,504,Introduce histogram expvar.Var for latency tracking.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-27T05:06:15Z,2020-07-29T03:10:11Z,2020-07-29T03:10:11Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/504', 'html_url': 'https://github.com/tinode/chat/pull/504', 'diff_url': 'https://github.com/tinode/chat/pull/504.diff', 'patch_url': 'https://github.com/tinode/chat/pull/504.patch'}","Latencies are defined as the time between the receipt of a client request (e.g. `{pub}`) and the moment the server replies with a `{ctrl}` to this client request.
Latencies are exported as a histogram with a predefined (hardcoded) set of buckets.
Samples are recorded upon writing out `{ctrl}` messages with the specified `Id` and `Timestamp` (expected to be the timestamp of the original client request receipt) fields.
This PR currently does not address the following issues (to be implemented in follow-up PRs & commits):
1. `Timestamp` value may not be the actual original request receipt ts (e.g. https://github.com/tinode/chat/blob/11d514b58a1b5d7a3bbc67db55fa088394c73e7c/server/hub.go#L215)
2. Latencies won't be measured correctly in the cluster mode (for requests that require communicating the topic master sitting on another node).",
65,https://api.github.com/repos/tinode/chat/issues/503,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/503/labels{/name},https://api.github.com/repos/tinode/chat/issues/503/comments,https://api.github.com/repos/tinode/chat/issues/503/events,https://github.com/tinode/chat/pull/503,665429941,MDExOlB1bGxSZXF1ZXN0NDU2NTAwMDA4,503,Channel unsubscribe,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-24T21:33:34Z,2020-07-26T03:48:16Z,2020-07-26T03:48:16Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/503', 'html_url': 'https://github.com/tinode/chat/pull/503', 'diff_url': 'https://github.com/tinode/chat/pull/503.diff', 'patch_url': 'https://github.com/tinode/chat/pull/503.patch'}",,
66,https://api.github.com/repos/tinode/chat/issues/502,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/502/labels{/name},https://api.github.com/repos/tinode/chat/issues/502/comments,https://api.github.com/repos/tinode/chat/issues/502/events,https://github.com/tinode/chat/issues/502,665418149,MDU6SXNzdWU2NjU0MTgxNDk=,502,Concurrent sorting,"{'login': 'jfcg', 'id': 1410597, 'node_id': 'MDQ6VXNlcjE0MTA1OTc=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1410597?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jfcg', 'html_url': 'https://github.com/jfcg', 'followers_url': 'https://api.github.com/users/jfcg/followers', 'following_url': 'https://api.github.com/users/jfcg/following{/other_user}', 'gists_url': 'https://api.github.com/users/jfcg/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jfcg/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jfcg/subscriptions', 'organizations_url': 'https://api.github.com/users/jfcg/orgs', 'repos_url': 'https://api.github.com/users/jfcg/repos', 'events_url': 'https://api.github.com/users/jfcg/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jfcg/received_events', 'type': 'User', 'site_admin': False}","[{'id': 811090999, 'node_id': 'MDU6TGFiZWw4MTEwOTA5OTk=', 'url': 'https://api.github.com/repos/tinode/chat/labels/feature%20request', 'name': 'feature request', 'color': 'edcf8b', 'default': False, 'description': None}]",closed,False,,[],,3,2020-07-24T21:06:58Z,2020-07-24T23:44:12Z,2020-07-24T23:44:12Z,NONE,,,"__Proposal:__
Replacing standard library's sort with a concurrent sorting library like [sorty](https://github.com/jfcg/sorty).
Note: I am the author of sorty.
__Current behavior:__
standard sort is not concurrent and runs in a single goroutine. This is very slow.
Also `sort.Interface` is slower than sorty's `lesswap()` as a way to access generic collections.
__Desired behavior:__
As an instant messaging server, chat can benefit a lot from concurrent sorting (with sorty or one of alternative libraries.)
__Alternatives considered:__
See the benchmarks in sorty readme.
__Use case:__
I have inspected chat code: standard sort is heavily used. sorty can cover all of it except calls to Stable().",
67,https://api.github.com/repos/tinode/chat/issues/501,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/501/labels{/name},https://api.github.com/repos/tinode/chat/issues/501/comments,https://api.github.com/repos/tinode/chat/issues/501/events,https://github.com/tinode/chat/issues/501,664648421,MDU6SXNzdWU2NjQ2NDg0MjE=,501,Get Desc for specific topic. Not topicMe,"{'login': 'bimawa', 'id': 1393809, 'node_id': 'MDQ6VXNlcjEzOTM4MDk=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1393809?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/bimawa', 'html_url': 'https://github.com/bimawa', 'followers_url': 'https://api.github.com/users/bimawa/followers', 'following_url': 'https://api.github.com/users/bimawa/following{/other_user}', 'gists_url': 'https://api.github.com/users/bimawa/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/bimawa/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/bimawa/subscriptions', 'organizations_url': 'https://api.github.com/users/bimawa/orgs', 'repos_url': 'https://api.github.com/users/bimawa/repos', 'events_url': 'https://api.github.com/users/bimawa/events{/privacy}', 'received_events_url': 'https://api.github.com/users/bimawa/received_events', 'type': 'User', 'site_admin': False}","[{'id': 1133870256, 'node_id': 'MDU6TGFiZWwxMTMzODcwMjU2', 'url': 'https://api.github.com/repos/tinode/chat/labels/cannot%20reproduce', 'name': 'cannot reproduce', 'color': '0052cc', 'default': False, 'description': ''}, {'id': 910591285, 'node_id': 'MDU6TGFiZWw5MTA1OTEyODU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/incomplete', 'name': 'incomplete', 'color': 'ff6633', 'default': False, 'description': ''}]",closed,False,,[],,9,2020-07-23T17:29:22Z,2020-07-27T11:53:07Z,2020-07-27T11:53:06Z,NONE,,,"**If you are not reporting a bug, please post to https://groups.google.com/d/forum/tinode instead.**
---
### Subject of the issue
Changed name from UserB by updated vCard, not updated by get-desc request.
### Your environment
#### Server-side
- [x] Your own setup:
* platform (Linux)
* version of Tinode server, e.g. `0.15.2-rc3`
* database backend - RethinkDB
* cluster
#### Client-side
- [x] Your own client. Describe it:
* Transport (gRPC)
* Programming language - swift
### Steps to reproduce
Try to update vCard by User1 and subscribers should receive new nickname and other updated information
### Expected behaviour
New name/avatar/etc. should be updated immediatly.
### Actual behaviour
Update happens with old data
### Server-side log
Copy server-side log here. You may also attach it to the issue as a file.
### Client-side log
1. Request from UserB to change name:
```
21:26:16 SLRGRPCService+Chat.swift:756 Thread: slr.grpc.chat DEBUG: [chat] sending SLProtofiles.Pbx_ClientMsg:
set {
id: ""EF6DE0CE-423B-4AA0-AF6B-39F460D750D6""
topic: ""me""
query {
desc {
public: ""{\""title\"":\""usr2emfJMDv1js\"",\""fn\"":\""Adsfdfasdd\""}""
}
}
}
```
2. In database we see changes - successful
2.1. User A receive {pres} - ""upd""
2.2. User A request get desc for specific user ID from {pres}
3. Response to UserA on get desc .meta
```
meta {
id: ""4B58A18F-C681-4C75-9FD1-3421A435D692""
topic: ""usr2emfJMDv1js""
desc {
updated_at: 1595402786560
touched_at: 1595493749853
acs {
want: ""JRWPA""
given: ""JRWPA""
}
seq_id: 2
read_id: 2
recv_id: 2
public: ""{\""externalId\"":\""6691604209223073792\"",\""fn\"":\""Adsfdfasdfasdfas\"",\""title\"":\""usr2emfJMDv1js\""}""
}
}
```
Adsfdfasdfasdfas - is old value
4. Response on next request is return to us new username successful:
```
$0.get = .with {
$0.topic = conversation
$0.query = .with {
$0.what = ""sub""
if ims > 0 {
$0.sub = .with {
$0.ifModifiedSince = ims
}
}
}
}
```
As result I guess its something looks like a bug.",
68,https://api.github.com/repos/tinode/chat/issues/500,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/500/labels{/name},https://api.github.com/repos/tinode/chat/issues/500/comments,https://api.github.com/repos/tinode/chat/issues/500/events,https://github.com/tinode/chat/issues/500,662829075,MDU6SXNzdWU2NjI4MjkwNzU=,500,Question about User Id ,"{'login': 'wmshek1992', 'id': 46838582, 'node_id': 'MDQ6VXNlcjQ2ODM4NTgy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/46838582?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/wmshek1992', 'html_url': 'https://github.com/wmshek1992', 'followers_url': 'https://api.github.com/users/wmshek1992/followers', 'following_url': 'https://api.github.com/users/wmshek1992/following{/other_user}', 'gists_url': 'https://api.github.com/users/wmshek1992/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/wmshek1992/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/wmshek1992/subscriptions', 'organizations_url': 'https://api.github.com/users/wmshek1992/orgs', 'repos_url': 'https://api.github.com/users/wmshek1992/repos', 'events_url': 'https://api.github.com/users/wmshek1992/events{/privacy}', 'received_events_url': 'https://api.github.com/users/wmshek1992/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977925, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/question', 'name': 'question', 'color': 'cc317c', 'default': True, 'description': None}]",closed,False,,[],,1,2020-07-21T10:01:20Z,2020-07-21T12:41:02Z,2020-07-21T12:41:02Z,NONE,,,"Hi,
In client side, users are identified by string ""usrXXXXXXX"".
And Tinode DB are not storing this string, instead it stores a bigint, e.g. 736793179575029760.
So if I have the string, how do I convert it into the bigint that refers to the exact record in table tinode.users?
",
69,https://api.github.com/repos/tinode/chat/issues/499,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/499/labels{/name},https://api.github.com/repos/tinode/chat/issues/499/comments,https://api.github.com/repos/tinode/chat/issues/499/events,https://github.com/tinode/chat/pull/499,662454759,MDExOlB1bGxSZXF1ZXN0NDU0MDA5MzA5,499,Channel-related functionality,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-21T01:32:52Z,2020-07-24T03:39:10Z,2020-07-24T03:39:10Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/499', 'html_url': 'https://github.com/tinode/chat/pull/499', 'diff_url': 'https://github.com/tinode/chat/pull/499.diff', 'patch_url': 'https://github.com/tinode/chat/pull/499.patch'}",It's ~40% complete. Webapp from the https://github.com/tinode/webapp/tree/next branch can be used to test it.,
70,https://api.github.com/repos/tinode/chat/issues/498,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/498/labels{/name},https://api.github.com/repos/tinode/chat/issues/498/comments,https://api.github.com/repos/tinode/chat/issues/498/events,https://github.com/tinode/chat/pull/498,660534670,MDExOlB1bGxSZXF1ZXN0NDUyMjg0MDU3,498,Add counters for incoming and outgoing messages.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-19T02:43:41Z,2020-07-19T05:19:20Z,2020-07-19T05:19:20Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/498', 'html_url': 'https://github.com/tinode/chat/pull/498', 'diff_url': 'https://github.com/tinode/chat/pull/498.diff', 'patch_url': 'https://github.com/tinode/chat/pull/498.patch'}",These are helpful in measuring performance.,
71,https://api.github.com/repos/tinode/chat/issues/497,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/497/labels{/name},https://api.github.com/repos/tinode/chat/issues/497/comments,https://api.github.com/repos/tinode/chat/issues/497/events,https://github.com/tinode/chat/issues/497,658922794,MDU6SXNzdWU2NTg5MjI3OTQ=,497,Share a great example about chat,"{'login': 'farsunset', 'id': 3784106, 'node_id': 'MDQ6VXNlcjM3ODQxMDY=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/3784106?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/farsunset', 'html_url': 'https://github.com/farsunset', 'followers_url': 'https://api.github.com/users/farsunset/followers', 'following_url': 'https://api.github.com/users/farsunset/following{/other_user}', 'gists_url': 'https://api.github.com/users/farsunset/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/farsunset/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/farsunset/subscriptions', 'organizations_url': 'https://api.github.com/users/farsunset/orgs', 'repos_url': 'https://api.github.com/users/farsunset/repos', 'events_url': 'https://api.github.com/users/farsunset/events{/privacy}', 'received_events_url': 'https://api.github.com/users/farsunset/received_events', 'type': 'User', 'site_admin': False}","[{'id': 811090999, 'node_id': 'MDU6TGFiZWw4MTEwOTA5OTk=', 'url': 'https://api.github.com/repos/tinode/chat/labels/feature%20request', 'name': 'feature request', 'color': 'edcf8b', 'default': False, 'description': None}]",closed,False,,[],,0,2020-07-17T06:35:45Z,2020-07-17T06:35:49Z,2020-07-17T06:35:49Z,NONE,,,"https://github.com/farsunset/hoxin-im
http://farsunset.com",
72,https://api.github.com/repos/tinode/chat/issues/496,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/496/labels{/name},https://api.github.com/repos/tinode/chat/issues/496/comments,https://api.github.com/repos/tinode/chat/issues/496/events,https://github.com/tinode/chat/pull/496,657945681,MDExOlB1bGxSZXF1ZXN0NDQ5OTc5NzUy,496,Add a bit of functionality to loadtest,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-16T07:47:59Z,2020-07-17T04:13:07Z,2020-07-17T04:13:07Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/496', 'html_url': 'https://github.com/tinode/chat/pull/496', 'diff_url': 'https://github.com/tinode/chat/pull/496.diff', 'patch_url': 'https://github.com/tinode/chat/pull/496.patch'}",Publish to all user topics in the load test config.,
73,https://api.github.com/repos/tinode/chat/issues/495,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/495/labels{/name},https://api.github.com/repos/tinode/chat/issues/495/comments,https://api.github.com/repos/tinode/chat/issues/495/events,https://github.com/tinode/chat/pull/495,657841713,MDExOlB1bGxSZXF1ZXN0NDQ5ODkxNzUy,495,Fix security flaw that attacker can change password of any user.,"{'login': 'aihturie', 'id': 3146079, 'node_id': 'MDQ6VXNlcjMxNDYwNzk=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/3146079?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aihturie', 'html_url': 'https://github.com/aihturie', 'followers_url': 'https://api.github.com/users/aihturie/followers', 'following_url': 'https://api.github.com/users/aihturie/following{/other_user}', 'gists_url': 'https://api.github.com/users/aihturie/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aihturie/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aihturie/subscriptions', 'organizations_url': 'https://api.github.com/users/aihturie/orgs', 'repos_url': 'https://api.github.com/users/aihturie/repos', 'events_url': 'https://api.github.com/users/aihturie/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aihturie/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-07-16T04:38:44Z,2020-07-16T16:44:44Z,2020-07-16T16:44:44Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/495', 'html_url': 'https://github.com/tinode/chat/pull/495', 'diff_url': 'https://github.com/tinode/chat/pull/495.diff', 'patch_url': 'https://github.com/tinode/chat/pull/495.patch'}","Attacker can try to send a changing password request along with the uname of another existing user.
BasicAuthenticator.UpdateRecord did not check the existing of the uname.
MySQL adapter also blindly update the record of another user to the new password.",
74,https://api.github.com/repos/tinode/chat/issues/494,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/494/labels{/name},https://api.github.com/repos/tinode/chat/issues/494/comments,https://api.github.com/repos/tinode/chat/issues/494/events,https://github.com/tinode/chat/pull/494,655596805,MDExOlB1bGxSZXF1ZXN0NDQ4MDQ3Mzg3,494,Set defaultMaxMessageResults to 100 in DB adapters.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-07-13T05:42:03Z,2020-07-16T05:22:44Z,2020-07-16T05:22:44Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/494', 'html_url': 'https://github.com/tinode/chat/pull/494', 'diff_url': 'https://github.com/tinode/chat/pull/494.diff', 'patch_url': 'https://github.com/tinode/chat/pull/494.patch'}","Fetching more cannot will result in overwhelming the send queues
which effectively leads to session termination.
It's one of the problems that prevented us from running valid loadtests.",
75,https://api.github.com/repos/tinode/chat/issues/491,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/491/labels{/name},https://api.github.com/repos/tinode/chat/issues/491/comments,https://api.github.com/repos/tinode/chat/issues/491/events,https://github.com/tinode/chat/pull/491,654658703,MDExOlB1bGxSZXF1ZXN0NDQ3MzQwNzQ5,491,Notify old owner's access mode updates,"{'login': 'aihturie', 'id': 3146079, 'node_id': 'MDQ6VXNlcjMxNDYwNzk=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/3146079?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aihturie', 'html_url': 'https://github.com/aihturie', 'followers_url': 'https://api.github.com/users/aihturie/followers', 'following_url': 'https://api.github.com/users/aihturie/following{/other_user}', 'gists_url': 'https://api.github.com/users/aihturie/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aihturie/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aihturie/subscriptions', 'organizations_url': 'https://api.github.com/users/aihturie/orgs', 'repos_url': 'https://api.github.com/users/aihturie/repos', 'events_url': 'https://api.github.com/users/aihturie/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aihturie/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-07-10T09:46:04Z,2020-07-10T16:11:54Z,2020-07-10T16:11:54Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/491', 'html_url': 'https://github.com/tinode/chat/pull/491', 'diff_url': 'https://github.com/tinode/chat/pull/491.diff', 'patch_url': 'https://github.com/tinode/chat/pull/491.patch'}",Old owner's access mode updates need to be sent to subscribers when topic's owner was changed.,
76,https://api.github.com/repos/tinode/chat/issues/490,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/490/labels{/name},https://api.github.com/repos/tinode/chat/issues/490/comments,https://api.github.com/repos/tinode/chat/issues/490/events,https://github.com/tinode/chat/pull/490,654491192,MDExOlB1bGxSZXF1ZXN0NDQ3MjA4NzIz,490,Convert hard coded tag prefixes into calls to authenticators and validators,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-10T03:57:11Z,2020-07-11T02:34:21Z,2020-07-11T02:34:21Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/490', 'html_url': 'https://github.com/tinode/chat/pull/490', 'diff_url': 'https://github.com/tinode/chat/pull/490.diff', 'patch_url': 'https://github.com/tinode/chat/pull/490.patch'}","`rewriteTag` method was refactored to call validators and authenticators to get tags instead of using hardcoded prefixes `tel`, `email` and `basic`. It required some refactoring in other places.",
77,https://api.github.com/repos/tinode/chat/issues/489,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/489/labels{/name},https://api.github.com/repos/tinode/chat/issues/489/comments,https://api.github.com/repos/tinode/chat/issues/489/events,https://github.com/tinode/chat/issues/489,653849704,MDU6SXNzdWU2NTM4NDk3MDQ=,489,I can't accept my email,"{'login': 'moiseiisus', 'id': 25604282, 'node_id': 'MDQ6VXNlcjI1NjA0Mjgy', 'avatar_url': 'https://avatars0.githubusercontent.com/u/25604282?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/moiseiisus', 'html_url': 'https://github.com/moiseiisus', 'followers_url': 'https://api.github.com/users/moiseiisus/followers', 'following_url': 'https://api.github.com/users/moiseiisus/following{/other_user}', 'gists_url': 'https://api.github.com/users/moiseiisus/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/moiseiisus/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/moiseiisus/subscriptions', 'organizations_url': 'https://api.github.com/users/moiseiisus/orgs', 'repos_url': 'https://api.github.com/users/moiseiisus/repos', 'events_url': 'https://api.github.com/users/moiseiisus/events{/privacy}', 'received_events_url': 'https://api.github.com/users/moiseiisus/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977924, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjQ=', 'url': 'https://api.github.com/repos/tinode/chat/labels/invalid', 'name': 'invalid', 'color': 'e6e6e6', 'default': True, 'description': None}]",closed,False,,[],,1,2020-07-09T07:58:11Z,2020-07-09T15:41:00Z,2020-07-09T15:41:00Z,NONE,,,"I can't accept my email/
There is no email received at ***@mail.ru and ***@yandex.ru
So I cant complete registration and use Tinode.",
78,https://api.github.com/repos/tinode/chat/issues/488,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/488/labels{/name},https://api.github.com/repos/tinode/chat/issues/488/comments,https://api.github.com/repos/tinode/chat/issues/488/events,https://github.com/tinode/chat/pull/488,651987117,MDExOlB1bGxSZXF1ZXN0NDQ1MTQwODA1,488,Fix minor bugs,"{'login': 'aihturie', 'id': 3146079, 'node_id': 'MDQ6VXNlcjMxNDYwNzk=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/3146079?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aihturie', 'html_url': 'https://github.com/aihturie', 'followers_url': 'https://api.github.com/users/aihturie/followers', 'following_url': 'https://api.github.com/users/aihturie/following{/other_user}', 'gists_url': 'https://api.github.com/users/aihturie/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aihturie/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aihturie/subscriptions', 'organizations_url': 'https://api.github.com/users/aihturie/orgs', 'repos_url': 'https://api.github.com/users/aihturie/repos', 'events_url': 'https://api.github.com/users/aihturie/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aihturie/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-07-07T04:24:59Z,2020-07-07T15:44:40Z,2020-07-07T15:44:40Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/488', 'html_url': 'https://github.com/tinode/chat/pull/488', 'diff_url': 'https://github.com/tinode/chat/pull/488.diff', 'patch_url': 'https://github.com/tinode/chat/pull/488.patch'}","Fix bug on topicsStateForUser
Fix bug cannot delete topic",
79,https://api.github.com/repos/tinode/chat/issues/486,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/486/labels{/name},https://api.github.com/repos/tinode/chat/issues/486/comments,https://api.github.com/repos/tinode/chat/issues/486/events,https://github.com/tinode/chat/issues/486,650880904,MDU6SXNzdWU2NTA4ODA5MDQ=,486,Synchronize Phonebook with Chat,"{'login': 'alttutar', 'id': 63467436, 'node_id': 'MDQ6VXNlcjYzNDY3NDM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/63467436?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/alttutar', 'html_url': 'https://github.com/alttutar', 'followers_url': 'https://api.github.com/users/alttutar/followers', 'following_url': 'https://api.github.com/users/alttutar/following{/other_user}', 'gists_url': 'https://api.github.com/users/alttutar/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/alttutar/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/alttutar/subscriptions', 'organizations_url': 'https://api.github.com/users/alttutar/orgs', 'repos_url': 'https://api.github.com/users/alttutar/repos', 'events_url': 'https://api.github.com/users/alttutar/events{/privacy}', 'received_events_url': 'https://api.github.com/users/alttutar/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977925, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/question', 'name': 'question', 'color': 'cc317c', 'default': True, 'description': None}]",closed,False,,[],,10,2020-07-04T12:12:24Z,2020-07-19T03:18:49Z,2020-07-19T03:18:49Z,NONE,,,"I think this is a good feature to add. I would love to work on this, and if someone is also interested, let's keep in touch.",
80,https://api.github.com/repos/tinode/chat/issues/485,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/485/labels{/name},https://api.github.com/repos/tinode/chat/issues/485/comments,https://api.github.com/repos/tinode/chat/issues/485/events,https://github.com/tinode/chat/issues/485,650735983,MDU6SXNzdWU2NTA3MzU5ODM=,485,Leave might not be atomic,"{'login': 'arseniybanayev', 'id': 6172879, 'node_id': 'MDQ6VXNlcjYxNzI4Nzk=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/6172879?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/arseniybanayev', 'html_url': 'https://github.com/arseniybanayev', 'followers_url': 'https://api.github.com/users/arseniybanayev/followers', 'following_url': 'https://api.github.com/users/arseniybanayev/following{/other_user}', 'gists_url': 'https://api.github.com/users/arseniybanayev/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/arseniybanayev/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/arseniybanayev/subscriptions', 'organizations_url': 'https://api.github.com/users/arseniybanayev/orgs', 'repos_url': 'https://api.github.com/users/arseniybanayev/repos', 'events_url': 'https://api.github.com/users/arseniybanayev/events{/privacy}', 'received_events_url': 'https://api.github.com/users/arseniybanayev/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977925, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/question', 'name': 'question', 'color': 'cc317c', 'default': True, 'description': None}]",open,False,,[],,4,2020-07-03T19:11:13Z,2020-07-24T23:55:58Z,,CONTRIBUTOR,,,"Consider two users `usrA` and `usrB` with the following sequence of events:
1. A: `{sub topic=new}` (suppose topic is `grpX`)
2. B: `{sub topic=grpX}`
3. A: `{leave topic=grpX unsub=true} # 403 permission denied`
4. A: `{set topic=grpX sub={user=usrB mode=JRWPASDO}}`
5. B: `{set topic=grpX sub={mode=JRWPASDO}}`
6. A: `{leave topic=grpX unsub=true} # 409 must attach first`
If you omit step 3, then step 6 succeeds, which suggests that the server processes `{leave topic=.. unsub=true}` in two steps and not atomically.
EDIT: I originally had `user=usrA` in step 4, which was a typo.",
81,https://api.github.com/repos/tinode/chat/issues/484,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/484/labels{/name},https://api.github.com/repos/tinode/chat/issues/484/comments,https://api.github.com/repos/tinode/chat/issues/484/events,https://github.com/tinode/chat/issues/484,650125346,MDU6SXNzdWU2NTAxMjUzNDY=,484,Users can still subscribe after topic is deleted,"{'login': 'arseniybanayev', 'id': 6172879, 'node_id': 'MDQ6VXNlcjYxNzI4Nzk=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/6172879?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/arseniybanayev', 'html_url': 'https://github.com/arseniybanayev', 'followers_url': 'https://api.github.com/users/arseniybanayev/followers', 'following_url': 'https://api.github.com/users/arseniybanayev/following{/other_user}', 'gists_url': 'https://api.github.com/users/arseniybanayev/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/arseniybanayev/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/arseniybanayev/subscriptions', 'organizations_url': 'https://api.github.com/users/arseniybanayev/orgs', 'repos_url': 'https://api.github.com/users/arseniybanayev/repos', 'events_url': 'https://api.github.com/users/arseniybanayev/events{/privacy}', 'received_events_url': 'https://api.github.com/users/arseniybanayev/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977920, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjA=', 'url': 'https://api.github.com/repos/tinode/chat/labels/bug', 'name': 'bug', 'color': 'fc2929', 'default': True, 'description': None}]",closed,False,,[],,0,2020-07-02T18:24:48Z,2020-07-02T18:39:23Z,2020-07-02T18:39:23Z,CONTRIBUTOR,,,"My issue, sorry about that. Please ignore",
82,https://api.github.com/repos/tinode/chat/issues/483,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/483/labels{/name},https://api.github.com/repos/tinode/chat/issues/483/comments,https://api.github.com/repos/tinode/chat/issues/483/events,https://github.com/tinode/chat/issues/483,648923158,MDU6SXNzdWU2NDg5MjMxNTg=,483,QUESTION: why doesn't return query result directly in websocket?,"{'login': 'mojocn', 'id': 34467684, 'node_id': 'MDQ6VXNlcjM0NDY3Njg0', 'avatar_url': 'https://avatars0.githubusercontent.com/u/34467684?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mojocn', 'html_url': 'https://github.com/mojocn', 'followers_url': 'https://api.github.com/users/mojocn/followers', 'following_url': 'https://api.github.com/users/mojocn/following{/other_user}', 'gists_url': 'https://api.github.com/users/mojocn/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mojocn/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mojocn/subscriptions', 'organizations_url': 'https://api.github.com/users/mojocn/orgs', 'repos_url': 'https://api.github.com/users/mojocn/repos', 'events_url': 'https://api.github.com/users/mojocn/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mojocn/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977925, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/question', 'name': 'question', 'color': 'cc317c', 'default': True, 'description': None}]",closed,False,,[],,4,2020-07-01T11:56:02Z,2020-07-02T01:31:50Z,2020-07-02T01:31:50Z,NONE,,,"websocket-msg
```json
{""set"":{""id"":""112418"",""topic"":""fnd"",""desc"":{""public"":""email:some@one.com""}}} //send1
{""ctrl"":{""id"":""112418"",""topic"":""fnd"",""code"":200,""text"":""ok"",""ts"":""2020-07-01T11:51:53.234Z""}} //response
{""get"":{""id"":""112419"",""topic"":""fnd"",""what"":""sub""}} //send2
{""meta"":{""id"":""68563"",""topic"":""fnd"",""ts"":""2020-07-01T14:04:52.921Z"",""sub"":[{""updated"":""2020-06-29T03:24:10.537Z"",""acs"":{""mode"":""JRWPAS""},""public"":{""fn"":""asdfasdf""},""private"":[""email:neochau@gmail.com""],""user"":""usrR_BXgHQmiz4""}]}} //the search result
--
//return the search result
```
you need get the result in the next msg request",
83,https://api.github.com/repos/tinode/chat/issues/482,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/482/labels{/name},https://api.github.com/repos/tinode/chat/issues/482/comments,https://api.github.com/repos/tinode/chat/issues/482/events,https://github.com/tinode/chat/issues/482,648737230,MDU6SXNzdWU2NDg3MzcyMzA=,482,postgres support,"{'login': 'jinfagang', 'id': 21303438, 'node_id': 'MDQ6VXNlcjIxMzAzNDM4', 'avatar_url': 'https://avatars3.githubusercontent.com/u/21303438?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jinfagang', 'html_url': 'https://github.com/jinfagang', 'followers_url': 'https://api.github.com/users/jinfagang/followers', 'following_url': 'https://api.github.com/users/jinfagang/following{/other_user}', 'gists_url': 'https://api.github.com/users/jinfagang/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jinfagang/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jinfagang/subscriptions', 'organizations_url': 'https://api.github.com/users/jinfagang/orgs', 'repos_url': 'https://api.github.com/users/jinfagang/repos', 'events_url': 'https://api.github.com/users/jinfagang/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jinfagang/received_events', 'type': 'User', 'site_admin': False}","[{'id': 811090999, 'node_id': 'MDU6TGFiZWw4MTEwOTA5OTk=', 'url': 'https://api.github.com/repos/tinode/chat/labels/feature%20request', 'name': 'feature request', 'color': 'edcf8b', 'default': False, 'description': None}]",closed,False,,[],,1,2020-07-01T07:17:21Z,2020-07-01T08:01:51Z,2020-07-01T08:01:51Z,NONE,,,"Since postgres is fully opensource and free, will consider support postgresdb as database backend?",
84,https://api.github.com/repos/tinode/chat/issues/481,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/481/labels{/name},https://api.github.com/repos/tinode/chat/issues/481/comments,https://api.github.com/repos/tinode/chat/issues/481/events,https://github.com/tinode/chat/issues/481,647935687,MDU6SXNzdWU2NDc5MzU2ODc=,481,demo for Vue?,"{'login': 'wYuJian', 'id': 29095188, 'node_id': 'MDQ6VXNlcjI5MDk1MTg4', 'avatar_url': 'https://avatars1.githubusercontent.com/u/29095188?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/wYuJian', 'html_url': 'https://github.com/wYuJian', 'followers_url': 'https://api.github.com/users/wYuJian/followers', 'following_url': 'https://api.github.com/users/wYuJian/following{/other_user}', 'gists_url': 'https://api.github.com/users/wYuJian/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/wYuJian/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/wYuJian/subscriptions', 'organizations_url': 'https://api.github.com/users/wYuJian/orgs', 'repos_url': 'https://api.github.com/users/wYuJian/repos', 'events_url': 'https://api.github.com/users/wYuJian/events{/privacy}', 'received_events_url': 'https://api.github.com/users/wYuJian/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977925, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/question', 'name': 'question', 'color': 'cc317c', 'default': True, 'description': None}]",closed,False,,[],,4,2020-06-30T07:27:08Z,2020-06-30T10:19:00Z,2020-06-30T10:19:00Z,NONE,,,demo for Vue?,
85,https://api.github.com/repos/tinode/chat/issues/480,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/480/labels{/name},https://api.github.com/repos/tinode/chat/issues/480/comments,https://api.github.com/repos/tinode/chat/issues/480/events,https://github.com/tinode/chat/pull/480,646905952,MDExOlB1bGxSZXF1ZXN0NDQxMDQ4MTg4,480,"Tag structure and length, distinction between fnd.private and fnd.public","{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-06-28T12:14:46Z,2020-06-29T08:10:04Z,2020-06-29T08:10:04Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/480', 'html_url': 'https://github.com/tinode/chat/pull/480', 'diff_url': 'https://github.com/tinode/chat/pull/480.diff', 'patch_url': 'https://github.com/tinode/chat/pull/480.patch'}",,
86,https://api.github.com/repos/tinode/chat/issues/479,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/479/labels{/name},https://api.github.com/repos/tinode/chat/issues/479/comments,https://api.github.com/repos/tinode/chat/issues/479/events,https://github.com/tinode/chat/pull/479,646417963,MDExOlB1bGxSZXF1ZXN0NDQwNzEwOTMz,479,A bit of refactoring of tag management,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-26T17:47:10Z,2020-06-27T11:24:50Z,2020-06-27T11:24:50Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/479', 'html_url': 'https://github.com/tinode/chat/pull/479', 'diff_url': 'https://github.com/tinode/chat/pull/479.diff', 'patch_url': 'https://github.com/tinode/chat/pull/479.patch'}",,
87,https://api.github.com/repos/tinode/chat/issues/478,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/478/labels{/name},https://api.github.com/repos/tinode/chat/issues/478/comments,https://api.github.com/repos/tinode/chat/issues/478/events,https://github.com/tinode/chat/issues/478,642488341,MDU6SXNzdWU2NDI0ODgzNDE=,478,Unable to modify user avatar,"{'login': 'kisulken', 'id': 7709243, 'node_id': 'MDQ6VXNlcjc3MDkyNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/7709243?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/kisulken', 'html_url': 'https://github.com/kisulken', 'followers_url': 'https://api.github.com/users/kisulken/followers', 'following_url': 'https://api.github.com/users/kisulken/following{/other_user}', 'gists_url': 'https://api.github.com/users/kisulken/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/kisulken/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/kisulken/subscriptions', 'organizations_url': 'https://api.github.com/users/kisulken/orgs', 'repos_url': 'https://api.github.com/users/kisulken/repos', 'events_url': 'https://api.github.com/users/kisulken/events{/privacy}', 'received_events_url': 'https://api.github.com/users/kisulken/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977925, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/question', 'name': 'question', 'color': 'cc317c', 'default': True, 'description': None}]",closed,False,,[],,6,2020-06-21T03:44:54Z,2020-06-24T01:34:13Z,2020-06-24T01:34:13Z,NONE,,,"# If you are not reporting a bug or requesting a feature, please post to https://groups.google.com/d/forum/tinode instead.
### Subject of the issue
I attempt to update user avatar via CLI and I get `304 not modified (me)` even though the user does not have an avatar. (empty fields in the db as well).
However, with a different user that already has an avatar I am able to successfully upload a new one using the same image file.
### Is this a bug report of a feature request?
- [X] Bug report
- [ ] Feature request
### Your environment
#### Server-side
- [ ] api.tinode.co
- [X] Your own setup:
* linux docker (based on `tinode/tinode-rethinkdb:0.16.5`)
* version of tinode server, e.g. `0.16.5`
* rethink db
#### Client-side
- [ ] TinodeWeb/tinodejs: javascript client
* Browser make and version.
- [ ] Tindroid: Android app
* Android API level (e.g. 25).
* Emulator or hardware, if hardware describe it.
- [X] tn-cli
* Python version 3.6.7
- [ ] Chatbot
* Python version
- Version of the client, e.g. `0.16.5`
### Steps to reproduce
1. `python3 tn-cli.py --no-login`
```
Tinode command line client. Version 1.4.0/0.16.5; gRPC/1.25.0.
Server at 'localhost:16060'
<= Connected to server: maxTagCount: 16; ver: 0.16; maxMessageSize: 262144; maxSubscriberCount: 128; build: rethinkdb:v0.16.5; maxFileUploadSize: 4194304
<= 201 created
```
2. `.must login --scheme=basic --secret=user1:mypassword`
```
<= Authenticated as usrqEN5RuPnILY
<= 200 ok
```
`.must set --photo=image.jpg me`
```
seting cred None
<= 304 not modified (me)
```
### Expected behaviour
Avatar is successfully updated
### Actual behaviour
Avatar is not being updated although user has no avatar.
What is interesting, if I authorize using another user that already has an avatar I can successfully upload a new one and get this output using the same image.
```
.must set --photo=image.jpg me
seting cred None
<= 200 ok (me)
```
### Server-side log
```
2020/06/21 03:17:59 Database rethinkdb 111
2020/06/21 03:17:59 Database exists, DB version is correct. All done.
```
### Client-side log
```
Damn-Macbook-Pro:tn-cli kisulken$ Tinode command line client. Version 1.4.0/0.16.5; gRPC/1.25.0.
Server at 'localhost:16060'
<= Connected to server: maxMessageSize: 262144; maxSubscriberCount: 128; build: rethinkdb:v0.16.5; maxFileUploadSize: 4194304; maxTagCount: 16; ver: 0.16
<= 201 created
.must login --scheme=basic --secret=user1:mypassword
<= Authenticated as usrqEN5RuPnILY
<= 200 ok
.must set --photo=image.jpg me
seting cred None
<= 304 not modified (me)
```",
88,https://api.github.com/repos/tinode/chat/issues/477,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/477/labels{/name},https://api.github.com/repos/tinode/chat/issues/477/comments,https://api.github.com/repos/tinode/chat/issues/477/events,https://github.com/tinode/chat/pull/477,642486087,MDExOlB1bGxSZXF1ZXN0NDM3NDg5NDky,477,Pass Session.countryCode to parseSearchQuery for better rewrites.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-21T03:20:24Z,2020-06-22T00:00:56Z,2020-06-22T00:00:56Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/477', 'html_url': 'https://github.com/tinode/chat/pull/477', 'diff_url': 'https://github.com/tinode/chat/pull/477.diff', 'patch_url': 'https://github.com/tinode/chat/pull/477.patch'}","Parse country code from the client provided language/locale.
If it fails, fall back to the default country code specified in tinode config.",
89,https://api.github.com/repos/tinode/chat/issues/476,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/476/labels{/name},https://api.github.com/repos/tinode/chat/issues/476/comments,https://api.github.com/repos/tinode/chat/issues/476/events,https://github.com/tinode/chat/pull/476,641008667,MDExOlB1bGxSZXF1ZXN0NDM2MzA5MTUw,476,Use `AND` of `ORs` for required terms in search queries.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-18T08:20:36Z,2020-06-20T03:56:36Z,2020-06-20T03:56:36Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/476', 'html_url': 'https://github.com/tinode/chat/pull/476', 'diff_url': 'https://github.com/tinode/chat/pull/476.diff', 'patch_url': 'https://github.com/tinode/chat/pull/476.patch'}","When we rewrite tokens in search queries, we want to be able
to search for both the original and the rewritten terms.
Example:
- user `alice` has a tag `basic:alice`
- group `travel` is tagged `travel`
When we search for `travel` we would like to retrieve and return both results.
In order to achieve this, change the search interface as follows by
making required terms as an AND of ORs.",
90,https://api.github.com/repos/tinode/chat/issues/475,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/475/labels{/name},https://api.github.com/repos/tinode/chat/issues/475/comments,https://api.github.com/repos/tinode/chat/issues/475/events,https://github.com/tinode/chat/pull/475,637537790,MDExOlB1bGxSZXF1ZXN0NDMzNTA2NjU5,475,Attempt to rewrite tokens in search queries.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-06-12T07:11:46Z,2020-06-25T07:05:42Z,2020-06-25T07:05:42Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/475', 'html_url': 'https://github.com/tinode/chat/pull/475', 'diff_url': 'https://github.com/tinode/chat/pull/475.diff', 'patch_url': 'https://github.com/tinode/chat/pull/475.patch'}",,
91,https://api.github.com/repos/tinode/chat/issues/474,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/474/labels{/name},https://api.github.com/repos/tinode/chat/issues/474/comments,https://api.github.com/repos/tinode/chat/issues/474/events,https://github.com/tinode/chat/issues/474,637406865,MDU6SXNzdWU2Mzc0MDY4NjU=,474,can not load more messages,"{'login': 'lamncn', 'id': 63385248, 'node_id': 'MDQ6VXNlcjYzMzg1MjQ4', 'avatar_url': 'https://avatars0.githubusercontent.com/u/63385248?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/lamncn', 'html_url': 'https://github.com/lamncn', 'followers_url': 'https://api.github.com/users/lamncn/followers', 'following_url': 'https://api.github.com/users/lamncn/following{/other_user}', 'gists_url': 'https://api.github.com/users/lamncn/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/lamncn/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/lamncn/subscriptions', 'organizations_url': 'https://api.github.com/users/lamncn/orgs', 'repos_url': 'https://api.github.com/users/lamncn/repos', 'events_url': 'https://api.github.com/users/lamncn/events{/privacy}', 'received_events_url': 'https://api.github.com/users/lamncn/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977920, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjA=', 'url': 'https://api.github.com/repos/tinode/chat/labels/bug', 'name': 'bug', 'color': 'fc2929', 'default': True, 'description': None}]",closed,False,,[],,7,2020-06-12T00:37:49Z,2020-06-23T11:56:57Z,2020-06-23T11:56:57Z,NONE,,,"# If you are not reporting a bug or requesting a feature, please post to https://groups.google.com/d/forum/tinode instead.
### Subject of the issue
Can not load more messages
### Is this a bug report of a feature request?
- [x ] Bug report
- [ ] Feature request
### Your environment
#### Server-side
- [x ] api.tinode.co
- [ ] Your own setup:
* platform (Windows, Mac, Linux etc)
* version of tinode server, e.g. `0.15.2-rc3`
* database backend
#### Client-side
- [ ] TinodeWeb/tinodejs: javascript client
* Browser make and version.
- [ x] Tindroid: Android app
* Android API level (e.g. 25).
* Emulator or hardware, if hardware describe it.
- [ ] tn-cli
* Python version
- [ ] Chatbot
* Python version
- Version of the client, e.g. `0.15.1`
### Steps to reproduce
I can not load more messages from android app, only 24 latest messages. web app working fine.
",
92,https://api.github.com/repos/tinode/chat/issues/473,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/473/labels{/name},https://api.github.com/repos/tinode/chat/issues/473/comments,https://api.github.com/repos/tinode/chat/issues/473/events,https://github.com/tinode/chat/pull/473,632281853,MDExOlB1bGxSZXF1ZXN0NDI5MDQ1OTg2,473,Support for background sessions in tn-cli,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-06T07:49:27Z,2020-06-09T11:56:14Z,2020-06-07T06:46:30Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/473', 'html_url': 'https://github.com/tinode/chat/pull/473', 'diff_url': 'https://github.com/tinode/chat/pull/473.diff', 'patch_url': 'https://github.com/tinode/chat/pull/473.patch'}",Python bindings regenerated from the updated proto file.,
93,https://api.github.com/repos/tinode/chat/issues/472,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/472/labels{/name},https://api.github.com/repos/tinode/chat/issues/472/comments,https://api.github.com/repos/tinode/chat/issues/472/events,https://github.com/tinode/chat/pull/472,631671345,MDExOlB1bGxSZXF1ZXN0NDI4NTE2MjU5,472,Broadcast eviction to all nodes when user is deleted,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-05T15:05:38Z,2020-06-06T06:45:36Z,2020-06-06T06:45:36Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/472', 'html_url': 'https://github.com/tinode/chat/pull/472', 'diff_url': 'https://github.com/tinode/chat/pull/472.diff', 'patch_url': 'https://github.com/tinode/chat/pull/472.patch'}","When the user is deleted, all user's sessions must be terminated on all nodes.",
94,https://api.github.com/repos/tinode/chat/issues/471,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/471/labels{/name},https://api.github.com/repos/tinode/chat/issues/471/comments,https://api.github.com/repos/tinode/chat/issues/471/events,https://github.com/tinode/chat/issues/471,630733132,MDU6SXNzdWU2MzA3MzMxMzI=,471,Make server private,"{'login': 'saslv', 'id': 1732073, 'node_id': 'MDQ6VXNlcjE3MzIwNzM=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1732073?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/saslv', 'html_url': 'https://github.com/saslv', 'followers_url': 'https://api.github.com/users/saslv/followers', 'following_url': 'https://api.github.com/users/saslv/following{/other_user}', 'gists_url': 'https://api.github.com/users/saslv/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/saslv/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/saslv/subscriptions', 'organizations_url': 'https://api.github.com/users/saslv/orgs', 'repos_url': 'https://api.github.com/users/saslv/repos', 'events_url': 'https://api.github.com/users/saslv/events{/privacy}', 'received_events_url': 'https://api.github.com/users/saslv/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-06-04T11:16:03Z,2020-06-04T11:41:49Z,2020-06-04T11:41:49Z,NONE,,,"### Subject of the issue
Is there a possibility to restrict public registration and allow login only by REST?
### Is this a bug report of a feature request?
- [ ] Bug report
- [x] Feature request
### Your environment
#### Server-side
- [ ] api.tinode.co
- [x] Your own setup:
* platform any
#### Client-side
Any",
95,https://api.github.com/repos/tinode/chat/issues/470,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/470/labels{/name},https://api.github.com/repos/tinode/chat/issues/470/comments,https://api.github.com/repos/tinode/chat/issues/470/events,https://github.com/tinode/chat/pull/470,629026704,MDExOlB1bGxSZXF1ZXN0NDI2NDQ2Mjk4,470,Code complete,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,8,2020-06-02T08:55:55Z,2020-06-04T05:20:38Z,2020-06-04T05:20:38Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/470', 'html_url': 'https://github.com/tinode/chat/pull/470', 'diff_url': 'https://github.com/tinode/chat/pull/470.diff', 'patch_url': 'https://github.com/tinode/chat/pull/470.patch'}",Code complete and bugs that I could find are fixed.,
96,https://api.github.com/repos/tinode/chat/issues/469,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/469/labels{/name},https://api.github.com/repos/tinode/chat/issues/469/comments,https://api.github.com/repos/tinode/chat/issues/469/events,https://github.com/tinode/chat/issues/469,628359083,MDU6SXNzdWU2MjgzNTkwODM=,469,tinode-mysql failed attempts to connect as root,"{'login': 'Losmoges', 'id': 15944156, 'node_id': 'MDQ6VXNlcjE1OTQ0MTU2', 'avatar_url': 'https://avatars2.githubusercontent.com/u/15944156?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Losmoges', 'html_url': 'https://github.com/Losmoges', 'followers_url': 'https://api.github.com/users/Losmoges/followers', 'following_url': 'https://api.github.com/users/Losmoges/following{/other_user}', 'gists_url': 'https://api.github.com/users/Losmoges/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Losmoges/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Losmoges/subscriptions', 'organizations_url': 'https://api.github.com/users/Losmoges/orgs', 'repos_url': 'https://api.github.com/users/Losmoges/repos', 'events_url': 'https://api.github.com/users/Losmoges/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Losmoges/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977925, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/question', 'name': 'question', 'color': 'cc317c', 'default': True, 'description': None}]",closed,False,,[],,2,2020-06-01T11:17:30Z,2020-06-01T11:57:49Z,2020-06-01T11:57:49Z,NONE,,,"### Subject of the issue
Just to be clear, I do not have any issue with running the application. This issue is about the logs.
Errors appear in logs when I want to disallow connecting to mysql as root. I may want to share a database with another application in the future. This seems to work by changing the env var MYSQL_DSN for the docker container. Even though the migration and app itsself seems to be working, something keeps trying to connect to mysql as root.
I have been looking through the code but I can't seem to find the culprit. The mysql adapter class seems to initialize on the proper config according to the logs.
### Is this a bug report of a feature request?
- [x] Bug report
- [ ] Feature request
### Your environment
#### Server-side
- [ ] api.tinode.co
- [x] Your own setup:
* platform: Docker for Windows
* version of tinode server: tinode/tinode-mysql:0.16.5
* database backend: mysql
#### Client-side
N/A
### Steps to reproduce
Using docker-compose up
docker-compose.yml
```
version: ""3""
networks:
tinode:
services:
mysql:
image: mysql:5.7
networks:
- tinode
healthcheck:
test: [""CMD"", ""mysqladmin"", ""ping"", ""-h"", ""localhost""]
interval: 4s
retries: 12
environment:
MYSQL_RANDOM_ROOT_PASSWORD: aye
MYSQL_DATABASE: tinode
MYSQL_USER: tinode
MYSQL_PASSWORD: tinode
tinode:
depends_on:
- mysql
image: tinode/tinode-mysql:0.16.5
networks:
- tinode
ports:
- ""6060:6060""
restart: ""on-failure""
environment:
MYSQL_DSN: tinode:tinode@tcp(mysql)/tinode
```
Validate the working.config in the running container..
```
$ docker exec tinode_tinode_1 grep -A 2 mysql working.config
""use_adapter"": ""mysql"",
""adapters"": {
""mysql"": {
""database"": ""tinode"",
""dsn"": ""tinode:tinode@tcp(mysql)/tinode?parseTime=true&collation=utf8mb4_unicode_ci""
},
""rethinkdb"": {
```
### Expected behaviour
Silent logs after initial setup
### Actual behaviour
The mysql container keeps logging ""access denied"" on root login attempts
### Server-side log
Container logs
```
[....] // regular mysql startup stuff
mysql_1 | 2020-06-01T11:12:02.669247Z 0 [Note] mysqld: ready for connections.
mysql_1 | Version: '5.7.30' socket: '/var/run/mysqld/mysqld.sock' port: 3306 MySQL Community Server (GPL)
mysql_1 | 2020-06-01T11:12:05.346102Z 2 [Note] Access denied for user 'root'@'localhost' (using password: NO)
mysql_1 | 2020-06-01T11:12:09.463147Z 3 [Note] Access denied for user 'root'@'localhost' (using password: NO)
tinode_1 | 2020/06/01 11:12:12 Database mysql 111
tinode_1 | 2020/06/01 11:12:12 Database not found. Creating.
mysql_1 | 2020-06-01T11:12:13.586998Z 6 [Note] Access denied for user 'root'@'localhost' (using password: NO)
tinode_1 | 2020/06/01 11:12:14 Database initialized
tinode_1 | 2020/06/01 11:12:14 Generating users...
tinode_1 | 2020/06/01 11:12:16 Generating group topics...
tinode_1 | 2020/06/01 11:12:16 Generating P2P subscriptions...
tinode_1 | 2020/06/01 11:12:16 Generating group subscriptions...
tinode_1 | 2020/06/01 11:12:16 Inserting messages...
mysql_1 | 2020-06-01T11:12:17.743814Z 7 [Note] Access denied for user 'root'@'localhost' (using password: NO)
tinode_1 | 2020/06/01 11:12:21 Inserting forms as tino dkiK7JyX-fM
mysql_1 | 2020-06-01T11:12:21.891016Z 8 [Note] Access denied for user 'root'@'localhost' (using password: NO)
tinode_1 | 2020/06/01 11:12:22 All done.
mysql_1 | 2020-06-01T11:12:22.193397Z 5 [Note] Aborted connection 5 to db: 'tinode' user: 'tinode' host: '172.22.0.3' (Got an error reading communication packets)
mysql_1 | 2020-06-01T11:12:26.087594Z 10 [Note] Access denied for user 'root'@'localhost' (using password: NO)
mysql_1 | 2020-06-01T11:12:30.215332Z 11 [Note] Access denied for user 'root'@'localhost' (using password: NO)
mysql_1 | 2020-06-01T11:12:34.333732Z 12 [Note] Access denied for user 'root'@'localhost' (using password: NO)
[...] // this goes on forever
```
### Client-side log
N/A
",
97,https://api.github.com/repos/tinode/chat/issues/468,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/468/labels{/name},https://api.github.com/repos/tinode/chat/issues/468/comments,https://api.github.com/repos/tinode/chat/issues/468/events,https://github.com/tinode/chat/pull/468,627855321,MDExOlB1bGxSZXF1ZXN0NDI1NTQwMzU0,468,renamed to midnight:,"{'login': 'AnkilP', 'id': 13092067, 'node_id': 'MDQ6VXNlcjEzMDkyMDY3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/13092067?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/AnkilP', 'html_url': 'https://github.com/AnkilP', 'followers_url': 'https://api.github.com/users/AnkilP/followers', 'following_url': 'https://api.github.com/users/AnkilP/following{/other_user}', 'gists_url': 'https://api.github.com/users/AnkilP/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/AnkilP/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/AnkilP/subscriptions', 'organizations_url': 'https://api.github.com/users/AnkilP/orgs', 'repos_url': 'https://api.github.com/users/AnkilP/repos', 'events_url': 'https://api.github.com/users/AnkilP/events{/privacy}', 'received_events_url': 'https://api.github.com/users/AnkilP/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-05-31T00:20:23Z,2020-05-31T00:21:40Z,2020-05-31T00:21:40Z,NONE,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/468', 'html_url': 'https://github.com/tinode/chat/pull/468', 'diff_url': 'https://github.com/tinode/chat/pull/468.diff', 'patch_url': 'https://github.com/tinode/chat/pull/468.patch'}",removed tinode naming convention for custom impl,
98,https://api.github.com/repos/tinode/chat/issues/467,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/467/labels{/name},https://api.github.com/repos/tinode/chat/issues/467/comments,https://api.github.com/repos/tinode/chat/issues/467/events,https://github.com/tinode/chat/issues/467,627038489,MDU6SXNzdWU2MjcwMzg0ODk=,467,Bug reporting,"{'login': 'yte0130', 'id': 63913164, 'node_id': 'MDQ6VXNlcjYzOTEzMTY0', 'avatar_url': 'https://avatars2.githubusercontent.com/u/63913164?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/yte0130', 'html_url': 'https://github.com/yte0130', 'followers_url': 'https://api.github.com/users/yte0130/followers', 'following_url': 'https://api.github.com/users/yte0130/following{/other_user}', 'gists_url': 'https://api.github.com/users/yte0130/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/yte0130/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/yte0130/subscriptions', 'organizations_url': 'https://api.github.com/users/yte0130/orgs', 'repos_url': 'https://api.github.com/users/yte0130/repos', 'events_url': 'https://api.github.com/users/yte0130/events{/privacy}', 'received_events_url': 'https://api.github.com/users/yte0130/received_events', 'type': 'User', 'site_admin': False}","[{'id': 910591285, 'node_id': 'MDU6TGFiZWw5MTA1OTEyODU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/incomplete', 'name': 'incomplete', 'color': 'ff6633', 'default': False, 'description': ''}]",closed,False,,[],,1,2020-05-29T06:44:18Z,2020-05-29T07:01:29Z,2020-05-29T07:01:18Z,NONE,,,"bug reporting
1. When our team used the iOS version of Tinode, some iPhones were unable to show the user's connection.
2. When looking for a password, the password was changed without any indication when pressing the reset button. I hope there is a notification when I press the reset button.
3. send typing notifications function did not work properly on all of our iPhones.",
99,https://api.github.com/repos/tinode/chat/issues/466,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/466/labels{/name},https://api.github.com/repos/tinode/chat/issues/466/comments,https://api.github.com/repos/tinode/chat/issues/466/events,https://github.com/tinode/chat/issues/466,625765376,MDU6SXNzdWU2MjU3NjUzNzY=,466,Feature requests,"{'login': 'tgt5248', 'id': 63574571, 'node_id': 'MDQ6VXNlcjYzNTc0NTcx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/63574571?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/tgt5248', 'html_url': 'https://github.com/tgt5248', 'followers_url': 'https://api.github.com/users/tgt5248/followers', 'following_url': 'https://api.github.com/users/tgt5248/following{/other_user}', 'gists_url': 'https://api.github.com/users/tgt5248/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/tgt5248/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/tgt5248/subscriptions', 'organizations_url': 'https://api.github.com/users/tgt5248/orgs', 'repos_url': 'https://api.github.com/users/tgt5248/repos', 'events_url': 'https://api.github.com/users/tgt5248/events{/privacy}', 'received_events_url': 'https://api.github.com/users/tgt5248/received_events', 'type': 'User', 'site_admin': False}","[{'id': 811090999, 'node_id': 'MDU6TGFiZWw4MTEwOTA5OTk=', 'url': 'https://api.github.com/repos/tinode/chat/labels/feature%20request', 'name': 'feature request', 'color': 'edcf8b', 'default': False, 'description': None}]",open,False,,[],,3,2020-05-27T14:50:23Z,2020-06-11T06:29:24Z,,NONE,,,"### - Feature request
I am writing down the function that our team want to add while using tinode. Our team used the tinode iOS version.
1. Find friends by ID and phone number
I think it is inconvenient to find a friend with the user code.
2. Change user code to copyable
When I added a friend, I experienced inconvenience because the user code was not copied. I hope the user code can be copied.
3. Segmentation of sending files, such as videos and voice messages
Currently, tinode is categorized as sending image files and sending files. user can send videos, documents, and voice messages from Send File, but I think it's convenient to classify each item.
4. Description of the error code
When an error code appears, only the code number is displayed and the error is not known. In this case, I want to know in detail what kind of error.
5. Synchronize phonebook
I would like to add friends automatically when the user using tinode is in the phone book.
6. Voice Talk Features
7. Video chat function
8. Add a birthday
I want to add a birthday to my profile so others can see it.
9.Add Chatbot Function to iOS/ Android
10. Add Emojis or stickers
Thanks!
",
100,https://api.github.com/repos/tinode/chat/issues/465,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/465/labels{/name},https://api.github.com/repos/tinode/chat/issues/465/comments,https://api.github.com/repos/tinode/chat/issues/465/events,https://github.com/tinode/chat/pull/465,624169975,MDExOlB1bGxSZXF1ZXN0NDIyNjQ0NjE5,465,mongo adapter tls support,"{'login': 'Googlom', 'id': 36107508, 'node_id': 'MDQ6VXNlcjM2MTA3NTA4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/36107508?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Googlom', 'html_url': 'https://github.com/Googlom', 'followers_url': 'https://api.github.com/users/Googlom/followers', 'following_url': 'https://api.github.com/users/Googlom/following{/other_user}', 'gists_url': 'https://api.github.com/users/Googlom/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Googlom/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Googlom/subscriptions', 'organizations_url': 'https://api.github.com/users/Googlom/orgs', 'repos_url': 'https://api.github.com/users/Googlom/repos', 'events_url': 'https://api.github.com/users/Googlom/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Googlom/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-05-25T09:24:47Z,2020-05-25T11:07:21Z,2020-05-25T09:33:34Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/465', 'html_url': 'https://github.com/tinode/chat/pull/465', 'diff_url': 'https://github.com/tinode/chat/pull/465.diff', 'patch_url': 'https://github.com/tinode/chat/pull/465.patch'}",#464 ,
101,https://api.github.com/repos/tinode/chat/issues/464,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/464/labels{/name},https://api.github.com/repos/tinode/chat/issues/464/comments,https://api.github.com/repos/tinode/chat/issues/464/events,https://github.com/tinode/chat/issues/464,623716948,MDU6SXNzdWU2MjM3MTY5NDg=,464,mongodb ssl support,"{'login': 'afoninsky', 'id': 15193941, 'node_id': 'MDQ6VXNlcjE1MTkzOTQx', 'avatar_url': 'https://avatars2.githubusercontent.com/u/15193941?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/afoninsky', 'html_url': 'https://github.com/afoninsky', 'followers_url': 'https://api.github.com/users/afoninsky/followers', 'following_url': 'https://api.github.com/users/afoninsky/following{/other_user}', 'gists_url': 'https://api.github.com/users/afoninsky/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/afoninsky/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/afoninsky/subscriptions', 'organizations_url': 'https://api.github.com/users/afoninsky/orgs', 'repos_url': 'https://api.github.com/users/afoninsky/repos', 'events_url': 'https://api.github.com/users/afoninsky/events{/privacy}', 'received_events_url': 'https://api.github.com/users/afoninsky/received_events', 'type': 'User', 'site_admin': False}","[{'id': 811090999, 'node_id': 'MDU6TGFiZWw4MTEwOTA5OTk=', 'url': 'https://api.github.com/repos/tinode/chat/labels/feature%20request', 'name': 'feature request', 'color': 'edcf8b', 'default': False, 'description': None}]",closed,False,,[],,15,2020-05-23T18:33:33Z,2020-08-30T18:30:26Z,2020-06-25T08:00:25Z,NONE,,,"Feature request?
**Problem:**
Unable to connect to mongodb using enrypted connection.
**Use case:**
I have URI generated by MongoDB Atlas in following format:
`
mongodb://main-staging-shard-00-00.***.gcp.mongodb.net:27017,main-staging-shard-00-01.***.gcp.mongodb.net:27017,main-staging-shard-00-02.***.gcp.mongodb.net:27017/?ssl=true&authSource=admin&replicaSet=main-staging-shard-0
`
**Possible solution:**
Add possibility to pass SSL flag using config:
https://github.com/tinode/chat/blob/master/server/db/mongodb/adapter.go#L47-L56
**Version:**
docker pull tinode/tinode-mongodb:0.16.5",
102,https://api.github.com/repos/tinode/chat/issues/463,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/463/labels{/name},https://api.github.com/repos/tinode/chat/issues/463/comments,https://api.github.com/repos/tinode/chat/issues/463/events,https://github.com/tinode/chat/pull/463,623703674,MDExOlB1bGxSZXF1ZXN0NDIyMzAyMjMz,463,Add documentation about WAIT_FOR,"{'login': 'arseniybanayev', 'id': 6172879, 'node_id': 'MDQ6VXNlcjYxNzI4Nzk=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/6172879?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/arseniybanayev', 'html_url': 'https://github.com/arseniybanayev', 'followers_url': 'https://api.github.com/users/arseniybanayev/followers', 'following_url': 'https://api.github.com/users/arseniybanayev/following{/other_user}', 'gists_url': 'https://api.github.com/users/arseniybanayev/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/arseniybanayev/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/arseniybanayev/subscriptions', 'organizations_url': 'https://api.github.com/users/arseniybanayev/orgs', 'repos_url': 'https://api.github.com/users/arseniybanayev/repos', 'events_url': 'https://api.github.com/users/arseniybanayev/events{/privacy}', 'received_events_url': 'https://api.github.com/users/arseniybanayev/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-05-23T17:20:07Z,2020-05-23T17:24:20Z,2020-05-23T17:24:14Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/463', 'html_url': 'https://github.com/tinode/chat/pull/463', 'diff_url': 'https://github.com/tinode/chat/pull/463.diff', 'patch_url': 'https://github.com/tinode/chat/pull/463.patch'}",,
103,https://api.github.com/repos/tinode/chat/issues/462,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/462/labels{/name},https://api.github.com/repos/tinode/chat/issues/462/comments,https://api.github.com/repos/tinode/chat/issues/462/events,https://github.com/tinode/chat/pull/462,623179194,MDExOlB1bGxSZXF1ZXN0NDIxODk3MjMx,462,Translation of README Documents into Korean,"{'login': 'kimtaeyoung-98', 'id': 63800086, 'node_id': 'MDQ6VXNlcjYzODAwMDg2', 'avatar_url': 'https://avatars0.githubusercontent.com/u/63800086?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/kimtaeyoung-98', 'html_url': 'https://github.com/kimtaeyoung-98', 'followers_url': 'https://api.github.com/users/kimtaeyoung-98/followers', 'following_url': 'https://api.github.com/users/kimtaeyoung-98/following{/other_user}', 'gists_url': 'https://api.github.com/users/kimtaeyoung-98/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/kimtaeyoung-98/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/kimtaeyoung-98/subscriptions', 'organizations_url': 'https://api.github.com/users/kimtaeyoung-98/orgs', 'repos_url': 'https://api.github.com/users/kimtaeyoung-98/repos', 'events_url': 'https://api.github.com/users/kimtaeyoung-98/events{/privacy}', 'received_events_url': 'https://api.github.com/users/kimtaeyoung-98/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-05-22T12:40:06Z,2020-05-22T15:49:03Z,2020-05-22T15:49:03Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/462', 'html_url': 'https://github.com/tinode/chat/pull/462', 'diff_url': 'https://github.com/tinode/chat/pull/462.diff', 'patch_url': 'https://github.com/tinode/chat/pull/462.patch'}","I think the README document is something that many developers read when they first encounter this project. We made README documents in Korean to attract Korean developers. If you can't reflect this contribution, please let me know why. Thank you.",
104,https://api.github.com/repos/tinode/chat/issues/461,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/461/labels{/name},https://api.github.com/repos/tinode/chat/issues/461/comments,https://api.github.com/repos/tinode/chat/issues/461/events,https://github.com/tinode/chat/issues/461,622191706,MDU6SXNzdWU2MjIxOTE3MDY=,461,group message,"{'login': 'hhy5861', 'id': 8274977, 'node_id': 'MDQ6VXNlcjgyNzQ5Nzc=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/8274977?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/hhy5861', 'html_url': 'https://github.com/hhy5861', 'followers_url': 'https://api.github.com/users/hhy5861/followers', 'following_url': 'https://api.github.com/users/hhy5861/following{/other_user}', 'gists_url': 'https://api.github.com/users/hhy5861/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/hhy5861/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/hhy5861/subscriptions', 'organizations_url': 'https://api.github.com/users/hhy5861/orgs', 'repos_url': 'https://api.github.com/users/hhy5861/repos', 'events_url': 'https://api.github.com/users/hhy5861/events{/privacy}', 'received_events_url': 'https://api.github.com/users/hhy5861/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-05-21T01:58:36Z,2020-05-21T05:27:34Z,2020-05-21T05:27:33Z,NONE,,,"version: 0.16.5
issue:
I read the code. Does group messaging support cluster mode yet?",
105,https://api.github.com/repos/tinode/chat/issues/460,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/460/labels{/name},https://api.github.com/repos/tinode/chat/issues/460/comments,https://api.github.com/repos/tinode/chat/issues/460/events,https://github.com/tinode/chat/pull/460,619673330,MDExOlB1bGxSZXF1ZXN0NDE5MDk2NTY3,460,More disambiguation and reduced amount of copying,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-05-17T11:05:33Z,2020-05-18T05:20:27Z,2020-05-18T05:20:27Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/460', 'html_url': 'https://github.com/tinode/chat/pull/460', 'diff_url': 'https://github.com/tinode/chat/pull/460.diff', 'patch_url': 'https://github.com/tinode/chat/pull/460.patch'}",Made a bunch of fields in ClientComMessage serializable for intra-cluster communication and consequently they no longer have to be copied or inferred. ,
106,https://api.github.com/repos/tinode/chat/issues/459,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/459/labels{/name},https://api.github.com/repos/tinode/chat/issues/459/comments,https://api.github.com/repos/tinode/chat/issues/459/events,https://github.com/tinode/chat/pull/459,619469269,MDExOlB1bGxSZXF1ZXN0NDE4OTY1Mjcw,459,Disambiguation and flattening out data structures,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-05-16T13:01:50Z,2020-05-17T06:51:15Z,2020-05-17T06:51:14Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/459', 'html_url': 'https://github.com/tinode/chat/pull/459', 'diff_url': 'https://github.com/tinode/chat/pull/459.diff', 'patch_url': 'https://github.com/tinode/chat/pull/459.patch'}","* ProxyTopicData may be confused with `{data}` package. Renamed it to `ProxyTopicMessage`.
* `ProxyResponse` merged into `ClusterResponse`.
* Removed a copy of `ClientComMessage` from `sessionOverrides`. Left only those fields which are actually used instead.
* Renamed `ClientComMessage.topic` to `.original` to disambiguate it from expanded topic name.
",
107,https://api.github.com/repos/tinode/chat/issues/458,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/458/labels{/name},https://api.github.com/repos/tinode/chat/issues/458/comments,https://api.github.com/repos/tinode/chat/issues/458/events,https://github.com/tinode/chat/pull/458,618735557,MDExOlB1bGxSZXF1ZXN0NDE4NDA1MzI1,458,"On rehashing, shut down proxy topics when the master moves in.","{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-05-15T06:37:54Z,2020-06-09T11:56:48Z,2020-05-15T06:56:28Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/458', 'html_url': 'https://github.com/tinode/chat/pull/458', 'diff_url': 'https://github.com/tinode/chat/pull/458.diff', 'patch_url': 'https://github.com/tinode/chat/pull/458.patch'}","This is to handle the following situation:
upon rehasing event, the topic master moves to another node
which already hosts its proxy. The proxy needs to be shutdown.",
108,https://api.github.com/repos/tinode/chat/issues/457,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/457/labels{/name},https://api.github.com/repos/tinode/chat/issues/457/comments,https://api.github.com/repos/tinode/chat/issues/457/events,https://github.com/tinode/chat/pull/457,618731547,MDExOlB1bGxSZXF1ZXN0NDE4NDAyMjM4,457,"On rehashing, shut down proxy topics when the master moves in.","{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-05-15T06:28:51Z,2020-05-15T06:47:31Z,2020-05-15T06:37:11Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/457', 'html_url': 'https://github.com/tinode/chat/pull/457', 'diff_url': 'https://github.com/tinode/chat/pull/457.diff', 'patch_url': 'https://github.com/tinode/chat/pull/457.patch'}","This is to handle the following situation:
upon rehasing event, the topic master moves to another node
which already hosts its proxy. The proxy needs to be shutdown.",
109,https://api.github.com/repos/tinode/chat/issues/456,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/456/labels{/name},https://api.github.com/repos/tinode/chat/issues/456/comments,https://api.github.com/repos/tinode/chat/issues/456/events,https://github.com/tinode/chat/pull/456,618100982,MDExOlB1bGxSZXF1ZXN0NDE3ODkxMjA1,456,fix click_action in fcm messages for android,"{'login': 'Googlom', 'id': 36107508, 'node_id': 'MDQ6VXNlcjM2MTA3NTA4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/36107508?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Googlom', 'html_url': 'https://github.com/Googlom', 'followers_url': 'https://api.github.com/users/Googlom/followers', 'following_url': 'https://api.github.com/users/Googlom/following{/other_user}', 'gists_url': 'https://api.github.com/users/Googlom/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Googlom/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Googlom/subscriptions', 'organizations_url': 'https://api.github.com/users/Googlom/orgs', 'repos_url': 'https://api.github.com/users/Googlom/repos', 'events_url': 'https://api.github.com/users/Googlom/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Googlom/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-05-14T10:07:41Z,2020-05-25T09:26:49Z,2020-05-14T10:18:52Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/456', 'html_url': 'https://github.com/tinode/chat/pull/456', 'diff_url': 'https://github.com/tinode/chat/pull/456.diff', 'patch_url': 'https://github.com/tinode/chat/pull/456.patch'}",original PR #452,
110,https://api.github.com/repos/tinode/chat/issues/455,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/455/labels{/name},https://api.github.com/repos/tinode/chat/issues/455/comments,https://api.github.com/repos/tinode/chat/issues/455/events,https://github.com/tinode/chat/issues/455,616482388,MDU6SXNzdWU2MTY0ODIzODg=,455,Users last seen not updated when connection lost,"{'login': 'Googlom', 'id': 36107508, 'node_id': 'MDQ6VXNlcjM2MTA3NTA4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/36107508?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Googlom', 'html_url': 'https://github.com/Googlom', 'followers_url': 'https://api.github.com/users/Googlom/followers', 'following_url': 'https://api.github.com/users/Googlom/following{/other_user}', 'gists_url': 'https://api.github.com/users/Googlom/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Googlom/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Googlom/subscriptions', 'organizations_url': 'https://api.github.com/users/Googlom/orgs', 'repos_url': 'https://api.github.com/users/Googlom/repos', 'events_url': 'https://api.github.com/users/Googlom/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Googlom/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-05-12T08:55:47Z,2020-05-12T09:04:06Z,2020-05-12T09:02:34Z,CONTRIBUTOR,,,"When user loses connection (kills app in task manager, internet disconnected, etc.) **last seen** not updated. Db adapters `UserUpdate()` method is receieving **uid = 0**",
111,https://api.github.com/repos/tinode/chat/issues/454,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/454/labels{/name},https://api.github.com/repos/tinode/chat/issues/454/comments,https://api.github.com/repos/tinode/chat/issues/454/events,https://github.com/tinode/chat/issues/454,616343333,MDU6SXNzdWU2MTYzNDMzMzM=,454,Always online users,"{'login': 'acidlynx', 'id': 958429, 'node_id': 'MDQ6VXNlcjk1ODQyOQ==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/958429?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/acidlynx', 'html_url': 'https://github.com/acidlynx', 'followers_url': 'https://api.github.com/users/acidlynx/followers', 'following_url': 'https://api.github.com/users/acidlynx/following{/other_user}', 'gists_url': 'https://api.github.com/users/acidlynx/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/acidlynx/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/acidlynx/subscriptions', 'organizations_url': 'https://api.github.com/users/acidlynx/orgs', 'repos_url': 'https://api.github.com/users/acidlynx/repos', 'events_url': 'https://api.github.com/users/acidlynx/events{/privacy}', 'received_events_url': 'https://api.github.com/users/acidlynx/received_events', 'type': 'User', 'site_admin': False}","[{'id': 1133870256, 'node_id': 'MDU6TGFiZWwxMTMzODcwMjU2', 'url': 'https://api.github.com/repos/tinode/chat/labels/cannot%20reproduce', 'name': 'cannot reproduce', 'color': '0052cc', 'default': False, 'description': ''}]",closed,False,,[],,14,2020-05-12T04:09:41Z,2020-07-19T03:21:08Z,2020-07-19T03:21:08Z,NONE,,,"### Subject of the issue
Hello!
I have several users that online all the time. If I subscribe to topic ""me"" to them, I get ""{pres {topic=me what=on}"" every time I start session of my user.
All that users are really offline (we have only one point of access - our mobile app). But I get report about their wrong online status.
### Is this a bug report of a feature request?
- [x] Bug report
- [ ] Feature request
### Your environment
#### Server-side
- [ ] api.tinode.co
- [x] Your own setup:
* Linux
* https://chat-web.staging.streamlayer.io
* RethinkDB
#### Client-side
- [x] TinodeWeb/tinodejs: javascript client
* https://chat-web.staging.streamlayer.io
- [x] our version of mobile apps, that uses api via gRPC
- [ ] Tindroid: Android app
* Android API level (e.g. 25).
* Emulator or hardware, if hardware describe it.
- [ ] tn-cli
* Python version
- [ ] Chatbot
* Python version
- Version of the client, e.g. `0.16`
### Steps to reproduce
Please, ask me for credentials to web interface and RethinkDB. If we log in to webChat we get wrong online status for 2 users.
### Expected behaviour
Get correct online status (online and offline)
### Actual behaviour
Users are always online
### Server-side log
Copy server-side log here. You may also attach it to the issue as a file.
### Client-side log
Copy client-side log here (Android logcat, Javascript console, etc). You may also attach it to the issue as a file.
Client side log is here.
[tinode-client.log](https://github.com/tinode/chat/files/4613329/tinode-client.log)
",
112,https://api.github.com/repos/tinode/chat/issues/453,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/453/labels{/name},https://api.github.com/repos/tinode/chat/issues/453/comments,https://api.github.com/repos/tinode/chat/issues/453/events,https://github.com/tinode/chat/issues/453,616273662,MDU6SXNzdWU2MTYyNzM2NjI=,453,"len(availableAdapter)==0, but my tinode.conf uses mysql","{'login': 'CoolJie2001', 'id': 3133908, 'node_id': 'MDQ6VXNlcjMxMzM5MDg=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/3133908?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/CoolJie2001', 'html_url': 'https://github.com/CoolJie2001', 'followers_url': 'https://api.github.com/users/CoolJie2001/followers', 'following_url': 'https://api.github.com/users/CoolJie2001/following{/other_user}', 'gists_url': 'https://api.github.com/users/CoolJie2001/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/CoolJie2001/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/CoolJie2001/subscriptions', 'organizations_url': 'https://api.github.com/users/CoolJie2001/orgs', 'repos_url': 'https://api.github.com/users/CoolJie2001/repos', 'events_url': 'https://api.github.com/users/CoolJie2001/events{/privacy}', 'received_events_url': 'https://api.github.com/users/CoolJie2001/received_events', 'type': 'User', 'site_admin': False}","[{'id': 1234650124, 'node_id': 'MDU6TGFiZWwxMjM0NjUwMTI0', 'url': 'https://api.github.com/repos/tinode/chat/labels/working%20as%20intended', 'name': 'working as intended', 'color': 'adff60', 'default': False, 'description': ''}]",closed,False,,[],,3,2020-05-12T00:31:24Z,2020-05-12T12:39:32Z,2020-05-12T12:39:32Z,NONE,,,"### Subject of the issue
Using Visual Studio Code Debug tinode server, tinode server reports that mysql adapter is not available in this binary
### Is this a bug report of a feature request?
- [x] Feature request
### Your environment
#### Server-side
* Windows 10 Enterprise Edition
* tinode server, `0.16.5`
* MySQL 8.0.18 Community Server
### Steps to reproduce
I made it at tinode. conf:
""store_config"": {
...
""use_adapter"": ""mysql"",
""adapters"": {
""mysql"": {
""dsn"": ""root:password@tcp(localhost)/tinode?parseTime=true&collation=utf8mb4_unicode_ci"",
""database"": ""tinode""
}
...
}
}
### Actual behaviour
I'm using Visual Studio Code 1.45.0
The Debug main.go
The program will fail to execute at line 45 of store.go because availableAdapters[config.UseAdapter] return ""Failed to connect to DB: store: mysql adapter is not available in this binary""
### Server-side log
""Failed to connect to DB: store: mysql adapter is not available in this binary""",
113,https://api.github.com/repos/tinode/chat/issues/452,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/452/labels{/name},https://api.github.com/repos/tinode/chat/issues/452/comments,https://api.github.com/repos/tinode/chat/issues/452/events,https://github.com/tinode/chat/pull/452,615954622,MDExOlB1bGxSZXF1ZXN0NDE2MTYyMDA0,452,fix click_action in fcm messages for android,"{'login': 'Googlom', 'id': 36107508, 'node_id': 'MDQ6VXNlcjM2MTA3NTA4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/36107508?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Googlom', 'html_url': 'https://github.com/Googlom', 'followers_url': 'https://api.github.com/users/Googlom/followers', 'following_url': 'https://api.github.com/users/Googlom/following{/other_user}', 'gists_url': 'https://api.github.com/users/Googlom/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Googlom/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Googlom/subscriptions', 'organizations_url': 'https://api.github.com/users/Googlom/orgs', 'repos_url': 'https://api.github.com/users/Googlom/repos', 'events_url': 'https://api.github.com/users/Googlom/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Googlom/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,4,2020-05-11T15:01:24Z,2020-05-14T10:09:47Z,2020-05-14T10:08:02Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/452', 'html_url': 'https://github.com/tinode/chat/pull/452', 'diff_url': 'https://github.com/tinode/chat/pull/452.diff', 'patch_url': 'https://github.com/tinode/chat/pull/452.patch'}",,
114,https://api.github.com/repos/tinode/chat/issues/451,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/451/labels{/name},https://api.github.com/repos/tinode/chat/issues/451/comments,https://api.github.com/repos/tinode/chat/issues/451/events,https://github.com/tinode/chat/pull/451,615508623,MDExOlB1bGxSZXF1ZXN0NDE1ODA0NjQw,451,Topic Proxy: track the list of uid proxied by proxy sessions,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-05-11T00:16:34Z,2020-05-12T04:54:06Z,2020-05-12T04:54:06Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/451', 'html_url': 'https://github.com/tinode/chat/pull/451', 'diff_url': 'https://github.com/tinode/chat/pull/451.diff', 'patch_url': 'https://github.com/tinode/chat/pull/451.patch'}","This PR repurposes the no longer used Session.remoteSubs to keep track
of the proxied uids.
Also add some cleanup to make sure perUser accounting on the master topic
remains consistent in case the node hosting the proxy topic goes down.",
115,https://api.github.com/repos/tinode/chat/issues/450,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/450/labels{/name},https://api.github.com/repos/tinode/chat/issues/450/comments,https://api.github.com/repos/tinode/chat/issues/450/events,https://github.com/tinode/chat/pull/450,615325067,MDExOlB1bGxSZXF1ZXN0NDE1Njc0NTE0,450,Use separate source and target topic filters in presSubsOffline.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-05-10T06:08:20Z,2020-05-10T07:15:00Z,2020-05-10T07:08:03Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/450', 'html_url': 'https://github.com/tinode/chat/pull/450', 'diff_url': 'https://github.com/tinode/chat/pull/450.diff', 'patch_url': 'https://github.com/tinode/chat/pull/450.patch'}","`filter` argument in `presSubsOffline()` applies to the source topic (the topic from which the presence messages originates).
The target topics to which the message is broadcast may have different filters. Use a separate filter for it.
Example:
Publishing a message on a P2P topic sends presence message to offline users with the `R` filter (https://github.com/tinode/chat/blob/devel/server/topic.go#L340).
While the message passes the P2P topic's filtering, the target `me` topics have default `JPS` acs which the `R` filter will not pass.",
116,https://api.github.com/repos/tinode/chat/issues/449,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/449/labels{/name},https://api.github.com/repos/tinode/chat/issues/449/comments,https://api.github.com/repos/tinode/chat/issues/449/events,https://github.com/tinode/chat/pull/449,615324909,MDExOlB1bGxSZXF1ZXN0NDE1Njc0NDEy,449,Update docs with gRPC serialization hint,"{'login': 'arseniybanayev', 'id': 6172879, 'node_id': 'MDQ6VXNlcjYxNzI4Nzk=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/6172879?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/arseniybanayev', 'html_url': 'https://github.com/arseniybanayev', 'followers_url': 'https://api.github.com/users/arseniybanayev/followers', 'following_url': 'https://api.github.com/users/arseniybanayev/following{/other_user}', 'gists_url': 'https://api.github.com/users/arseniybanayev/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/arseniybanayev/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/arseniybanayev/subscriptions', 'organizations_url': 'https://api.github.com/users/arseniybanayev/orgs', 'repos_url': 'https://api.github.com/users/arseniybanayev/repos', 'events_url': 'https://api.github.com/users/arseniybanayev/events{/privacy}', 'received_events_url': 'https://api.github.com/users/arseniybanayev/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-05-10T06:07:11Z,2020-05-10T07:26:13Z,2020-05-10T07:26:13Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/449', 'html_url': 'https://github.com/tinode/chat/pull/449', 'diff_url': 'https://github.com/tinode/chat/pull/449.diff', 'patch_url': 'https://github.com/tinode/chat/pull/449.patch'}",,
117,https://api.github.com/repos/tinode/chat/issues/448,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/448/labels{/name},https://api.github.com/repos/tinode/chat/issues/448/comments,https://api.github.com/repos/tinode/chat/issues/448/events,https://github.com/tinode/chat/pull/448,614550963,MDExOlB1bGxSZXF1ZXN0NDE1MDgzMDU0,448,Proxy Topics: process deferred notifications requests on the master.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-05-08T07:05:23Z,2020-05-09T03:54:57Z,2020-05-09T03:54:57Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/448', 'html_url': 'https://github.com/tinode/chat/pull/448', 'diff_url': 'https://github.com/tinode/chat/pull/448.diff', 'patch_url': 'https://github.com/tinode/chat/pull/448.patch'}",,
118,https://api.github.com/repos/tinode/chat/issues/447,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/447/labels{/name},https://api.github.com/repos/tinode/chat/issues/447/comments,https://api.github.com/repos/tinode/chat/issues/447/events,https://github.com/tinode/chat/pull/447,613860524,MDExOlB1bGxSZXF1ZXN0NDE0NTI4NTEx,447,Topic Proxy: deferred notifications (part 2).,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-05-07T08:09:50Z,2020-05-07T18:05:35Z,2020-05-07T18:05:35Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/447', 'html_url': 'https://github.com/tinode/chat/pull/447', 'diff_url': 'https://github.com/tinode/chat/pull/447.diff', 'patch_url': 'https://github.com/tinode/chat/pull/447.patch'}","Add some plumbing to make sure we use the proper user id
on the when subscribing origin sessions to proxy topics (after hearing
a word about a successful subscription from the master topic).
Also, add some data structures necessary for routing deferred notifications
requests to the master.",
119,https://api.github.com/repos/tinode/chat/issues/446,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/446/labels{/name},https://api.github.com/repos/tinode/chat/issues/446/comments,https://api.github.com/repos/tinode/chat/issues/446/events,https://github.com/tinode/chat/issues/446,613804657,MDU6SXNzdWU2MTM4MDQ2NTc=,446,Unique nickname (or userId alias),"{'login': 'Googlom', 'id': 36107508, 'node_id': 'MDQ6VXNlcjM2MTA3NTA4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/36107508?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Googlom', 'html_url': 'https://github.com/Googlom', 'followers_url': 'https://api.github.com/users/Googlom/followers', 'following_url': 'https://api.github.com/users/Googlom/following{/other_user}', 'gists_url': 'https://api.github.com/users/Googlom/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Googlom/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Googlom/subscriptions', 'organizations_url': 'https://api.github.com/users/Googlom/orgs', 'repos_url': 'https://api.github.com/users/Googlom/repos', 'events_url': 'https://api.github.com/users/Googlom/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Googlom/received_events', 'type': 'User', 'site_admin': False}","[{'id': 811090999, 'node_id': 'MDU6TGFiZWw4MTEwOTA5OTk=', 'url': 'https://api.github.com/repos/tinode/chat/labels/feature%20request', 'name': 'feature request', 'color': 'edcf8b', 'default': False, 'description': None}]",open,False,,[],,0,2020-05-07T06:25:22Z,2020-05-07T06:30:48Z,,CONTRIBUTOR,,,"It's kind a feature request because I didn't find something what does what I want.
I want a user optionally can set a nickname for himself (like Telegram). Unique, kind an alias to his **userid** (`alicenickname `-> `usrqwerty1234`). So that other users can start chat after finding other by his nickname, as well as mentioning (@alicenickname) in conversations.
I know that it is somekind possible with basic auth (**basic:alice** tag), but I:
- don't want my nickname be **alice123**, because someone already sign up with **alice** and forgot about his account. It's just an example.
- don't use basic auth. I've implemented own custom auth for my usecase.
- think it's not safe to show everyone your login credentials.
Maybe this feature already done? Or give me a direction where to dig, so I can contribute this.",
120,https://api.github.com/repos/tinode/chat/issues/445,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/445/labels{/name},https://api.github.com/repos/tinode/chat/issues/445/comments,https://api.github.com/repos/tinode/chat/issues/445/events,https://github.com/tinode/chat/pull/445,613131929,MDExOlB1bGxSZXF1ZXN0NDEzOTQzMzUz,445,Proxy Topics: handling background sessions (part 1).,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-05-06T08:12:50Z,2020-05-06T19:28:30Z,2020-05-06T19:28:30Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/445', 'html_url': 'https://github.com/tinode/chat/pull/445', 'diff_url': 'https://github.com/tinode/chat/pull/445.diff', 'patch_url': 'https://github.com/tinode/chat/pull/445.patch'}","Background sessions are handled by the proxy topics, not master topics.
We add such sessions to the deferred notifications list at the time
when the response to the subscription request from the master is received
and count the ticks on such sessions from that point.
When a session becomes due, we poll it off the notifications list and
send the notifications request to the master (this part is a TODO -
will come in a follow up PR).",
121,https://api.github.com/repos/tinode/chat/issues/444,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/444/labels{/name},https://api.github.com/repos/tinode/chat/issues/444/comments,https://api.github.com/repos/tinode/chat/issues/444/events,https://github.com/tinode/chat/issues/444,612860588,MDU6SXNzdWU2MTI4NjA1ODg=,444,PHP Password,"{'login': 'KatiaSishost', 'id': 28807392, 'node_id': 'MDQ6VXNlcjI4ODA3Mzky', 'avatar_url': 'https://avatars2.githubusercontent.com/u/28807392?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/KatiaSishost', 'html_url': 'https://github.com/KatiaSishost', 'followers_url': 'https://api.github.com/users/KatiaSishost/followers', 'following_url': 'https://api.github.com/users/KatiaSishost/following{/other_user}', 'gists_url': 'https://api.github.com/users/KatiaSishost/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/KatiaSishost/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/KatiaSishost/subscriptions', 'organizations_url': 'https://api.github.com/users/KatiaSishost/orgs', 'repos_url': 'https://api.github.com/users/KatiaSishost/repos', 'events_url': 'https://api.github.com/users/KatiaSishost/events{/privacy}', 'received_events_url': 'https://api.github.com/users/KatiaSishost/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-05-05T20:03:31Z,2020-05-06T03:25:07Z,2020-05-06T03:25:06Z,NONE,,,"Hello, any can explain me with a example a password encrypt with a php script?",
122,https://api.github.com/repos/tinode/chat/issues/443,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/443/labels{/name},https://api.github.com/repos/tinode/chat/issues/443/comments,https://api.github.com/repos/tinode/chat/issues/443/events,https://github.com/tinode/chat/issues/443,612749844,MDU6SXNzdWU2MTI3NDk4NDQ=,443,Features requests [ ] Feature request,"{'login': 'sanmiguel2019', 'id': 54183931, 'node_id': 'MDQ6VXNlcjU0MTgzOTMx', 'avatar_url': 'https://avatars2.githubusercontent.com/u/54183931?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/sanmiguel2019', 'html_url': 'https://github.com/sanmiguel2019', 'followers_url': 'https://api.github.com/users/sanmiguel2019/followers', 'following_url': 'https://api.github.com/users/sanmiguel2019/following{/other_user}', 'gists_url': 'https://api.github.com/users/sanmiguel2019/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/sanmiguel2019/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/sanmiguel2019/subscriptions', 'organizations_url': 'https://api.github.com/users/sanmiguel2019/orgs', 'repos_url': 'https://api.github.com/users/sanmiguel2019/repos', 'events_url': 'https://api.github.com/users/sanmiguel2019/events{/privacy}', 'received_events_url': 'https://api.github.com/users/sanmiguel2019/received_events', 'type': 'User', 'site_admin': False}","[{'id': 811090999, 'node_id': 'MDU6TGFiZWw4MTEwOTA5OTk=', 'url': 'https://api.github.com/repos/tinode/chat/labels/feature%20request', 'name': 'feature request', 'color': 'edcf8b', 'default': False, 'description': None}]",open,False,,[],,3,2020-05-05T16:52:39Z,2020-06-25T08:27:36Z,,NONE,,,"Features request:
1. Possibility to send voice messages
2. User's ""last seen"" time
3. Possitility to delete unread messages choosing ""delete for me"" or ""delete for me and recipient""
4. Possilility to delete ""Content deleted"" mark which stacks forever in the conversation after deleting a message.
4. Possibility to see the time when message has been read by recipient. When selecting a message there is ""i"" icon on the top but it does not work and I don't understand it's purpose.
5. Emojis and maybe stickers
Emojis: [https://www.androidhive.info/2016/11/android-integrate-emojis-keyboard-app/](url)
6. Possibility to resend messages.
7. One to one conversations list and groups conversations list should be separated. We always read private messages but messages received from groups we read when we have a free time. A cocktail of group and private conversations can cause users to miss important messages.
8. Possibility to record and send videos.
9. Please put a part of last message below each user name in the conversations list. The list looks empty because contains nothing more than usernames and avatars.
10. Link previews
",
123,https://api.github.com/repos/tinode/chat/issues/442,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/442/labels{/name},https://api.github.com/repos/tinode/chat/issues/442/comments,https://api.github.com/repos/tinode/chat/issues/442/events,https://github.com/tinode/chat/issues/442,612665232,MDU6SXNzdWU2MTI2NjUyMzI=,442,ServerMsg.topic field sent to non-root user,"{'login': 'Googlom', 'id': 36107508, 'node_id': 'MDQ6VXNlcjM2MTA3NTA4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/36107508?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Googlom', 'html_url': 'https://github.com/Googlom', 'followers_url': 'https://api.github.com/users/Googlom/followers', 'following_url': 'https://api.github.com/users/Googlom/following{/other_user}', 'gists_url': 'https://api.github.com/users/Googlom/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Googlom/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Googlom/subscriptions', 'organizations_url': 'https://api.github.com/users/Googlom/orgs', 'repos_url': 'https://api.github.com/users/Googlom/repos', 'events_url': 'https://api.github.com/users/Googlom/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Googlom/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977920, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjA=', 'url': 'https://api.github.com/repos/tinode/chat/labels/bug', 'name': 'bug', 'color': 'fc2929', 'default': True, 'description': None}]",open,False,,[],,0,2020-05-05T14:52:07Z,2020-05-05T15:06:58Z,,CONTRIBUTOR,,,"According to .proto file:
https://github.com/tinode/chat/blob/8c524edf2c77d7f07e9e5088ec92442092218d2d/pbx/model.proto#L434-L436
I'm using grpc and getting that on non-root user (authenticated with token):
```
info {
topic: ""usrpaFjzz4Kfmw""
from_user_id: ""usrpaFjzz4Kfmw""
what: KP
}
topic: ""p2ppaFjzz4Kfmx8ZUjE9x-ksA""
```
```
data {
topic: ""usrpaFjzz4Kfmw""
from_user_id: ""usrpaFjzz4Kfmw""
seq_id: 5
content: ""\""qq\""""
timestamp: 1588686999632
}
topic: ""p2ppaFjzz4Kfmx8ZUjE9x-ksA""
```
I've debugged my tokens authLevel and it's `LevelAuth`, not `LevelRoot`
### Is this a bug report of a feature request?
- [*] Bug report
### Your environment
#### Server-side
- [*] Your own setup:
* platform Windows
* version of tinode server, e.g. `0.16.5`
* database backend: mongo
#### Client-side
- my custom cli tool written in python
",
124,https://api.github.com/repos/tinode/chat/issues/441,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/441/labels{/name},https://api.github.com/repos/tinode/chat/issues/441/comments,https://api.github.com/repos/tinode/chat/issues/441/events,https://github.com/tinode/chat/pull/441,611598688,MDExOlB1bGxSZXF1ZXN0NDEyNzMzOTAw,441,Topic Proxy: terminate orphaned proxy sessions upon cluster rehashing.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-05-04T04:39:26Z,2020-05-04T07:22:05Z,2020-05-04T07:22:05Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/441', 'html_url': 'https://github.com/tinode/chat/pull/441', 'diff_url': 'https://github.com/tinode/chat/pull/441.diff', 'patch_url': 'https://github.com/tinode/chat/pull/441.patch'}",,
125,https://api.github.com/repos/tinode/chat/issues/440,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/440/labels{/name},https://api.github.com/repos/tinode/chat/issues/440/comments,https://api.github.com/repos/tinode/chat/issues/440/events,https://github.com/tinode/chat/issues/440,611371091,MDU6SXNzdWU2MTEzNzEwOTE=,440,Problems found in Android app,"{'login': 'sanmiguel2019', 'id': 54183931, 'node_id': 'MDQ6VXNlcjU0MTgzOTMx', 'avatar_url': 'https://avatars2.githubusercontent.com/u/54183931?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/sanmiguel2019', 'html_url': 'https://github.com/sanmiguel2019', 'followers_url': 'https://api.github.com/users/sanmiguel2019/followers', 'following_url': 'https://api.github.com/users/sanmiguel2019/following{/other_user}', 'gists_url': 'https://api.github.com/users/sanmiguel2019/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/sanmiguel2019/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/sanmiguel2019/subscriptions', 'organizations_url': 'https://api.github.com/users/sanmiguel2019/orgs', 'repos_url': 'https://api.github.com/users/sanmiguel2019/repos', 'events_url': 'https://api.github.com/users/sanmiguel2019/events{/privacy}', 'received_events_url': 'https://api.github.com/users/sanmiguel2019/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977920, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjA=', 'url': 'https://api.github.com/repos/tinode/chat/labels/bug', 'name': 'bug', 'color': 'fc2929', 'default': True, 'description': None}]",open,False,,[],,28,2020-05-03T09:31:47Z,2020-07-19T03:22:16Z,,NONE,,,"The project looks impressing but I can not understand some things.
Yesterday I installed Android application on 2 telephones (user1, user2) but still can not find out how both telephones can chat.
First of all I was trying to find ""user2"" from first phone. I searched by username, by the 6 character code that appears in section ""security"", by the code that starts with ""usr"" and looks like this - usrUig6RtjGtH. I was not able to find the second user. I was trying it on both phones. I got message saying ""Topic not found"".
Today in some way (I really didn't understand how) I found ""user1"" in phone 2. Sent a message to ""user1"". User1 got my message but can not read it. Over the conversation appeared message ""No access to new messages"" and below ""Not available"". I tried to tap the screen to see possible options but nothing appeared. After some time message that says that there is no access to new messages disappeared and I was able to send a message. When I did it, the same happened for ""user1"" - ""no access to new messages"". When I return to the conversatons list, I see ""You have no chats"" message. I go to ""find"" and under ""phone contacts"" I see the disappeared conversation. I open the conversation, send a message. Second user gets it, however conversation's not appear in the conversations list. User have to go to contacts to see the conversation.
Conversation periodically appears in the conversations list and then disappears again and is accessible only via contacts section. Conversations periodically are blocke with message ""No access to new messages"".
**Online status and push notifications don't work correctly.**
User1 access the app, then closes the app; phone screen is off. Some 3 minutes user2 still sees that user1 is online. When user2 sends a message to the user1 during this time, there is no push notification at all and user 1 can not know that he has new messages because phone screen is off.
When user closes the app or phone's screen if off, ""online"" status should disappear immediately.
Sometimes push notification arrive but there is no sound and I can not understand the pattern how notifications work in Tinode.
The name of received file in push notification looks uggly. It should display a thubnail of received image ir just ""image"", ""file"" as it works in all messengers, but not he file name.
Create a group. Add 1 user. Send a message. In my phone everything ok, but in the phone of added users, there s a mark ""not found"" below the received group message.
",
126,https://api.github.com/repos/tinode/chat/issues/439,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/439/labels{/name},https://api.github.com/repos/tinode/chat/issues/439/comments,https://api.github.com/repos/tinode/chat/issues/439/events,https://github.com/tinode/chat/pull/439,611336959,MDExOlB1bGxSZXF1ZXN0NDEyNTUxODAx,439,Topic Proxy: Use perUser[uid].online as push.Recipient.To[uid].Delivered,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-05-03T05:27:58Z,2020-05-03T06:14:27Z,2020-05-03T06:14:27Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/439', 'html_url': 'https://github.com/tinode/chat/pull/439', 'diff_url': 'https://github.com/tinode/chat/pull/439.diff', 'patch_url': 'https://github.com/tinode/chat/pull/439.patch'}","We thus send push notifications to all devices registered with a certain user id.
If the number of online sessions for the given uid is greater than zero,
the push notifications sent to this user's devices are marked silent.",
127,https://api.github.com/repos/tinode/chat/issues/438,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/438/labels{/name},https://api.github.com/repos/tinode/chat/issues/438/comments,https://api.github.com/repos/tinode/chat/issues/438/events,https://github.com/tinode/chat/pull/438,611242276,MDExOlB1bGxSZXF1ZXN0NDEyNDg2NDI1,438,Don't update pud if acs is invalid,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-05-02T17:59:31Z,2020-06-09T11:56:40Z,2020-05-03T03:17:55Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/438', 'html_url': 'https://github.com/tinode/chat/pull/438', 'diff_url': 'https://github.com/tinode/chat/pull/438.diff', 'patch_url': 'https://github.com/tinode/chat/pull/438.patch'}","I think this was missing from your PR yesterday.
P.S. your push notifications still don't work.
Also `go fmt`.",
128,https://api.github.com/repos/tinode/chat/issues/437,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/437/labels{/name},https://api.github.com/repos/tinode/chat/issues/437/comments,https://api.github.com/repos/tinode/chat/issues/437/events,https://github.com/tinode/chat/issues/437,611104636,MDU6SXNzdWU2MTExMDQ2MzY=,437,"Subs from ""me"" topic don't include ""public"" or ""topic"" fields","{'login': 'arseniybanayev', 'id': 6172879, 'node_id': 'MDQ6VXNlcjYxNzI4Nzk=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/6172879?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/arseniybanayev', 'html_url': 'https://github.com/arseniybanayev', 'followers_url': 'https://api.github.com/users/arseniybanayev/followers', 'following_url': 'https://api.github.com/users/arseniybanayev/following{/other_user}', 'gists_url': 'https://api.github.com/users/arseniybanayev/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/arseniybanayev/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/arseniybanayev/subscriptions', 'organizations_url': 'https://api.github.com/users/arseniybanayev/orgs', 'repos_url': 'https://api.github.com/users/arseniybanayev/repos', 'events_url': 'https://api.github.com/users/arseniybanayev/events{/privacy}', 'received_events_url': 'https://api.github.com/users/arseniybanayev/received_events', 'type': 'User', 'site_admin': False}","[{'id': 1133870256, 'node_id': 'MDU6TGFiZWwxMTMzODcwMjU2', 'url': 'https://api.github.com/repos/tinode/chat/labels/cannot%20reproduce', 'name': 'cannot reproduce', 'color': '0052cc', 'default': False, 'description': ''}]",closed,False,,[],,15,2020-05-02T04:25:59Z,2020-05-09T13:27:25Z,2020-05-09T13:27:25Z,CONTRIBUTOR,,,"I'm running server 0.16.5 on docker, clients talk via gRPC. `{get topic=""me"" what=""sub""}` does not return correct `topic` or `public` values for p2p subs. Simple repro (encoding strings where necessary) should be
Session 1:
`{acc user=""new"" scheme=""basic"" secret=""first:abc123"" desc={public=""first""}}`
Session 2:
`{acc user=""new"" login=true scheme=""basic"" secret=""second:abc123"" desc={public=""second""}}`
`{sub topic=""""}`
`{get topic="""" what=""desc""} # Correctly returns {meta desc={.., public=""second"", ..}}`
`{get topic=""me"" what=""sub""} # Returns {meta sub=[]}`
Expected the last message to return a `{meta}` with a single `sub` that contains both `public` and `topic`, per the docs, relevant part quoted below:
```
meta: {
sub: [ // array of objects, topic subscribers or user's subscriptions, optional
// The following fields are present only when querying 'me' topic
topic: ""grp1XUtEhjv6HND"", // string, topic this subscription describes
// The following fields are present only when querying 'me' topic and the
// topic described is a P2P topic
public: { ... }, // application-defined user's 'public' object, present for
// P2P topics only
],
}
}
```",
129,https://api.github.com/repos/tinode/chat/issues/436,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/436/labels{/name},https://api.github.com/repos/tinode/chat/issues/436/comments,https://api.github.com/repos/tinode/chat/issues/436/events,https://github.com/tinode/chat/pull/436,610614045,MDExOlB1bGxSZXF1ZXN0NDEyMDIyNDIz,436,"Rename {ClientComMessage,ServerComMessage}.from -> asUser.","{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-05-01T07:34:08Z,2020-05-02T02:55:23Z,2020-05-01T18:41:34Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/436', 'html_url': 'https://github.com/tinode/chat/pull/436', 'diff_url': 'https://github.com/tinode/chat/pull/436.diff', 'patch_url': 'https://github.com/tinode/chat/pull/436.patch'}",As discussed in https://github.com/tinode/chat/pull/434,
130,https://api.github.com/repos/tinode/chat/issues/435,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/435/labels{/name},https://api.github.com/repos/tinode/chat/issues/435/comments,https://api.github.com/repos/tinode/chat/issues/435/events,https://github.com/tinode/chat/pull/435,610609503,MDExOlB1bGxSZXF1ZXN0NDEyMDE4NzM1,435,Topic Proxy: create missing user entries from pres messages.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-05-01T07:20:36Z,2020-05-02T04:33:08Z,2020-05-02T03:56:27Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/435', 'html_url': 'https://github.com/tinode/chat/pull/435', 'diff_url': 'https://github.com/tinode/chat/pull/435.diff', 'patch_url': 'https://github.com/tinode/chat/pull/435.patch'}","When a `pres` message with `what=acs` contains an unknown user id, add it to the topic's `perUser`.",
131,https://api.github.com/repos/tinode/chat/issues/434,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/434/labels{/name},https://api.github.com/repos/tinode/chat/issues/434/comments,https://api.github.com/repos/tinode/chat/issues/434/events,https://github.com/tinode/chat/pull/434,609702350,MDExOlB1bGxSZXF1ZXN0NDExMjQzMTg2,434,Topic Proxy: parse uid from topic name for fnd topics.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-04-30T08:19:31Z,2020-05-01T07:12:36Z,2020-05-01T07:12:36Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/434', 'html_url': 'https://github.com/tinode/chat/pull/434', 'diff_url': 'https://github.com/tinode/chat/pull/434.diff', 'patch_url': 'https://github.com/tinode/chat/pull/434.patch'}",,
132,https://api.github.com/repos/tinode/chat/issues/433,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/433/labels{/name},https://api.github.com/repos/tinode/chat/issues/433/comments,https://api.github.com/repos/tinode/chat/issues/433/events,https://github.com/tinode/chat/pull/433,609243838,MDExOlB1bGxSZXF1ZXN0NDEwODYxMjgw,433,Topic Proxy: Broadcast user eviction to proxy topics.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-04-29T17:52:39Z,2020-04-30T01:02:31Z,2020-04-30T01:02:31Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/433', 'html_url': 'https://github.com/tinode/chat/pull/433', 'diff_url': 'https://github.com/tinode/chat/pull/433.diff', 'patch_url': 'https://github.com/tinode/chat/pull/433.patch'}",,
133,https://api.github.com/repos/tinode/chat/issues/432,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/432/labels{/name},https://api.github.com/repos/tinode/chat/issues/432/comments,https://api.github.com/repos/tinode/chat/issues/432/events,https://github.com/tinode/chat/pull/432,608060900,MDExOlB1bGxSZXF1ZXN0NDA5OTExNTA5,432,Topic Proxy: Handle topic member deletions (wip).,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-04-28T06:31:05Z,2020-04-28T16:28:22Z,2020-04-28T16:28:22Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/432', 'html_url': 'https://github.com/tinode/chat/pull/432', 'diff_url': 'https://github.com/tinode/chat/pull/432.diff', 'patch_url': 'https://github.com/tinode/chat/pull/432.patch'}",,
134,https://api.github.com/repos/tinode/chat/issues/431,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/431/labels{/name},https://api.github.com/repos/tinode/chat/issues/431/comments,https://api.github.com/repos/tinode/chat/issues/431/events,https://github.com/tinode/chat/pull/431,607294337,MDExOlB1bGxSZXF1ZXN0NDA5Mjk3MzAw,431,Topic Proxy: update proxy topic's perUser from pres acs changes.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-04-27T07:06:53Z,2020-04-27T16:29:46Z,2020-04-27T16:29:46Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/431', 'html_url': 'https://github.com/tinode/chat/pull/431', 'diff_url': 'https://github.com/tinode/chat/pull/431.diff', 'patch_url': 'https://github.com/tinode/chat/pull/431.patch'}",,
135,https://api.github.com/repos/tinode/chat/issues/430,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/430/labels{/name},https://api.github.com/repos/tinode/chat/issues/430/comments,https://api.github.com/repos/tinode/chat/issues/430/events,https://github.com/tinode/chat/pull/430,606985351,MDExOlB1bGxSZXF1ZXN0NDA5MDY0Mjc4,430,fix sql in MessageAttachments for multiupload,"{'login': 'umatomba', 'id': 1991518, 'node_id': 'MDQ6VXNlcjE5OTE1MTg=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1991518?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/umatomba', 'html_url': 'https://github.com/umatomba', 'followers_url': 'https://api.github.com/users/umatomba/followers', 'following_url': 'https://api.github.com/users/umatomba/following{/other_user}', 'gists_url': 'https://api.github.com/users/umatomba/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/umatomba/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/umatomba/subscriptions', 'organizations_url': 'https://api.github.com/users/umatomba/orgs', 'repos_url': 'https://api.github.com/users/umatomba/repos', 'events_url': 'https://api.github.com/users/umatomba/events{/privacy}', 'received_events_url': 'https://api.github.com/users/umatomba/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-04-26T11:09:40Z,2020-04-26T11:44:43Z,2020-04-26T11:44:38Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/430', 'html_url': 'https://github.com/tinode/chat/pull/430', 'diff_url': 'https://github.com/tinode/chat/pull/430.diff', 'patch_url': 'https://github.com/tinode/chat/pull/430.patch'}",,
136,https://api.github.com/repos/tinode/chat/issues/429,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/429/labels{/name},https://api.github.com/repos/tinode/chat/issues/429/comments,https://api.github.com/repos/tinode/chat/issues/429/events,https://github.com/tinode/chat/pull/429,606707145,MDExOlB1bGxSZXF1ZXN0NDA4ODYyNjE3,429,Bug fixes in topic proxy unsubscribe handling,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-04-25T07:01:41Z,2020-04-25T17:20:49Z,2020-04-25T17:20:49Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/429', 'html_url': 'https://github.com/tinode/chat/pull/429', 'diff_url': 'https://github.com/tinode/chat/pull/429.diff', 'patch_url': 'https://github.com/tinode/chat/pull/429.patch'}",,
137,https://api.github.com/repos/tinode/chat/issues/428,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/428/labels{/name},https://api.github.com/repos/tinode/chat/issues/428/comments,https://api.github.com/repos/tinode/chat/issues/428/events,https://github.com/tinode/chat/pull/428,606087303,MDExOlB1bGxSZXF1ZXN0NDA4MzY3MTg2,428,Topic proxy: more bug fixes,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-04-24T06:57:16Z,2020-04-25T02:18:02Z,2020-04-25T02:18:02Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/428', 'html_url': 'https://github.com/tinode/chat/pull/428', 'diff_url': 'https://github.com/tinode/chat/pull/428.diff', 'patch_url': 'https://github.com/tinode/chat/pull/428.patch'}","Fixes for the following:
* skipSid not set on {pres} messages initiated by the master topics as a response to client requests (e.g. user A changes permissions for user B on a topic but receives pres notifications addressed to B)
* uid may be zero when processing proxy session leave requests. This updates the `Topic.perUser` map incorrectly.",
138,https://api.github.com/repos/tinode/chat/issues/427,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/427/labels{/name},https://api.github.com/repos/tinode/chat/issues/427/comments,https://api.github.com/repos/tinode/chat/issues/427/events,https://github.com/tinode/chat/pull/427,605304827,MDExOlB1bGxSZXF1ZXN0NDA3NzMyMTUw,427,A couple of fixes in topic proxy meta request processing,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-04-23T07:27:56Z,2020-04-23T22:29:06Z,2020-04-23T22:29:06Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/427', 'html_url': 'https://github.com/tinode/chat/pull/427', 'diff_url': 'https://github.com/tinode/chat/pull/427.diff', 'patch_url': 'https://github.com/tinode/chat/pull/427.patch'}","Set meta.{set,get} topic proxy params.
Use session overrides in pres notifications.",
139,https://api.github.com/repos/tinode/chat/issues/426,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/426/labels{/name},https://api.github.com/repos/tinode/chat/issues/426/comments,https://api.github.com/repos/tinode/chat/issues/426/events,https://github.com/tinode/chat/pull/426,603697093,MDExOlB1bGxSZXF1ZXN0NDA2NDMwODg2,426,Topic Proxy: route ua change requests from proxy to master.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-04-21T04:31:42Z,2020-04-21T06:55:14Z,2020-04-21T06:55:14Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/426', 'html_url': 'https://github.com/tinode/chat/pull/426', 'diff_url': 'https://github.com/tinode/chat/pull/426.diff', 'patch_url': 'https://github.com/tinode/chat/pull/426.patch'}",,
140,https://api.github.com/repos/tinode/chat/issues/425,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/425/labels{/name},https://api.github.com/repos/tinode/chat/issues/425/comments,https://api.github.com/repos/tinode/chat/issues/425/events,https://github.com/tinode/chat/pull/425,602908482,MDExOlB1bGxSZXF1ZXN0NDA1Nzk5NDk1,425,Invalidate proxied subs on cluster rehash.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-04-20T03:19:34Z,2020-04-21T02:19:32Z,2020-04-21T02:19:32Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/425', 'html_url': 'https://github.com/tinode/chat/pull/425', 'diff_url': 'https://github.com/tinode/chat/pull/425.diff', 'patch_url': 'https://github.com/tinode/chat/pull/425.patch'}","Also, a couple of minor fixes and changes to presence notifications handling.",
141,https://api.github.com/repos/tinode/chat/issues/424,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/424/labels{/name},https://api.github.com/repos/tinode/chat/issues/424/comments,https://api.github.com/repos/tinode/chat/issues/424/events,https://github.com/tinode/chat/pull/424,602629004,MDExOlB1bGxSZXF1ZXN0NDA1NjA5MTgz,424,Fix proxy broadcast and use per user acl unions for acl checks.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-04-19T05:43:35Z,2020-04-19T19:36:55Z,2020-04-19T19:36:55Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/424', 'html_url': 'https://github.com/tinode/chat/pull/424', 'diff_url': 'https://github.com/tinode/chat/pull/424.diff', 'patch_url': 'https://github.com/tinode/chat/pull/424.patch'}",Compute acl (`want` and `given`) unions across subscriptions in the topic and use these union for acl checks with proxy sessions (uid = 0).,
142,https://api.github.com/repos/tinode/chat/issues/423,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/423/labels{/name},https://api.github.com/repos/tinode/chat/issues/423/comments,https://api.github.com/repos/tinode/chat/issues/423/events,https://github.com/tinode/chat/issues/423,601208584,MDU6SXNzdWU2MDEyMDg1ODQ=,423,Get a list of other users blocked by current user,"{'login': 'kigvshi2', 'id': 62854546, 'node_id': 'MDQ6VXNlcjYyODU0NTQ2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/62854546?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/kigvshi2', 'html_url': 'https://github.com/kigvshi2', 'followers_url': 'https://api.github.com/users/kigvshi2/followers', 'following_url': 'https://api.github.com/users/kigvshi2/following{/other_user}', 'gists_url': 'https://api.github.com/users/kigvshi2/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/kigvshi2/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/kigvshi2/subscriptions', 'organizations_url': 'https://api.github.com/users/kigvshi2/orgs', 'repos_url': 'https://api.github.com/users/kigvshi2/repos', 'events_url': 'https://api.github.com/users/kigvshi2/events{/privacy}', 'received_events_url': 'https://api.github.com/users/kigvshi2/received_events', 'type': 'User', 'site_admin': False}","[{'id': 811090999, 'node_id': 'MDU6TGFiZWw4MTEwOTA5OTk=', 'url': 'https://api.github.com/repos/tinode/chat/labels/feature%20request', 'name': 'feature request', 'color': 'edcf8b', 'default': False, 'description': None}]",closed,False,,[],,3,2020-04-16T16:06:42Z,2020-07-07T19:21:08Z,2020-07-07T19:21:08Z,NONE,,,"### Get a list of other users blocked by current user
### Is this a bug report of a feature request?
- [*] Feature request
#### Server-side
- [*] api.tinode.co
- [*] Your own setup:
* platform (Windows, Mac, Linux etc)
* version of tinode server, e.g. `0.15.2-rc3`
* database backend
#### Client-side
- [*] TinodeWeb/tinodejs: javascript client
* Browser make and version.
- [*] Tindroid: Android app
* Android API level (e.g. 25).
* Emulator or hardware, if hardware describe it.
- [*] tn-cli
* Python version
- [*] Chatbot
* Python version
- Version of the client, e.g. `0.15.1`
Based on [https://groups.google.com/forum/#!topic/tinode/2yla_6_WeVQ ](https://groups.google.com/forum/#!topic/tinode/2yla_6_WeVQ) i want to get a list of users blocked by current user but there is no such api;
",
143,https://api.github.com/repos/tinode/chat/issues/422,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/422/labels{/name},https://api.github.com/repos/tinode/chat/issues/422/comments,https://api.github.com/repos/tinode/chat/issues/422/events,https://github.com/tinode/chat/pull/422,600822693,MDExOlB1bGxSZXF1ZXN0NDA0MTc4NTI2,422,Topic Proxy: leave request handling,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-04-16T07:49:52Z,2020-04-18T04:06:22Z,2020-04-18T04:06:22Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/422', 'html_url': 'https://github.com/tinode/chat/pull/422', 'diff_url': 'https://github.com/tinode/chat/pull/422.diff', 'patch_url': 'https://github.com/tinode/chat/pull/422.patch'}","Pass over session leave requests to the topic master and
clean up master & proxy topics (and their helper sessions) when there are no more attached sessions to them.
Note that this PR is an intermediate version. There's more work to be done to property handle subscribe/unsubscribe.",
144,https://api.github.com/repos/tinode/chat/issues/421,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/421/labels{/name},https://api.github.com/repos/tinode/chat/issues/421/comments,https://api.github.com/repos/tinode/chat/issues/421/events,https://github.com/tinode/chat/issues/421,600309178,MDU6SXNzdWU2MDAzMDkxNzg=,421,I have a mysql8.0 server but it doesn't work with the tinode,"{'login': 'AlanLongYu', 'id': 6948952, 'node_id': 'MDQ6VXNlcjY5NDg5NTI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/6948952?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/AlanLongYu', 'html_url': 'https://github.com/AlanLongYu', 'followers_url': 'https://api.github.com/users/AlanLongYu/followers', 'following_url': 'https://api.github.com/users/AlanLongYu/following{/other_user}', 'gists_url': 'https://api.github.com/users/AlanLongYu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/AlanLongYu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/AlanLongYu/subscriptions', 'organizations_url': 'https://api.github.com/users/AlanLongYu/orgs', 'repos_url': 'https://api.github.com/users/AlanLongYu/repos', 'events_url': 'https://api.github.com/users/AlanLongYu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/AlanLongYu/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977925, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/question', 'name': 'question', 'color': 'cc317c', 'default': True, 'description': None}]",closed,False,,[],,5,2020-04-15T13:44:31Z,2020-04-16T09:05:46Z,2020-04-16T09:05:46Z,NONE,,,"First I typed the next command on windows 10 I have changed the tinode.conf use_adapt:""mysql""
And modify the ""dsn"": ""root:xxxx@tcp(172.17.5.113:3307)/ (my mysql8.0 server)
D:\tinode-mysql.windows-amd64>tinode.exe -config=./tinode.conf
2020/04/15 20:02:07 Running as a standalone server.
2020/04/15 20:02:07 Failed to connect to DB: Error 1045: Access denied for user 'root'@'172.17.5.112' (using password: YES)
So I want to build the tinode application but I can't get the packages because the network error.
Can you give me some advice to download the packages? I want to run the server success for learning GOLANG, Thank you very much I'm a beginer about GOLANG
D:\www\chat\server>go get firebase.google.com/go/messaging
package firebase.google.com/go/messaging: unrecognized import path ""firebase.google.com/go/messaging"" (https fetch: Get https://firebase.google.com/go/messaging?go-get=1: dial tcp 216.58.199.14:443: connectex: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.)",
145,https://api.github.com/repos/tinode/chat/issues/420,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/420/labels{/name},https://api.github.com/repos/tinode/chat/issues/420/comments,https://api.github.com/repos/tinode/chat/issues/420/events,https://github.com/tinode/chat/issues/420,599565459,MDU6SXNzdWU1OTk1NjU0NTk=,420,"Cluster mode, group message sending error","{'login': 'hhy5861', 'id': 8274977, 'node_id': 'MDQ6VXNlcjgyNzQ5Nzc=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/8274977?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/hhy5861', 'html_url': 'https://github.com/hhy5861', 'followers_url': 'https://api.github.com/users/hhy5861/followers', 'following_url': 'https://api.github.com/users/hhy5861/following{/other_user}', 'gists_url': 'https://api.github.com/users/hhy5861/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/hhy5861/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/hhy5861/subscriptions', 'organizations_url': 'https://api.github.com/users/hhy5861/orgs', 'repos_url': 'https://api.github.com/users/hhy5861/repos', 'events_url': 'https://api.github.com/users/hhy5861/events{/privacy}', 'received_events_url': 'https://api.github.com/users/hhy5861/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977920, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjA=', 'url': 'https://api.github.com/repos/tinode/chat/labels/bug', 'name': 'bug', 'color': 'fc2929', 'default': True, 'description': None}, {'id': 1133870256, 'node_id': 'MDU6TGFiZWwxMTMzODcwMjU2', 'url': 'https://api.github.com/repos/tinode/chat/labels/cannot%20reproduce', 'name': 'cannot reproduce', 'color': '0052cc', 'default': False, 'description': ''}, {'id': 910591285, 'node_id': 'MDU6TGFiZWw5MTA1OTEyODU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/incomplete', 'name': 'incomplete', 'color': 'ff6633', 'default': False, 'description': ''}]",closed,False,,[],,43,2020-04-14T13:17:10Z,2020-05-02T10:55:59Z,2020-05-02T10:55:59Z,NONE,,,"tinode version v0.16.5-rc1
```
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x70 pc=0xaf8bd1]
goroutine 1645 [running]:
main.(*Cluster).Route(0xc000074c80, 0xc0002a18c0, 0xc0002b5b13, 0x0, 0x0)
/Users/mike/golang/poizon/duims/cluster.go:411 +0x51
reflect.Value.call(0xc0000be780, 0xc0000bc650, 0x13, 0xd608d2, 0x4, 0xc0001b3f08, 0x3, 0x3, 0x0, 0x0, ...)
/Users/mike/.gvm/gos/go1.14.1/src/reflect/value.go:460 +0x8ab
reflect.Value.Call(0xc0000be780, 0xc0000bc650, 0x13, 0xc0001ed708, 0x3, 0x3, 0x0, 0x0, 0x0)
/Users/mike/.gvm/gos/go1.14.1/src/reflect/value.go:321 +0xb4
net/rpc.(*service).call(0xc0000c1bc0, 0xc000074050, 0xc0001900c8, 0xc0001900f0, 0xc00010e380, 0xc0001d3240, 0xbbf1a0, 0xc0002a18c0, 0x16, 0xbb21e0, ...)
/Users/mike/.gvm/gos/go1.14.1/src/net/rpc/server.go:377 +0x17f
created by net/rpc.(*Server).ServeCodec
/Users/mike/.gvm/gos/go1.14.1/src/net/rpc/server.go:474 +0x42b
```
meesage err:
```
panic: interface conversion: interface {} is []uint8, not *main.ServerComMessage
goroutine 218 [running]:
main.(*Session).rpcWriteLoop(0xc000456140)
/Users/mike/golang/poizon/duims/cluster.go:764 +0x60e
created by main.(*Cluster).Master
/Users/mike/golang/poizon/duims/cluster.go:363 +0x46f
2020/04/14 20:41:21 Server v0.16:/data/tinode/duims-linux:undef; pid 6511; 4 process(es)
```",
146,https://api.github.com/repos/tinode/chat/issues/419,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/419/labels{/name},https://api.github.com/repos/tinode/chat/issues/419/comments,https://api.github.com/repos/tinode/chat/issues/419/events,https://github.com/tinode/chat/pull/419,599363381,MDExOlB1bGxSZXF1ZXN0NDAzMDIxMDg2,419,Topic Proxy: add ProxyResponse to send various params to proxied topics.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-04-14T07:41:08Z,2020-04-14T19:37:27Z,2020-04-14T19:37:26Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/419', 'html_url': 'https://github.com/tinode/chat/pull/419', 'diff_url': 'https://github.com/tinode/chat/pull/419.diff', 'patch_url': 'https://github.com/tinode/chat/pull/419.patch'}",,
147,https://api.github.com/repos/tinode/chat/issues/418,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/418/labels{/name},https://api.github.com/repos/tinode/chat/issues/418/comments,https://api.github.com/repos/tinode/chat/issues/418/events,https://github.com/tinode/chat/issues/418,599288730,MDU6SXNzdWU1OTkyODg3MzA=,418,Change owner in group topic,"{'login': 'wmshek1992', 'id': 46838582, 'node_id': 'MDQ6VXNlcjQ2ODM4NTgy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/46838582?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/wmshek1992', 'html_url': 'https://github.com/wmshek1992', 'followers_url': 'https://api.github.com/users/wmshek1992/followers', 'following_url': 'https://api.github.com/users/wmshek1992/following{/other_user}', 'gists_url': 'https://api.github.com/users/wmshek1992/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/wmshek1992/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/wmshek1992/subscriptions', 'organizations_url': 'https://api.github.com/users/wmshek1992/orgs', 'repos_url': 'https://api.github.com/users/wmshek1992/repos', 'events_url': 'https://api.github.com/users/wmshek1992/events{/privacy}', 'received_events_url': 'https://api.github.com/users/wmshek1992/received_events', 'type': 'User', 'site_admin': False}","[{'id': 1133870256, 'node_id': 'MDU6TGFiZWwxMTMzODcwMjU2', 'url': 'https://api.github.com/repos/tinode/chat/labels/cannot%20reproduce', 'name': 'cannot reproduce', 'color': '0052cc', 'default': False, 'description': ''}, {'id': 147977925, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/question', 'name': 'question', 'color': 'cc317c', 'default': True, 'description': None}]",closed,False,,[],,7,2020-04-14T04:28:52Z,2020-07-07T19:19:28Z,2020-07-07T19:19:28Z,NONE,,,"### Subject of the issue
Change owner in group topic
Hi,
I am trying to transfer the ownership of a group topic and then leave it.
I was doing it by using {set}
`{
""set"": {
""id"": ""118229"",
""topic"": ""grpqF-Sk_oD-jQ"",
""sub"": {
""user"": ""usrE-6UDy41emE"",
""mode"":""JRWPASDO""
}
}
}`
but code=304 was received.
`{""ctrl"":{""id"":""118229"",""topic"":""grpqF-Sk_oD-jQ"",""code"":304,""text"":""not modified"",""ts"":""2020-04-14T04:22:02.852Z""}}`
I also realised that the target user did not want ""O"" in ""acs""
` {
""updated"": ""2020-04-14T03:41:02.072Z"",
""online"": true,
""acs"": {
""mode"": ""JRWPASD"",
""given"": ""JRWPASDO"",
""want"": ""JRWPASD""
},
""read"": 2,
""recv"": 2,
""user"": ""usrE-6UDy41emE""
}`
Is there anything else I have to do to transfer the ownership?",
148,https://api.github.com/repos/tinode/chat/issues/417,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/417/labels{/name},https://api.github.com/repos/tinode/chat/issues/417/comments,https://api.github.com/repos/tinode/chat/issues/417/events,https://github.com/tinode/chat/pull/417,598718182,MDExOlB1bGxSZXF1ZXN0NDAyNTA4NTEw,417,Topic Proxy: Route meta messages and broadcast responses.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-04-13T07:10:07Z,2020-04-14T07:43:52Z,2020-04-14T03:02:26Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/417', 'html_url': 'https://github.com/tinode/chat/pull/417', 'diff_url': 'https://github.com/tinode/chat/pull/417.diff', 'patch_url': 'https://github.com/tinode/chat/pull/417.patch'}",This PR adds basic functionality for routing meta messages and broadcasting responses to proxied sessions.,
149,https://api.github.com/repos/tinode/chat/issues/416,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/416/labels{/name},https://api.github.com/repos/tinode/chat/issues/416/comments,https://api.github.com/repos/tinode/chat/issues/416/events,https://github.com/tinode/chat/pull/416,598219434,MDExOlB1bGxSZXF1ZXN0NDAyMTU5MzI1,416,Topic Proxy: Route publish/broadcast requests to master.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-04-11T08:29:28Z,2020-04-11T21:16:14Z,2020-04-11T21:16:14Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/416', 'html_url': 'https://github.com/tinode/chat/pull/416', 'diff_url': 'https://github.com/tinode/chat/pull/416.diff', 'patch_url': 'https://github.com/tinode/chat/pull/416.patch'}",,
150,https://api.github.com/repos/tinode/chat/issues/415,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/415/labels{/name},https://api.github.com/repos/tinode/chat/issues/415/comments,https://api.github.com/repos/tinode/chat/issues/415/events,https://github.com/tinode/chat/pull/415,597031006,MDExOlB1bGxSZXF1ZXN0NDAxMjE2OTI0,415,Topic proxy: basic routing between proxy and master.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-04-09T05:27:29Z,2020-04-10T04:03:19Z,2020-04-10T04:03:19Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/415', 'html_url': 'https://github.com/tinode/chat/pull/415', 'diff_url': 'https://github.com/tinode/chat/pull/415.diff', 'patch_url': 'https://github.com/tinode/chat/pull/415.patch'}",Join request basic handling.,
151,https://api.github.com/repos/tinode/chat/issues/414,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/414/labels{/name},https://api.github.com/repos/tinode/chat/issues/414/comments,https://api.github.com/repos/tinode/chat/issues/414/events,https://github.com/tinode/chat/issues/414,596549559,MDU6SXNzdWU1OTY1NDk1NTk=,414,Why not use docker-compose run a container?,"{'login': 'AlanLongYu', 'id': 6948952, 'node_id': 'MDQ6VXNlcjY5NDg5NTI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/6948952?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/AlanLongYu', 'html_url': 'https://github.com/AlanLongYu', 'followers_url': 'https://api.github.com/users/AlanLongYu/followers', 'following_url': 'https://api.github.com/users/AlanLongYu/following{/other_user}', 'gists_url': 'https://api.github.com/users/AlanLongYu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/AlanLongYu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/AlanLongYu/subscriptions', 'organizations_url': 'https://api.github.com/users/AlanLongYu/orgs', 'repos_url': 'https://api.github.com/users/AlanLongYu/repos', 'events_url': 'https://api.github.com/users/AlanLongYu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/AlanLongYu/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-04-08T12:44:11Z,2020-04-08T14:04:48Z,2020-04-08T14:04:48Z,NONE,,,"### Subject of the issue
Why not use docker-compose run a container?
Because I have db container yet
### Is this a bug report of a feature request?
- [x] Feature request
",
152,https://api.github.com/repos/tinode/chat/issues/413,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/413/labels{/name},https://api.github.com/repos/tinode/chat/issues/413/comments,https://api.github.com/repos/tinode/chat/issues/413/events,https://github.com/tinode/chat/pull/413,595670654,MDExOlB1bGxSZXF1ZXN0NDAwMTAzNDUy,413,Basic session param override struct,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-04-07T07:57:53Z,2020-04-08T05:11:34Z,2020-04-08T05:11:33Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/413', 'html_url': 'https://github.com/tinode/chat/pull/413', 'diff_url': 'https://github.com/tinode/chat/pull/413.diff', 'patch_url': 'https://github.com/tinode/chat/pull/413.patch'}",This PR is purposed to establish a general pattern to override session param.,
153,https://api.github.com/repos/tinode/chat/issues/412,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/412/labels{/name},https://api.github.com/repos/tinode/chat/issues/412/comments,https://api.github.com/repos/tinode/chat/issues/412/events,https://github.com/tinode/chat/issues/412,595235750,MDU6SXNzdWU1OTUyMzU3NTA=,412,Rest user update public private info,"{'login': 'jaynakus', 'id': 11813954, 'node_id': 'MDQ6VXNlcjExODEzOTU0', 'avatar_url': 'https://avatars3.githubusercontent.com/u/11813954?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jaynakus', 'html_url': 'https://github.com/jaynakus', 'followers_url': 'https://api.github.com/users/jaynakus/followers', 'following_url': 'https://api.github.com/users/jaynakus/following{/other_user}', 'gists_url': 'https://api.github.com/users/jaynakus/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jaynakus/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jaynakus/subscriptions', 'organizations_url': 'https://api.github.com/users/jaynakus/orgs', 'repos_url': 'https://api.github.com/users/jaynakus/repos', 'events_url': 'https://api.github.com/users/jaynakus/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jaynakus/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977925, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/question', 'name': 'question', 'color': 'cc317c', 'default': True, 'description': None}]",closed,False,,[],,2,2020-04-06T16:00:59Z,2020-04-06T19:12:56Z,2020-04-06T19:12:55Z,NONE,,,"### Rest user update public private info
Whenever user changes his profile we need to be able to update existing chat user public and private data. So the chat user will have
### Is this a bug report of a feature request?
- [ ] Bug report
- [x] Feature request
### Your environment
#### Server-side
- [ ] api.tinode.co
- [x] Your own setup:
* Linux
* Latest
* rethink
#### Client-side
- [x] TinodeWeb/tinodejs: javascript client
* Browser make and version.
- [ ] Tindroid: Android app
* Android API level (e.g. 25).
* Emulator or hardware, if hardware describe it.
- [ ] tn-cli
* Python version
- [ ] Chatbot
* Python version
- latest
### Steps to reproduce
Create rest server, add user. Change user info, call {acc} API.
### Expected behaviour
One must be able to change public, and private attributes
### Actual behaviour
Nothing changes, malformed error
### Server-side log
replyUpdateUser: failed to update user malformed LabN0KxPu6U
### Client-side log
```
[15:27:08:832] out: {""acc"":{""id"":""79542"",""user"":""usrZQchqAO9G1z"",""desc"":{""public"":{""fn"":""Someone"",""n"":{""surname"":""Someone"",""given"":""Someone""},""tel"":[{""type"":""MOBILE"",""uri"":""tel:+996707123456""}]}}}}
tinode.prod.js:973
[15:27:08:971] in: {""ctrl"":{""id"":""79542"",""code"":400,""text"":""malformed"",""ts"":""2020-04-06T15:26:48.718Z""}}
```",
154,https://api.github.com/repos/tinode/chat/issues/411,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/411/labels{/name},https://api.github.com/repos/tinode/chat/issues/411/comments,https://api.github.com/repos/tinode/chat/issues/411/events,https://github.com/tinode/chat/issues/411,595005222,MDU6SXNzdWU1OTUwMDUyMjI=,411,http: TLS handshake error from 192.168.1.200:8661 EOF,"{'login': 'irpansetiana23', 'id': 16398308, 'node_id': 'MDQ6VXNlcjE2Mzk4MzA4', 'avatar_url': 'https://avatars1.githubusercontent.com/u/16398308?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/irpansetiana23', 'html_url': 'https://github.com/irpansetiana23', 'followers_url': 'https://api.github.com/users/irpansetiana23/followers', 'following_url': 'https://api.github.com/users/irpansetiana23/following{/other_user}', 'gists_url': 'https://api.github.com/users/irpansetiana23/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/irpansetiana23/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/irpansetiana23/subscriptions', 'organizations_url': 'https://api.github.com/users/irpansetiana23/orgs', 'repos_url': 'https://api.github.com/users/irpansetiana23/repos', 'events_url': 'https://api.github.com/users/irpansetiana23/events{/privacy}', 'received_events_url': 'https://api.github.com/users/irpansetiana23/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977925, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/question', 'name': 'question', 'color': 'cc317c', 'default': True, 'description': None}]",closed,False,,[],,15,2020-04-06T10:44:31Z,2020-04-13T11:05:42Z,2020-04-13T11:05:42Z,NONE,,,"Can help me for this, when i starting the server always http: TLS handshake error from 192.168.1.200:8661 EOF , i am using SSL DigiCert SHA2
in windows server 2012
Please Help Thanks
### Subject of the issue
Describe your issue here.
### Is this a bug report of a feature request?
- [ ] Bug report
- [ ] Feature request
### Your environment
#### Server-side
- [ ] api.tinode.co
- [ ] Your own setup:
* platform (Windows, Mac, Linux etc)
* version of tinode server, e.g. `0.15.2-rc3`
* database backend
#### Client-side
- [ ] TinodeWeb/tinodejs: javascript client
* Browser make and version.
- [ ] Tindroid: Android app
* Android API level (e.g. 25).
* Emulator or hardware, if hardware describe it.
- [ ] tn-cli
* Python version
- [ ] Chatbot
* Python version
- Version of the client, e.g. `0.15.1`
### Steps to reproduce
Tell us how to reproduce this issue.
### Expected behaviour
Tell us what should happen.
### Actual behaviour
Tell us what happens instead.
### Server-side log
Copy server-side log here. You may also attach it to the issue as a file.
### Client-side log
Copy client-side log here (Android logcat, Javascript console, etc). You may also attach it to the issue as a file.
",
155,https://api.github.com/repos/tinode/chat/issues/410,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/410/labels{/name},https://api.github.com/repos/tinode/chat/issues/410/comments,https://api.github.com/repos/tinode/chat/issues/410/events,https://github.com/tinode/chat/issues/410,594998256,MDU6SXNzdWU1OTQ5OTgyNTY=,410,Tinode cluster in Kubernetes,"{'login': 'ysaakpr', 'id': 20730186, 'node_id': 'MDQ6VXNlcjIwNzMwMTg2', 'avatar_url': 'https://avatars2.githubusercontent.com/u/20730186?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ysaakpr', 'html_url': 'https://github.com/ysaakpr', 'followers_url': 'https://api.github.com/users/ysaakpr/followers', 'following_url': 'https://api.github.com/users/ysaakpr/following{/other_user}', 'gists_url': 'https://api.github.com/users/ysaakpr/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ysaakpr/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ysaakpr/subscriptions', 'organizations_url': 'https://api.github.com/users/ysaakpr/orgs', 'repos_url': 'https://api.github.com/users/ysaakpr/repos', 'events_url': 'https://api.github.com/users/ysaakpr/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ysaakpr/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977925, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/question', 'name': 'question', 'color': 'cc317c', 'default': True, 'description': None}]",closed,False,,[],,3,2020-04-06T10:34:00Z,2020-04-07T11:57:21Z,2020-04-07T11:57:21Z,NONE,,,"### Tinode Clustering in Kubernetes
What is the way to deploy Tinode cluster in Kubernetes? Given that the Tinode stores the messages external storage engine like MySQL or RethinkDB, It would be easier to run Tinode in Kubernetes as stateless nodes joining a cluster for HA. But Ii could not find any suggested way to do that in the forum. Any thoughts?
1. How to Dynamically increase the number of Tinode nodes
2. Should be stateful set or a Deployment?",
156,https://api.github.com/repos/tinode/chat/issues/409,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/409/labels{/name},https://api.github.com/repos/tinode/chat/issues/409/comments,https://api.github.com/repos/tinode/chat/issues/409/events,https://github.com/tinode/chat/issues/409,594396657,MDU6SXNzdWU1OTQzOTY2NTc=,409,Reset Password mail template issue.,"{'login': 'vs9390', 'id': 6750514, 'node_id': 'MDQ6VXNlcjY3NTA1MTQ=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/6750514?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/vs9390', 'html_url': 'https://github.com/vs9390', 'followers_url': 'https://api.github.com/users/vs9390/followers', 'following_url': 'https://api.github.com/users/vs9390/following{/other_user}', 'gists_url': 'https://api.github.com/users/vs9390/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/vs9390/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/vs9390/subscriptions', 'organizations_url': 'https://api.github.com/users/vs9390/orgs', 'repos_url': 'https://api.github.com/users/vs9390/repos', 'events_url': 'https://api.github.com/users/vs9390/events{/privacy}', 'received_events_url': 'https://api.github.com/users/vs9390/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977920, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjA=', 'url': 'https://api.github.com/repos/tinode/chat/labels/bug', 'name': 'bug', 'color': 'fc2929', 'default': True, 'description': None}]",closed,False,,[],,1,2020-04-05T11:05:01Z,2020-05-02T10:53:31Z,2020-05-02T10:53:31Z,NONE,,,"https://github.com/tinode/chat/blob/41f95284684c1f7e6e749aa0bc815b389706c8b2/server/validate/email/validate.go#L176
I am not an expert on this, but this line is causing issue while sending reset password email. I think it is a typo and should be as below
`v.ResetTemplFile = resolveTemplatePath(v.ResetTemplFile) `
",
157,https://api.github.com/repos/tinode/chat/issues/408,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/408/labels{/name},https://api.github.com/repos/tinode/chat/issues/408/comments,https://api.github.com/repos/tinode/chat/issues/408/events,https://github.com/tinode/chat/issues/408,593345227,MDU6SXNzdWU1OTMzNDUyMjc=,408,Update user tags,"{'login': 'kigvshi2', 'id': 62854546, 'node_id': 'MDQ6VXNlcjYyODU0NTQ2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/62854546?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/kigvshi2', 'html_url': 'https://github.com/kigvshi2', 'followers_url': 'https://api.github.com/users/kigvshi2/followers', 'following_url': 'https://api.github.com/users/kigvshi2/following{/other_user}', 'gists_url': 'https://api.github.com/users/kigvshi2/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/kigvshi2/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/kigvshi2/subscriptions', 'organizations_url': 'https://api.github.com/users/kigvshi2/orgs', 'repos_url': 'https://api.github.com/users/kigvshi2/repos', 'events_url': 'https://api.github.com/users/kigvshi2/events{/privacy}', 'received_events_url': 'https://api.github.com/users/kigvshi2/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-04-03T12:24:16Z,2020-04-03T12:36:16Z,2020-04-03T12:36:16Z,NONE,,,"Is there any api for change user tags such as basic , email or others?",
158,https://api.github.com/repos/tinode/chat/issues/407,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/407/labels{/name},https://api.github.com/repos/tinode/chat/issues/407/comments,https://api.github.com/repos/tinode/chat/issues/407/events,https://github.com/tinode/chat/issues/407,593332013,MDU6SXNzdWU1OTMzMzIwMTM=,407,Failed to connect to DB: store: mysql adapter is not available in this binary,"{'login': 'suzhi921', 'id': 572552, 'node_id': 'MDQ6VXNlcjU3MjU1Mg==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/572552?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/suzhi921', 'html_url': 'https://github.com/suzhi921', 'followers_url': 'https://api.github.com/users/suzhi921/followers', 'following_url': 'https://api.github.com/users/suzhi921/following{/other_user}', 'gists_url': 'https://api.github.com/users/suzhi921/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/suzhi921/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/suzhi921/subscriptions', 'organizations_url': 'https://api.github.com/users/suzhi921/orgs', 'repos_url': 'https://api.github.com/users/suzhi921/repos', 'events_url': 'https://api.github.com/users/suzhi921/events{/privacy}', 'received_events_url': 'https://api.github.com/users/suzhi921/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-04-03T11:59:40Z,2020-07-29T03:42:53Z,2020-04-03T12:08:28Z,NONE,,,"OS : windows10
db:mysql
Build source from goland editor,but raise a error below:
2020/04/03 19:55:38 Server v0.16:C:\Users\5555\go\src\github.com\tinode\chat\server\go_build_github_com_tinode_chat_server.exe:undef; pid 17444; 8 process(es)
2020/04/03 19:55:38 Using config from 'C:\Users\5555\go\src\github.com\tinode\chat\server\tinode.conf'
2020/04/03 19:55:38 stats: variables exposed at '/debug/vars'
2020/04/03 19:55:38 Running as a standalone server.
2020/04/03 19:55:38 Failed to connect to DB: store: mysql adapter is not available in this binary",
159,https://api.github.com/repos/tinode/chat/issues/406,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/406/labels{/name},https://api.github.com/repos/tinode/chat/issues/406/comments,https://api.github.com/repos/tinode/chat/issues/406/events,https://github.com/tinode/chat/issues/406,592343247,MDU6SXNzdWU1OTIzNDMyNDc=,406,Long Polling respond status 200 but body is empty,"{'login': 'wmshek1992', 'id': 46838582, 'node_id': 'MDQ6VXNlcjQ2ODM4NTgy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/46838582?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/wmshek1992', 'html_url': 'https://github.com/wmshek1992', 'followers_url': 'https://api.github.com/users/wmshek1992/followers', 'following_url': 'https://api.github.com/users/wmshek1992/following{/other_user}', 'gists_url': 'https://api.github.com/users/wmshek1992/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/wmshek1992/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/wmshek1992/subscriptions', 'organizations_url': 'https://api.github.com/users/wmshek1992/orgs', 'repos_url': 'https://api.github.com/users/wmshek1992/repos', 'events_url': 'https://api.github.com/users/wmshek1992/events{/privacy}', 'received_events_url': 'https://api.github.com/users/wmshek1992/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977920, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjA=', 'url': 'https://api.github.com/repos/tinode/chat/labels/bug', 'name': 'bug', 'color': 'fc2929', 'default': True, 'description': None}]",closed,False,,[],,5,2020-04-02T04:07:06Z,2020-05-02T10:54:52Z,2020-05-02T10:54:52Z,NONE,,,"### Long Polling respond status 200 but body is empty
I would like to develop an own client application with either long polling or websocket. But encounter some problems in long-polling.
First, I tried to play with long-polling in the sandbox, using the default accounts.
It is fine when using websocket but not by using long polling.
a loading gif appears but the login don't proceed further in the sandbox.
![Screenshot 2020-04-02 at 11 26 20 AM](https://user-images.githubusercontent.com/46838582/78209673-3b038380-74da-11ea-8fe8-e0f049563c10.png)
Second, I tried to connect to the endpoint of my setup in docker by using postman.
http:///v0/channels/lp?apikey=
i. create a session and ctrl message with sid received.
ii. POST a {""hi"":{ ""ver"": ""123""} } to the server via long polling url, response with status OK with
iii. POST {login} packet or any other packet to long-polling endpoint, received status OK empty body, but the login should have be successful because I see uid appears in the session.
iv. Then I sent '{""sub"":{""topic"":""me"",""get"":{""what"":""sub desc tags cred""}}}', again, received status OK empty body.
Should I expect a HTTP response carrying the info I asked for in ""get""?
Or I am doing it incorrectly?
### Is this a bug report of a feature request?
- [X] Bug report
- [ ] Feature request
#### Server-side
docker with latest Tinode version
#### Client-side
Postman
## Tinode log
2020/04/02 03:45:14 longPoll: session started mjljXqKdgH0 5
2020/04/02 03:45:20 in: '{""hi"":{ ""ver"": ""0.16.4""} }' ip='42.2.242.174:56539' sid='mjljXqKdgH0' uid=''
2020/04/02 03:45:28 in: '{""login"":{""id"":""98352"",""scheme"":""basic"",""secret"":""ZGF2ZTpkYXZlMTIz""}}' ip='42.2.242.174:56539' sid='mjljXqKdgH0' uid=''
2020/04/02 03:45:38 in: '{""sub"":{""id"":""98353"",""topic"":""me"",""get"":{""what"":""sub desc tags cred""}}}' ip='42.2.242.174:56539' sid='mbH8CZPe4Fc' uid='fw-qpf5vbV8'
2020/04/02 03:54:37 in: '{""sub"":{""topic"":""me"",""get"":{""what"":""sub desc tags cred""}}}' ip='42.2.242.174:56539' sid='mbH8CZPe4Fc' uid='fw-qpf5vbV8'
",
160,https://api.github.com/repos/tinode/chat/issues/405,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/405/labels{/name},https://api.github.com/repos/tinode/chat/issues/405/comments,https://api.github.com/repos/tinode/chat/issues/405/events,https://github.com/tinode/chat/issues/405,591894494,MDU6SXNzdWU1OTE4OTQ0OTQ=,405,[QUESTION] How to turn off presence but be able to continue chatting?,"{'login': 'tsmrecki', 'id': 6672440, 'node_id': 'MDQ6VXNlcjY2NzI0NDA=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/6672440?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/tsmrecki', 'html_url': 'https://github.com/tsmrecki', 'followers_url': 'https://api.github.com/users/tsmrecki/followers', 'following_url': 'https://api.github.com/users/tsmrecki/following{/other_user}', 'gists_url': 'https://api.github.com/users/tsmrecki/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/tsmrecki/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/tsmrecki/subscriptions', 'organizations_url': 'https://api.github.com/users/tsmrecki/orgs', 'repos_url': 'https://api.github.com/users/tsmrecki/repos', 'events_url': 'https://api.github.com/users/tsmrecki/events{/privacy}', 'received_events_url': 'https://api.github.com/users/tsmrecki/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-04-01T12:55:24Z,2020-04-01T12:57:32Z,2020-04-01T12:57:32Z,NONE,,,"### Subject of the issue
I'm trying to set incognito mode in my app by sending **leave**:
LEAVE ME `leave {topic=""me"", unsub=""false""}`.
This works temporarily, my status is offline to other users.
Now, when I try to fetch the list of my conversations using **get**:
GET ME `get {topic=""me"", query={what=""sub""} }`
I only get my own user in **sub** array.
The only way I'm able to get list of my conversations is by using **sub**:
SUB ME `sub {topic=""me"", query={what=""sub""} }`
which then triggers the ONLINE status again.
Am I doing something wrong? How can I get the list of my conversations, but at the same time keep the ""OFFLINE"" mode?
### Is this a bug report of a feature request?
- [x] Bug report
- [ ] Feature request
### Your environment
#### Server-side
- [ ] api.tinode.co
- [x] Your own setup:
* version of tinode server: `0.16.3-rc.2`
#### Client-side
- Using on Android, pbx proto files built for Java (https://github.com/tinode/chat/tree/master/pbx)
### Steps to reproduce
As described above.
### Expected behaviour
I would expect to get the list of conversations using GET ME as well, not only SUB ME.
I expect for GET message not to trigger presence updates as SUB does, which I need for my feature.
### Actual behaviour
By using GET ME, I only get one contact in sub array - me.
### Client-side log
REQUEST:
get {
id: ""me""
topic: ""me""
query {
what: ""sub""
}
}
RESPONSE:
meta {
topic: ""me""
sub {
updated_at: 1583160248476
acs {
want: ""JPS""
given: ""JPS""
}
private: ""{\""x-username\"":\""phone_number_hidden\""}""
user_id: ""hidden""
}
}",
161,https://api.github.com/repos/tinode/chat/issues/404,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/404/labels{/name},https://api.github.com/repos/tinode/chat/issues/404/comments,https://api.github.com/repos/tinode/chat/issues/404/events,https://github.com/tinode/chat/issues/404,589877975,MDU6SXNzdWU1ODk4Nzc5NzU=,404,Blocked users list,"{'login': 'kigvshi2', 'id': 62854546, 'node_id': 'MDQ6VXNlcjYyODU0NTQ2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/62854546?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/kigvshi2', 'html_url': 'https://github.com/kigvshi2', 'followers_url': 'https://api.github.com/users/kigvshi2/followers', 'following_url': 'https://api.github.com/users/kigvshi2/following{/other_user}', 'gists_url': 'https://api.github.com/users/kigvshi2/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/kigvshi2/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/kigvshi2/subscriptions', 'organizations_url': 'https://api.github.com/users/kigvshi2/orgs', 'repos_url': 'https://api.github.com/users/kigvshi2/repos', 'events_url': 'https://api.github.com/users/kigvshi2/events{/privacy}', 'received_events_url': 'https://api.github.com/users/kigvshi2/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977925, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/question', 'name': 'question', 'color': 'cc317c', 'default': True, 'description': None}]",closed,False,,[],,2,2020-03-29T20:26:56Z,2020-03-30T09:20:01Z,2020-03-30T09:20:00Z,NONE,,,How to get list of blocked users ?,
162,https://api.github.com/repos/tinode/chat/issues/403,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/403/labels{/name},https://api.github.com/repos/tinode/chat/issues/403/comments,https://api.github.com/repos/tinode/chat/issues/403/events,https://github.com/tinode/chat/issues/403,589045792,MDU6SXNzdWU1ODkwNDU3OTI=,403,Tinode external authenticator,"{'login': 'wmshek1992', 'id': 46838582, 'node_id': 'MDQ6VXNlcjQ2ODM4NTgy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/46838582?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/wmshek1992', 'html_url': 'https://github.com/wmshek1992', 'followers_url': 'https://api.github.com/users/wmshek1992/followers', 'following_url': 'https://api.github.com/users/wmshek1992/following{/other_user}', 'gists_url': 'https://api.github.com/users/wmshek1992/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/wmshek1992/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/wmshek1992/subscriptions', 'organizations_url': 'https://api.github.com/users/wmshek1992/orgs', 'repos_url': 'https://api.github.com/users/wmshek1992/repos', 'events_url': 'https://api.github.com/users/wmshek1992/events{/privacy}', 'received_events_url': 'https://api.github.com/users/wmshek1992/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-03-27T10:48:09Z,2020-03-27T11:05:33Z,2020-03-27T11:05:33Z,NONE,,,"### How to enable the external authenticator?
I am checking how to implement the REST or JSON-RPC authenticator here: https://github.com/tinode/chat/tree/master/server/auth/rest
I am not sure where to put the configuration in.
Can anyone help me please?
",
163,https://api.github.com/repos/tinode/chat/issues/402,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/402/labels{/name},https://api.github.com/repos/tinode/chat/issues/402/comments,https://api.github.com/repos/tinode/chat/issues/402/events,https://github.com/tinode/chat/pull/402,588919910,MDExOlB1bGxSZXF1ZXN0Mzk0NTc3NjQz,402,init-db: do not load sample data on upgrade.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-03-27T06:35:15Z,2020-03-29T23:20:06Z,2020-03-27T06:45:21Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/402', 'html_url': 'https://github.com/tinode/chat/pull/402', 'diff_url': 'https://github.com/tinode/chat/pull/402.diff', 'patch_url': 'https://github.com/tinode/chat/pull/402.patch'}",,
164,https://api.github.com/repos/tinode/chat/issues/401,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/401/labels{/name},https://api.github.com/repos/tinode/chat/issues/401/comments,https://api.github.com/repos/tinode/chat/issues/401/events,https://github.com/tinode/chat/issues/401,588692073,MDU6SXNzdWU1ODg2OTIwNzM=,401,REST auth configuration,"{'login': 'gitnotfoundorinternalerror', 'id': 62721827, 'node_id': 'MDQ6VXNlcjYyNzIxODI3', 'avatar_url': 'https://avatars0.githubusercontent.com/u/62721827?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/gitnotfoundorinternalerror', 'html_url': 'https://github.com/gitnotfoundorinternalerror', 'followers_url': 'https://api.github.com/users/gitnotfoundorinternalerror/followers', 'following_url': 'https://api.github.com/users/gitnotfoundorinternalerror/following{/other_user}', 'gists_url': 'https://api.github.com/users/gitnotfoundorinternalerror/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/gitnotfoundorinternalerror/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/gitnotfoundorinternalerror/subscriptions', 'organizations_url': 'https://api.github.com/users/gitnotfoundorinternalerror/orgs', 'repos_url': 'https://api.github.com/users/gitnotfoundorinternalerror/repos', 'events_url': 'https://api.github.com/users/gitnotfoundorinternalerror/events{/privacy}', 'received_events_url': 'https://api.github.com/users/gitnotfoundorinternalerror/received_events', 'type': 'User', 'site_admin': False}","[{'id': 1105115388, 'node_id': 'MDU6TGFiZWwxMTA1MTE1Mzg4', 'url': 'https://api.github.com/repos/tinode/chat/labels/documentation', 'name': 'documentation', 'color': 'd4c5f9', 'default': True, 'description': 'Request for documentation update'}]",closed,False,,[],,15,2020-03-26T20:02:35Z,2020-03-31T11:17:53Z,2020-03-31T11:17:53Z,NONE,,,How to config rest auth in config file ? because no place in tinode.conf to put endpoint or other REST auth configuration:(,
165,https://api.github.com/repos/tinode/chat/issues/400,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/400/labels{/name},https://api.github.com/repos/tinode/chat/issues/400/comments,https://api.github.com/repos/tinode/chat/issues/400/events,https://github.com/tinode/chat/issues/400,588360008,MDU6SXNzdWU1ODgzNjAwMDg=,400,Ran the project on docker but it goes in infinite reconnection loop after i add a contact,"{'login': 'curiousgeek123', 'id': 61917543, 'node_id': 'MDQ6VXNlcjYxOTE3NTQz', 'avatar_url': 'https://avatars1.githubusercontent.com/u/61917543?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/curiousgeek123', 'html_url': 'https://github.com/curiousgeek123', 'followers_url': 'https://api.github.com/users/curiousgeek123/followers', 'following_url': 'https://api.github.com/users/curiousgeek123/following{/other_user}', 'gists_url': 'https://api.github.com/users/curiousgeek123/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/curiousgeek123/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/curiousgeek123/subscriptions', 'organizations_url': 'https://api.github.com/users/curiousgeek123/orgs', 'repos_url': 'https://api.github.com/users/curiousgeek123/repos', 'events_url': 'https://api.github.com/users/curiousgeek123/events{/privacy}', 'received_events_url': 'https://api.github.com/users/curiousgeek123/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977925, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/question', 'name': 'question', 'color': 'cc317c', 'default': True, 'description': None}]",closed,False,,[],,6,2020-03-26T11:47:06Z,2020-07-07T16:23:32Z,2020-07-07T16:23:32Z,NONE,,,"### Subject of the issue
Describe your issue here.
### Is this a bug report of a feature request?
- [ yes ] Bug report
- [ ] Feature request
### Your environment
#### Server-side
- [ ] api.tinode.co
- [ yes ] Your own setup:
### Steps to reproduce
Tell us how to reproduce this issue.
I follow the official docker installation at https://github.com/tinode/chat/blob/master/docker/README.md
and ran it using MySQL.
### Expected behaviour
Server was working fine on myip:6060
i created 1 account, all was good, then i created another account from my mobile, and then went to settings and click add contact, i added the username/user ID of my first account and hit enter, then tinode UI keeps showing reconnecting, connection failure msg infinitely. Nothing is wrong in docker logs , see below
### Server-side log
Copy server-side log here. You may also attach it to the issue as a file.
root@ubuntu-s-1vcpu-1gb-nyc1-01:/var# docker logs -f tinode-srv
2020/03/26 11:28:03 Initializing -1
2020/03/26 11:28:03 Database not found. Creating.
2020/03/26 11:28:04 No data provided, stopping
]
How to make sure my tinode server setup using docker is working correctly 100% ?
Also, how can rebrand the tinode UI for my own custom branding in the react web view web version?",
166,https://api.github.com/repos/tinode/chat/issues/399,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/399/labels{/name},https://api.github.com/repos/tinode/chat/issues/399/comments,https://api.github.com/repos/tinode/chat/issues/399/events,https://github.com/tinode/chat/pull/399,588345634,MDExOlB1bGxSZXF1ZXN0Mzk0MTA4NjY3,399,Docker,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-03-26T11:21:50Z,2020-03-27T05:17:11Z,2020-03-27T05:16:31Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/399', 'html_url': 'https://github.com/tinode/chat/pull/399', 'diff_url': 'https://github.com/tinode/chat/pull/399.diff', 'patch_url': 'https://github.com/tinode/chat/pull/399.patch'}","1. Chatbot container more configurable
2. Removed `TNPG_COMPRESS_PAYLOADS` as unnecessary (always true)
3. Automatic gofmt and misc stuff.",
167,https://api.github.com/repos/tinode/chat/issues/398,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/398/labels{/name},https://api.github.com/repos/tinode/chat/issues/398/comments,https://api.github.com/repos/tinode/chat/issues/398/events,https://github.com/tinode/chat/issues/398,588230864,MDU6SXNzdWU1ODgyMzA4NjQ=,398,how to ensure msg wont miss ? ,"{'login': 'joshua0x', 'id': 44366103, 'node_id': 'MDQ6VXNlcjQ0MzY2MTAz', 'avatar_url': 'https://avatars3.githubusercontent.com/u/44366103?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/joshua0x', 'html_url': 'https://github.com/joshua0x', 'followers_url': 'https://api.github.com/users/joshua0x/followers', 'following_url': 'https://api.github.com/users/joshua0x/following{/other_user}', 'gists_url': 'https://api.github.com/users/joshua0x/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/joshua0x/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/joshua0x/subscriptions', 'organizations_url': 'https://api.github.com/users/joshua0x/orgs', 'repos_url': 'https://api.github.com/users/joshua0x/repos', 'events_url': 'https://api.github.com/users/joshua0x/events{/privacy}', 'received_events_url': 'https://api.github.com/users/joshua0x/received_events', 'type': 'User', 'site_admin': False}","[{'id': 910591285, 'node_id': 'MDU6TGFiZWw5MTA1OTEyODU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/incomplete', 'name': 'incomplete', 'color': 'ff6633', 'default': False, 'description': ''}, {'id': 147977925, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/question', 'name': 'question', 'color': 'cc317c', 'default': True, 'description': None}]",closed,False,,[],,1,2020-03-26T08:08:40Z,2020-03-26T08:51:16Z,2020-03-26T08:50:09Z,NONE,,,"### Subject of the issue
how to ensure msg wont miss ?
how to kept msg sequence ?
### Is this a bug report of a feature request?
- [ ] Bug report
- [ ] Feature request
### Your environment
#### Server-side
- [ ] api.tinode.co
- [ ] Your own setup:
* platform (Windows, Mac, Linux etc)
* version of tinode server, e.g. `0.15.2-rc3`
* database backend
#### Client-side
- [ ] TinodeWeb/tinodejs: javascript client
* Browser make and version.
- [ ] Tindroid: Android app
* Android API level (e.g. 25).
* Emulator or hardware, if hardware describe it.
- [ ] tn-cli
* Python version
- [ ] Chatbot
* Python version
- Version of the client, e.g. `0.15.1`
### Steps to reproduce
Tell us how to reproduce this issue.
### Expected behaviour
Tell us what should happen.
### Actual behaviour
Tell us what happens instead.
### Server-side log
Copy server-side log here. You may also attach it to the issue as a file.
### Client-side log
Copy client-side log here (Android logcat, Javascript console, etc). You may also attach it to the issue as a file.
",
168,https://api.github.com/repos/tinode/chat/issues/397,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/397/labels{/name},https://api.github.com/repos/tinode/chat/issues/397/comments,https://api.github.com/repos/tinode/chat/issues/397/events,https://github.com/tinode/chat/pull/397,588195258,MDExOlB1bGxSZXF1ZXN0MzkzOTg4MzI2,397,Add docker-compose overrides for rethinkdb and mongodb.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-03-26T06:49:33Z,2020-03-27T03:54:33Z,2020-03-27T03:54:32Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/397', 'html_url': 'https://github.com/tinode/chat/pull/397', 'diff_url': 'https://github.com/tinode/chat/pull/397.diff', 'patch_url': 'https://github.com/tinode/chat/pull/397.patch'}",,
169,https://api.github.com/repos/tinode/chat/issues/396,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/396/labels{/name},https://api.github.com/repos/tinode/chat/issues/396/comments,https://api.github.com/repos/tinode/chat/issues/396/events,https://github.com/tinode/chat/pull/396,587478921,MDExOlB1bGxSZXF1ZXN0MzkzNDEzNDI1,396,Fetch correct user data when subscribing to ME on behalf of another user,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-03-25T06:45:20Z,2020-03-25T08:37:00Z,2020-03-25T08:36:59Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/396', 'html_url': 'https://github.com/tinode/chat/pull/396', 'diff_url': 'https://github.com/tinode/chat/pull/396.diff', 'patch_url': 'https://github.com/tinode/chat/pull/396.patch'}",Intended as a fix for https://github.com/tinode/chat/issues/395,
170,https://api.github.com/repos/tinode/chat/issues/395,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/395/labels{/name},https://api.github.com/repos/tinode/chat/issues/395/comments,https://api.github.com/repos/tinode/chat/issues/395/events,https://github.com/tinode/chat/issues/395,587376536,MDU6SXNzdWU1ODczNzY1MzY=,395,Incorrect name when deleting avatar for another user in tn-cli,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}]",,0,2020-03-25T01:18:15Z,2020-03-25T08:39:11Z,2020-03-25T08:39:11Z,CONTRIBUTOR,,,"Start Tinode locally, load sample data.
Connect as xena (root user).
```
$ python tn-cli.py --host localhost:6090 --login-basic=xena:xena123
```
Find `alice` and delete her avatar via usermod:
```
tn> resolve alice
...
<= 200 ok (fnd)
<= usrALICE
tn> usermod usrALICE --avatar='␡'
...
<= 200 ok (me)
<= Default user=''
```
Alice's public name changes to Xena Pacifist Peasant.",
171,https://api.github.com/repos/tinode/chat/issues/394,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/394/labels{/name},https://api.github.com/repos/tinode/chat/issues/394/comments,https://api.github.com/repos/tinode/chat/issues/394/events,https://github.com/tinode/chat/pull/394,585908627,MDExOlB1bGxSZXF1ZXN0MzkyMTQwMDky,394,Better startup order in E2E setup.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-03-23T03:49:36Z,2020-03-24T04:16:53Z,2020-03-24T04:16:53Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/394', 'html_url': 'https://github.com/tinode/chat/pull/394', 'diff_url': 'https://github.com/tinode/chat/pull/394.diff', 'patch_url': 'https://github.com/tinode/chat/pull/394.patch'}","Added $WAIT_FOR envvar to the `entrypoint.sh` scripts in Tinode and Exporter docker containers.
This way the containers will wait for their dependencies to become available.
Provide default Tinode FCM push notifications configuration.",
172,https://api.github.com/repos/tinode/chat/issues/393,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/393/labels{/name},https://api.github.com/repos/tinode/chat/issues/393/comments,https://api.github.com/repos/tinode/chat/issues/393/events,https://github.com/tinode/chat/pull/393,585654113,MDExOlB1bGxSZXF1ZXN0MzkxOTYyNTM0,393,Run tinode only if init-db returns success.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-03-22T06:15:58Z,2020-03-24T03:25:17Z,2020-03-24T03:25:17Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/393', 'html_url': 'https://github.com/tinode/chat/pull/393', 'diff_url': 'https://github.com/tinode/chat/pull/393.diff', 'patch_url': 'https://github.com/tinode/chat/pull/393.patch'}","In tinode:tinode docker:
1. Check stderr of init-db for the presence of `All done` string.
2. If the string isn't found, stop. Otherwise, proceed to running tinode.
3. Use `SAMPLE_DATA` env var to specify the sample data file.
",
173,https://api.github.com/repos/tinode/chat/issues/392,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/392/labels{/name},https://api.github.com/repos/tinode/chat/issues/392/comments,https://api.github.com/repos/tinode/chat/issues/392/events,https://github.com/tinode/chat/pull/392,585529253,MDExOlB1bGxSZXF1ZXN0MzkxODc4NDI0,392,Using go mod for package management,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-03-21T16:14:00Z,2020-03-22T14:44:53Z,2020-03-22T05:23:10Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/392', 'html_url': 'https://github.com/tinode/chat/pull/392', 'diff_url': 'https://github.com/tinode/chat/pull/392.diff', 'patch_url': 'https://github.com/tinode/chat/pull/392.patch'}",Fix for https://github.com/tinode/chat/issues/390 and https://github.com/tinode/chat/issues/383,
174,https://api.github.com/repos/tinode/chat/issues/391,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/391/labels{/name},https://api.github.com/repos/tinode/chat/issues/391/comments,https://api.github.com/repos/tinode/chat/issues/391/events,https://github.com/tinode/chat/pull/391,585512437,MDExOlB1bGxSZXF1ZXN0MzkxODY3MzI2,391,SELECT tinode db before updating in mariadb.,"{'login': 'benabel', 'id': 12530561, 'node_id': 'MDQ6VXNlcjEyNTMwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/12530561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/benabel', 'html_url': 'https://github.com/benabel', 'followers_url': 'https://api.github.com/users/benabel/followers', 'following_url': 'https://api.github.com/users/benabel/following{/other_user}', 'gists_url': 'https://api.github.com/users/benabel/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/benabel/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/benabel/subscriptions', 'organizations_url': 'https://api.github.com/users/benabel/orgs', 'repos_url': 'https://api.github.com/users/benabel/repos', 'events_url': 'https://api.github.com/users/benabel/events{/privacy}', 'received_events_url': 'https://api.github.com/users/benabel/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-03-21T14:40:54Z,2020-03-21T14:55:08Z,2020-03-21T14:50:25Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/391', 'html_url': 'https://github.com/tinode/chat/pull/391', 'diff_url': 'https://github.com/tinode/chat/pull/391.diff', 'patch_url': 'https://github.com/tinode/chat/pull/391.patch'}",,
175,https://api.github.com/repos/tinode/chat/issues/390,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/390/labels{/name},https://api.github.com/repos/tinode/chat/issues/390/comments,https://api.github.com/repos/tinode/chat/issues/390/events,https://github.com/tinode/chat/issues/390,585479984,MDU6SXNzdWU1ODU0Nzk5ODQ=,390,I can't Build Source project,"{'login': 'komeil-sh', 'id': 19385842, 'node_id': 'MDQ6VXNlcjE5Mzg1ODQy', 'avatar_url': 'https://avatars0.githubusercontent.com/u/19385842?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/komeil-sh', 'html_url': 'https://github.com/komeil-sh', 'followers_url': 'https://api.github.com/users/komeil-sh/followers', 'following_url': 'https://api.github.com/users/komeil-sh/following{/other_user}', 'gists_url': 'https://api.github.com/users/komeil-sh/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/komeil-sh/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/komeil-sh/subscriptions', 'organizations_url': 'https://api.github.com/users/komeil-sh/orgs', 'repos_url': 'https://api.github.com/users/komeil-sh/repos', 'events_url': 'https://api.github.com/users/komeil-sh/events{/privacy}', 'received_events_url': 'https://api.github.com/users/komeil-sh/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977925, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/question', 'name': 'question', 'color': 'cc317c', 'default': True, 'description': None}]",closed,False,,[],,15,2020-03-21T11:21:27Z,2020-03-22T10:52:30Z,2020-03-22T10:52:30Z,NONE,,,"### **This is Error**
`GOROOT=C:\Go #gosetup
GOPATH=C:\Users\KOMEIL-PC\go #gosetup
C:\Go\bin\go.exe build -tags mongodb -o C:\Users\KOMEIL-PC\AppData\Local\Temp\___go_build_main_go.exe C:/Users/KOMEIL-PC/Downloads/Compressed/chat-master/server/main.go #gosetup
..\..\..\..\go\src\github.com\tinode\chat\server\media\s3\s3.go:14:2: cannot find package ""github.com/aws/aws-sdk-go/aws"" in any of:
C:\Go\src\github.com\aws\aws-sdk-go\aws (from $GOROOT)
C:\Users\KOMEIL-PC\go\src\github.com\aws\aws-sdk-go\aws (from $GOPATH)
..\..\..\..\go\src\github.com\tinode\chat\server\media\s3\s3.go:15:2: cannot find package ""github.com/aws/aws-sdk-go/aws/awserr"" in any of:
C:\Go\src\github.com\aws\aws-sdk-go\aws\awserr (from $GOROOT)
C:\Users\KOMEIL-PC\go\src\github.com\aws\aws-sdk-go\aws\awserr (from $GOPATH)
..\..\..\..\go\src\github.com\tinode\chat\server\media\s3\s3.go:16:2: cannot find package ""github.com/aws/aws-sdk-go/aws/credentials"" in any of:
C:\Go\src\github.com\aws\aws-sdk-go\aws\credentials (from $GOROOT)
C:\Users\KOMEIL-PC\go\src\github.com\aws\aws-sdk-go\aws\credentials (from $GOPATH)
..\..\..\..\go\src\github.com\tinode\chat\server\media\s3\s3.go:17:2: cannot find package ""github.com/aws/aws-sdk-go/aws/request"" in any of:
C:\Go\src\github.com\aws\aws-sdk-go\aws\request (from $GOROOT)
C:\Users\KOMEIL-PC\go\src\github.com\aws\aws-sdk-go\aws\request (from $GOPATH)
..\..\..\..\go\src\github.com\tinode\chat\server\media\s3\s3.go:18:2: cannot find package ""github.com/aws/aws-sdk-go/aws/session"" in any of:
C:\Go\src\github.com\aws\aws-sdk-go\aws\session (from $GOROOT)
C:\Users\KOMEIL-PC\go\src\github.com\aws\aws-sdk-go\aws\session (from $GOPATH)
..\..\..\..\go\src\github.com\tinode\chat\server\media\s3\s3.go:19:2: cannot find package ""github.com/aws/aws-sdk-go/service/s3"" in any of:
C:\Go\src\github.com\aws\aws-sdk-go\service\s3 (from $GOROOT)
C:\Users\KOMEIL-PC\go\src\github.com\aws\aws-sdk-go\service\s3 (from $GOPATH)
..\..\..\..\go\src\github.com\tinode\chat\server\media\s3\s3.go:20:2: cannot find package ""github.com/aws/aws-sdk-go/service/s3/s3manager"" in any of:
C:\Go\src\github.com\aws\aws-sdk-go\service\s3\s3manager (from $GOROOT)
C:\Users\KOMEIL-PC\go\src\github.com\aws\aws-sdk-go\service\s3\s3manager (from $GOPATH)
..\..\..\..\go\src\go.mongodb.org\mongo-driver\mongo\database.go:20:2: cannot find package ""go.mongodb.org/mongo-driver/x/bsonx"" in any of:
C:\Users\KOMEIL-PC\go\src\go.mongodb.org\mongo-driver\vendor\go.mongodb.org\mongo-driver\x\bsonx (vendor tree)
C:\Go\src\go.mongodb.org\mongo-driver\x\bsonx (from $GOROOT)
C:\Users\KOMEIL-PC\go\src\go.mongodb.org\mongo-driver\x\bsonx (from $GOPATH)
..\..\..\..\go\src\go.mongodb.org\mongo-driver\bson\bsonrw\copier.go:15:2: cannot find package ""go.mongodb.org/mongo-driver/x/bsonx/bsoncore"" in any of:
C:\Users\KOMEIL-PC\go\src\go.mongodb.org\mongo-driver\vendor\go.mongodb.org\mongo-driver\x\bsonx\bsoncore (vendor tree)
C:\Go\src\go.mongodb.org\mongo-driver\x\bsonx\bsoncore (from $GOROOT)
C:\Users\KOMEIL-PC\go\src\go.mongodb.org\mongo-driver\x\bsonx\bsoncore (from $GOPATH)
..\..\..\..\go\src\go.mongodb.org\mongo-driver\mongo\options\clientoptions.go:28:2: cannot find package ""go.mongodb.org/mongo-driver/x/mongo/driver"" in any of:
C:\Users\KOMEIL-PC\go\src\go.mongodb.org\mongo-driver\vendor\go.mongodb.org\mongo-driver\x\mongo\driver (vendor tree)
C:\Go\src\go.mongodb.org\mongo-driver\x\mongo\driver (from $GOROOT)
C:\Users\KOMEIL-PC\go\src\go.mongodb.org\mongo-driver\x\mongo\driver (from $GOPATH)
..\..\..\..\go\src\go.mongodb.org\mongo-driver\mongo\client.go:26:2: cannot find package ""go.mongodb.org/mongo-driver/x/mongo/driver/auth"" in any of:
C:\Users\KOMEIL-PC\go\src\go.mongodb.org\mongo-driver\vendor\go.mongodb.org\mongo-driver\x\mongo\driver\auth (vendor tree)
C:\Go\src\go.mongodb.org\mongo-driver\x\mongo\driver\auth (from $GOROOT)
C:\Users\KOMEIL-PC\go\src\go.mongodb.org\mongo-driver\x\mongo\driver\auth (from $GOPATH)
..\..\..\..\go\src\go.mongodb.org\mongo-driver\mongo\options\clientoptions.go:29:2: cannot find package ""go.mongodb.org/mongo-driver/x/mongo/driver/connstring"" in any of:
C:\Users\KOMEIL-PC\go\src\go.mongodb.org\mongo-driver\vendor\go.mongodb.org\mongo-driver\x\mongo\driver\connstring (vendor tree)
C:\Go\src\go.mongodb.org\mongo-driver\x\mongo\driver\connstring (from $GOROOT)
C:\Users\KOMEIL-PC\go\src\go.mongodb.org\mongo-driver\x\mongo\driver\connstring (from $GOPATH)
..\..\..\..\go\src\go.mongodb.org\mongo-driver\mongo\bulk_write.go:17:2: cannot find package ""go.mongodb.org/mongo-driver/x/mongo/driver/description"" in any of:
C:\Users\KOMEIL-PC\go\src\go.mongodb.org\mongo-driver\vendor\go.mongodb.org\mongo-driver\x\mongo\driver\description (vendor tree)
C:\Go\src\go.mongodb.org\mongo-driver\x\mongo\driver\description (from $GOROOT)
C:\Users\KOMEIL-PC\go\src\go.mongodb.org\mongo-driver\x\mongo\driver\description (from $GOPATH)
..\..\..\..\go\src\go.mongodb.org\mongo-driver\mongo\errors.go:16:2: cannot find package ""go.mongodb.org/mongo-driver/x/mongo/driver/mongocrypt"" in any of:
C:\Users\KOMEIL-PC\go\src\go.mongodb.org\mongo-driver\vendor\go.mongodb.org\mongo-driver\x\mongo\driver\mongocrypt (vendor tree)
C:\Go\src\go.mongodb.org\mongo-driver\x\mongo\driver\mongocrypt (from $GOROOT)
C:\Users\KOMEIL-PC\go\src\go.mongodb.org\mongo-driver\x\mongo\driver\mongocrypt (from $GOPATH)
..\..\..\..\go\src\go.mongodb.org\mongo-driver\mongo\client_encryption.go:19:2: cannot find package ""go.mongodb.org/mongo-driver/x/mongo/driver/mongocrypt/options"" in any of:
C:\Users\KOMEIL-PC\go\src\go.mongodb.org\mongo-driver\vendor\go.mongodb.org\mongo-driver\x\mongo\driver\mongocrypt\options (vendor tree)
C:\Go\src\go.mongodb.org\mongo-driver\x\mongo\driver\mongocrypt\options (from $GOROOT)
C:\Users\KOMEIL-PC\go\src\go.mongodb.org\mongo-driver\x\mongo\driver\mongocrypt\options (from $GOPATH)
..\..\..\..\go\src\go.mongodb.org\mongo-driver\mongo\client.go:29:2: cannot find package ""go.mongodb.org/mongo-driver/x/mongo/driver/ocsp"" in any of:
C:\Users\KOMEIL-PC\go\src\go.mongodb.org\mongo-driver\vendor\go.mongodb.org\mongo-driver\x\mongo\driver\ocsp (vendor tree)
C:\Go\src\go.mongodb.org\mongo-driver\x\mongo\driver\ocsp (from $GOROOT)
C:\Users\KOMEIL-PC\go\src\go.mongodb.org\mongo-driver\x\mongo\driver\ocsp (from $GOPATH)
..\..\..\..\go\src\go.mongodb.org\mongo-driver\mongo\bulk_write.go:18:2: cannot find package ""go.mongodb.org/mongo-driver/x/mongo/driver/operation"" in any of:
C:\Users\KOMEIL-PC\go\src\go.mongodb.org\mongo-driver\vendor\go.mongodb.org\mongo-driver\x\mongo\driver\operation (vendor tree)
C:\Go\src\go.mongodb.org\mongo-driver\x\mongo\driver\operation (from $GOROOT)
C:\Users\KOMEIL-PC\go\src\go.mongodb.org\mongo-driver\x\mongo\driver\operation (from $GOPATH)
..\..\..\..\go\src\go.mongodb.org\mongo-driver\mongo\bulk_write.go:19:2: cannot find package ""go.mongodb.org/mongo-driver/x/mongo/driver/session"" in any of:
C:\Users\KOMEIL-PC\go\src\go.mongodb.org\mongo-driver\vendor\go.mongodb.org\mongo-driver\x\mongo\driver\session (vendor tree)
C:\Go\src\go.mongodb.org\mongo-driver\x\mongo\driver\session (from $GOROOT)
C:\Users\KOMEIL-PC\go\src\go.mongodb.org\mongo-driver\x\mongo\driver\session (from $GOPATH)
..\..\..\..\go\src\go.mongodb.org\mongo-driver\mongo\client.go:32:2: cannot find package ""go.mongodb.org/mongo-driver/x/mongo/driver/topology"" in any of:
C:\Users\KOMEIL-PC\go\src\go.mongodb.org\mongo-driver\vendor\go.mongodb.org\mongo-driver\x\mongo\driver\topology (vendor tree)
C:\Go\src\go.mongodb.org\mongo-driver\x\mongo\driver\topology (from $GOROOT)
C:\Users\KOMEIL-PC\go\src\go.mongodb.org\mongo-driver\x\mongo\driver\topology (from $GOPATH)
..\..\..\..\go\src\go.mongodb.org\mongo-driver\mongo\client.go:33:2: cannot find package ""go.mongodb.org/mongo-driver/x/mongo/driver/uuid"" in any of:
C:\Users\KOMEIL-PC\go\src\go.mongodb.org\mongo-driver\vendor\go.mongodb.org\mongo-driver\x\mongo\driver\uuid (vendor tree)
C:\Go\src\go.mongodb.org\mongo-driver\x\mongo\driver\uuid (from $GOROOT)
C:\Users\KOMEIL-PC\go\src\go.mongodb.org\mongo-driver\x\mongo\driver\uuid (from $GOPATH)
..\..\..\..\go\src\go.mongodb.org\mongo-driver\mongo\options\clientoptions.go:30:2: cannot find package ""go.mongodb.org/mongo-driver/x/mongo/driver/wiremessage"" in any of:
C:\Users\KOMEIL-PC\go\src\go.mongodb.org\mongo-driver\vendor\go.mongodb.org\mongo-driver\x\mongo\driver\wiremessage (vendor tree)
C:\Go\src\go.mongodb.org\mongo-driver\x\mongo\driver\wiremessage (from $GOROOT)
C:\Users\KOMEIL-PC\go\src\go.mongodb.org\mongo-driver\x\mongo\driver\wiremessage (from $GOPATH)
..\..\..\..\go\src\cloud.google.com\go\internal\trace\trace.go:21:2: cannot find package ""go.opencensus.io/trace"" in any of:
C:\Go\src\go.opencensus.io\trace (from $GOROOT)
C:\Users\KOMEIL-PC\go\src\go.opencensus.io\trace (from $GOPATH)
..\..\..\..\go\src\cloud.google.com\go\internal\trace\trace.go:22:2: cannot find package ""google.golang.org/api/googleapi"" in any of:
C:\Go\src\google.golang.org\api\googleapi (from $GOROOT)
C:\Users\KOMEIL-PC\go\src\google.golang.org\api\googleapi (from $GOPATH)
..\..\..\..\go\src\cloud.google.com\go\firestore\apiv1\firestore_client.go:28:2: cannot find package ""google.golang.org/api/iterator"" in any of:
C:\Go\src\google.golang.org\api\iterator (from $GOROOT)
C:\Users\KOMEIL-PC\go\src\google.golang.org\api\iterator (from $GOPATH)
..\..\..\..\go\src\cloud.google.com\go\firestore\apiv1\firestore_client.go:29:2: cannot find package ""google.golang.org/api/option"" in any of:
C:\Go\src\google.golang.org\api\option (from $GOROOT)
C:\Users\KOMEIL-PC\go\src\google.golang.org\api\option (from $GOPATH)
..\..\..\..\go\src\cloud.google.com\go\storage\acl.go:24:2: cannot find package ""google.golang.org/api/storage/v1"" in any of:
C:\Go\src\google.golang.org\api\storage\v1 (from $GOROOT)
C:\Users\KOMEIL-PC\go\src\google.golang.org\api\storage\v1 (from $GOPATH)
..\..\..\..\go\src\cloud.google.com\go\firestore\client.go:33:2: cannot find package ""google.golang.org/api/transport"" in any of:
C:\Go\src\google.golang.org\api\transport (from $GOROOT)
C:\Users\KOMEIL-PC\go\src\google.golang.org\api\transport (from $GOPATH)
..\..\..\..\go\src\cloud.google.com\go\firestore\apiv1\firestore_client.go:30:2: cannot find package ""google.golang.org/api/transport/grpc"" in any of:
C:\Go\src\google.golang.org\api\transport\grpc (from $GOROOT)
C:\Users\KOMEIL-PC\go\src\google.golang.org\api\transport\grpc (from $GOPATH)
..\..\..\..\go\src\cloud.google.com\go\storage\storage.go:47:2: cannot find package ""google.golang.org/api/transport/http"" in any of:
C:\Go\src\google.golang.org\api\transport\http (from $GOROOT)
C:\Users\KOMEIL-PC\go\src\google.golang.org\api\transport\http (from $GOPATH)
..\..\..\..\go\src\google.golang.org\grpc\resolver\resolver.go:29:2: no Go files in C:\Users\KOMEIL-PC\go\src\google.golang.org\grpc\serviceconfig
..\..\..\..\go\src\google.golang.org\grpc\internal\transport\handler_server.go:44:2: cannot find package ""google.golang.org/grpc/stats"" in any of:
C:\Go\src\google.golang.org\grpc\stats (from $GOROOT)
C:\Users\KOMEIL-PC\go\src\google.golang.org\grpc\stats (from $GOPATH)
..\..\..\..\go\src\google.golang.org\grpc\internal\binarylog\method_logger.go:32:2: cannot find package ""google.golang.org/grpc/status"" in any of:
C:\Go\src\google.golang.org\grpc\status (from $GOROOT)
C:\Users\KOMEIL-PC\go\src\google.golang.org\grpc\status (from $GOPATH)
..\..\..\..\go\src\google.golang.org\grpc\internal\transport\http2_server.go:50:2: cannot find package ""google.golang.org/grpc/tap"" in any of:
C:\Go\src\google.golang.org\grpc\tap (from $GOROOT)
C:\Users\KOMEIL-PC\go\src\google.golang.org\grpc\tap (from $GOPATH)
Compilation finished with exit code 1
`",
176,https://api.github.com/repos/tinode/chat/issues/389,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/389/labels{/name},https://api.github.com/repos/tinode/chat/issues/389/comments,https://api.github.com/repos/tinode/chat/issues/389/events,https://github.com/tinode/chat/pull/389,585224775,MDExOlB1bGxSZXF1ZXN0MzkxNjU3NjQ1,389,Another attempt at fixing memory leak,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-03-20T17:34:36Z,2020-03-31T13:45:57Z,2020-03-21T09:49:15Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/389', 'html_url': 'https://github.com/tinode/chat/pull/389', 'diff_url': 'https://github.com/tinode/chat/pull/389.diff', 'patch_url': 'https://github.com/tinode/chat/pull/389.patch'}",The previous change fixed the cases when the topic was deleted. It did not fix the most common use case of unsubscribing from all topics.,
177,https://api.github.com/repos/tinode/chat/issues/388,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/388/labels{/name},https://api.github.com/repos/tinode/chat/issues/388/comments,https://api.github.com/repos/tinode/chat/issues/388/events,https://github.com/tinode/chat/pull/388,584899416,MDExOlB1bGxSZXF1ZXN0MzkxMzk3MDM0,388,Example end-to-end setups,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-03-20T07:54:40Z,2020-03-20T08:03:57Z,2020-03-20T08:01:10Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/388', 'html_url': 'https://github.com/tinode/chat/pull/388', 'diff_url': 'https://github.com/tinode/chat/pull/388.diff', 'patch_url': 'https://github.com/tinode/chat/pull/388.patch'}",Docker-compose configuration for standalone and cluster setups.,
178,https://api.github.com/repos/tinode/chat/issues/387,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/387/labels{/name},https://api.github.com/repos/tinode/chat/issues/387/comments,https://api.github.com/repos/tinode/chat/issues/387/events,https://github.com/tinode/chat/pull/387,584827360,MDExOlB1bGxSZXF1ZXN0MzkxMzM4ODY0,387,Tinode docker consolidation.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-03-20T03:58:49Z,2020-03-20T07:56:08Z,2020-03-20T07:56:07Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/387', 'html_url': 'https://github.com/tinode/chat/pull/387', 'diff_url': 'https://github.com/tinode/chat/pull/387.diff', 'patch_url': 'https://github.com/tinode/chat/pull/387.patch'}",As a part of preparing docker-compose setup.,
179,https://api.github.com/repos/tinode/chat/issues/386,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/386/labels{/name},https://api.github.com/repos/tinode/chat/issues/386/comments,https://api.github.com/repos/tinode/chat/issues/386/events,https://github.com/tinode/chat/pull/386,584318238,MDExOlB1bGxSZXF1ZXN0MzkwOTI2Mjk0,386,enforce sane minumum push interval + gofmt,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-03-19T10:42:05Z,2020-03-22T14:45:26Z,2020-03-20T04:45:40Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/386', 'html_url': 'https://github.com/tinode/chat/pull/386', 'diff_url': 'https://github.com/tinode/chat/pull/386.diff', 'patch_url': 'https://github.com/tinode/chat/pull/386.patch'}",,
180,https://api.github.com/repos/tinode/chat/issues/385,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/385/labels{/name},https://api.github.com/repos/tinode/chat/issues/385/comments,https://api.github.com/repos/tinode/chat/issues/385/events,https://github.com/tinode/chat/pull/385,584232054,MDExOlB1bGxSZXF1ZXN0MzkwODU0OTQz,385,Tinode/exporter docker configuration,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-03-19T08:03:56Z,2020-03-20T05:54:54Z,2020-03-20T05:54:54Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/385', 'html_url': 'https://github.com/tinode/chat/pull/385', 'diff_url': 'https://github.com/tinode/chat/pull/385.diff', 'patch_url': 'https://github.com/tinode/chat/pull/385.patch'}",,
181,https://api.github.com/repos/tinode/chat/issues/384,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/384/labels{/name},https://api.github.com/repos/tinode/chat/issues/384/comments,https://api.github.com/repos/tinode/chat/issues/384/events,https://github.com/tinode/chat/issues/384,583981994,MDU6SXNzdWU1ODM5ODE5OTQ=,384,"gRPC error 14: ""Socket closed""","{'login': 'malte-v', 'id': 34393802, 'node_id': 'MDQ6VXNlcjM0MzkzODAy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/34393802?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/malte-v', 'html_url': 'https://github.com/malte-v', 'followers_url': 'https://api.github.com/users/malte-v/followers', 'following_url': 'https://api.github.com/users/malte-v/following{/other_user}', 'gists_url': 'https://api.github.com/users/malte-v/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/malte-v/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/malte-v/subscriptions', 'organizations_url': 'https://api.github.com/users/malte-v/orgs', 'repos_url': 'https://api.github.com/users/malte-v/repos', 'events_url': 'https://api.github.com/users/malte-v/events{/privacy}', 'received_events_url': 'https://api.github.com/users/malte-v/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977925, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/question', 'name': 'question', 'color': 'cc317c', 'default': True, 'description': None}]",closed,False,,[],,1,2020-03-18T20:25:26Z,2020-03-20T03:18:26Z,2020-03-20T03:18:26Z,NONE,,,"I'm sorry if this is not related to tinode, but I haven't found much on the internet regarding this behavior. I also have very little understanding of how gRPC works, so please bear with me :)
When trying to list the services available at the tinode sandbox via `grpc_cli`, I run into this error:
```
➜ ~ grpc_cli ls sandbox.tinode.co
Received an error when querying services endpoint.
ServerReflectionInfo rpc failed. Error code: 14, message: Socket closed, debug info: {""created"":""@1584562584.361506253"",""description"":""Error received from peer ipv4:104.196.16.37:443"",""file"":""src/core/lib/surface/call.cc"",""file_line"":1056,""grpc_message"":""Socket closed"",""grpc_status"":14}
```
I get a similar error when trying to do a handshake through my Dart client:
```dart
Future _connect() async {
final channel = ClientChannel(""sandbox.tinode.co"");
final client = NodeClient(channel);
var up = StreamController();
var down = client.messageLoop(up.stream);
final handshakeMsg = ClientMsg()..hi = (ClientHi()..ver = ""0.15"");
up.add(handshakeMsg);
await down.first.then((value) => print(value.writeToJson()),
onError: (err) => print(err));
up.close();
}
```
```
gRPC Error (14, Closed in non-idle state)
```
Does anyone have an idea what could cause this? Thanks!",
182,https://api.github.com/repos/tinode/chat/issues/383,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/383/labels{/name},https://api.github.com/repos/tinode/chat/issues/383/comments,https://api.github.com/repos/tinode/chat/issues/383/events,https://github.com/tinode/chat/issues/383,583782007,MDU6SXNzdWU1ODM3ODIwMDc=,383,build source error!,"{'login': 'Sopage', 'id': 2882974, 'node_id': 'MDQ6VXNlcjI4ODI5NzQ=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/2882974?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Sopage', 'html_url': 'https://github.com/Sopage', 'followers_url': 'https://api.github.com/users/Sopage/followers', 'following_url': 'https://api.github.com/users/Sopage/following{/other_user}', 'gists_url': 'https://api.github.com/users/Sopage/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Sopage/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Sopage/subscriptions', 'organizations_url': 'https://api.github.com/users/Sopage/orgs', 'repos_url': 'https://api.github.com/users/Sopage/repos', 'events_url': 'https://api.github.com/users/Sopage/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Sopage/received_events', 'type': 'User', 'site_admin': False}","[{'id': 1133870256, 'node_id': 'MDU6TGFiZWwxMTMzODcwMjU2', 'url': 'https://api.github.com/repos/tinode/chat/labels/cannot%20reproduce', 'name': 'cannot reproduce', 'color': '0052cc', 'default': False, 'description': ''}, {'id': 147977925, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/question', 'name': 'question', 'color': 'cc317c', 'default': True, 'description': None}]",closed,False,,[],,7,2020-03-18T14:47:25Z,2020-03-19T04:56:55Z,2020-03-19T04:56:55Z,NONE,,,"### Subject of the issue
$:./build-all.sh
error message:
Stderr: cloud.google.com/go/iam
../../../cloud.google.com/go/iam/iam.go:135:58: cannot use conn (type grpc.ClientConnInterface) as type *grpc.ClientConn in argument to iam.NewIAMPolicyClient: need type assertioncloud.google.com/go/firestore/apiv1
../../../cloud.google.com/go/firestore/apiv1/firestore_client.go:226:41: cannot use connPool (type ""google.golang.org/api/internal"".ConnPool) as type *""google.golang.org/grpc"".ClientConn in argument to firestore.NewFirestoreClient
",
183,https://api.github.com/repos/tinode/chat/issues/382,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/382/labels{/name},https://api.github.com/repos/tinode/chat/issues/382/comments,https://api.github.com/repos/tinode/chat/issues/382/events,https://github.com/tinode/chat/pull/382,582689679,MDExOlB1bGxSZXF1ZXN0Mzg5NTcwODk3,382,TNPG: send pushes in batches.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-03-17T01:21:47Z,2020-03-17T04:35:04Z,2020-03-17T04:35:04Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/382', 'html_url': 'https://github.com/tinode/chat/pull/382', 'diff_url': 'https://github.com/tinode/chat/pull/382.diff', 'patch_url': 'https://github.com/tinode/chat/pull/382.patch'}",,
184,https://api.github.com/repos/tinode/chat/issues/381,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/381/labels{/name},https://api.github.com/repos/tinode/chat/issues/381/comments,https://api.github.com/repos/tinode/chat/issues/381/events,https://github.com/tinode/chat/pull/381,581595014,MDExOlB1bGxSZXF1ZXN0Mzg4NjM4NDYx,381,fix for double routing of {sub topic=new} in cluster,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-03-15T09:22:41Z,2020-03-19T10:42:26Z,2020-03-16T07:00:18Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/381', 'html_url': 'https://github.com/tinode/chat/pull/381', 'diff_url': 'https://github.com/tinode/chat/pull/381.diff', 'patch_url': 'https://github.com/tinode/chat/pull/381.patch'}",The other option was to generate topic name on the session origin node then send it to the master node which is a bit more complex. I think this approach is ok while the number of nodes is not too large (~20 nodes should be fine).,
185,https://api.github.com/repos/tinode/chat/issues/380,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/380/labels{/name},https://api.github.com/repos/tinode/chat/issues/380/comments,https://api.github.com/repos/tinode/chat/issues/380/events,https://github.com/tinode/chat/pull/380,581513467,MDExOlB1bGxSZXF1ZXN0Mzg4NTY4OTI3,380,TNPG: push all messages in one request and compress request payloads.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,5,2020-03-15T04:47:17Z,2020-03-16T07:40:03Z,2020-03-16T07:40:03Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/380', 'html_url': 'https://github.com/tinode/chat/pull/380', 'diff_url': 'https://github.com/tinode/chat/pull/380.diff', 'patch_url': 'https://github.com/tinode/chat/pull/380.patch'}","Also, send pushes to `pushgw.tinode.co/push` by default.",
186,https://api.github.com/repos/tinode/chat/issues/379,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/379/labels{/name},https://api.github.com/repos/tinode/chat/issues/379/comments,https://api.github.com/repos/tinode/chat/issues/379/events,https://github.com/tinode/chat/pull/379,581116436,MDExOlB1bGxSZXF1ZXN0Mzg4MjI2MTc1,379,Basic Tinode Push Gateway adapter.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-03-14T08:59:17Z,2020-03-14T16:27:04Z,2020-03-14T16:27:04Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/379', 'html_url': 'https://github.com/tinode/chat/pull/379', 'diff_url': 'https://github.com/tinode/chat/pull/379.diff', 'patch_url': 'https://github.com/tinode/chat/pull/379.patch'}","Something simple to start with.
I'll add sending all payloads in one request and compression in a followup PR.",
187,https://api.github.com/repos/tinode/chat/issues/378,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/378/labels{/name},https://api.github.com/repos/tinode/chat/issues/378/comments,https://api.github.com/repos/tinode/chat/issues/378/events,https://github.com/tinode/chat/issues/378,579956575,MDU6SXNzdWU1Nzk5NTY1NzU=,378,Search Plugin Bug,"{'login': 'saslv', 'id': 1732073, 'node_id': 'MDQ6VXNlcjE3MzIwNzM=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1732073?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/saslv', 'html_url': 'https://github.com/saslv', 'followers_url': 'https://api.github.com/users/saslv/followers', 'following_url': 'https://api.github.com/users/saslv/following{/other_user}', 'gists_url': 'https://api.github.com/users/saslv/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/saslv/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/saslv/subscriptions', 'organizations_url': 'https://api.github.com/users/saslv/orgs', 'repos_url': 'https://api.github.com/users/saslv/repos', 'events_url': 'https://api.github.com/users/saslv/events{/privacy}', 'received_events_url': 'https://api.github.com/users/saslv/received_events', 'type': 'User', 'site_admin': False}","[{'id': 811090999, 'node_id': 'MDU6TGFiZWw4MTEwOTA5OTk=', 'url': 'https://api.github.com/repos/tinode/chat/labels/feature%20request', 'name': 'feature request', 'color': 'edcf8b', 'default': False, 'description': None}]",closed,False,,[],,5,2020-03-12T13:56:06Z,2020-03-16T15:51:56Z,2020-03-16T15:51:56Z,NONE,,,"### There is no way to set ACS from search plugin.
This is the result of problem. Web client shows disabled icons near user name.
![image](https://user-images.githubusercontent.com/1732073/76528292-3d456580-6479-11ea-998d-22605fc7e546.png)
### Is this a bug report of a feature request?
- [x] Bug report
- [ ] Feature
### Your environment
#### Server-side
- [x] Own setup:
* platform Linux
* version of tinode server `0.16`
* database backend mysql
* gRPC/1.29.0-dev
#### Client-side
- [x] TinodeWeb/tinodejs: javascript client
- Version of the client `0.16.3`
### Steps to reproduce
Developing search plugin.
Regarding this doc: https://gowalker.org/github.com/tinode/chat/pbx#PluginClient
Find should return type SearchFound whitch should contain type TopicSub list in result.
For TopicSub we can set AccessMode (https://gowalker.org/github.com/tinode/chat/pbx#AccessMode) that have want and given properties.
Fragments for search plugin python code
```
class Plugin(pbx.PluginServicer):
def Find(
self,
event,
context # type: grpc.RpcContext
):
sf = pb.SearchFound()
query = event.query
cursor = get_cursor()
term = '%' + query + '%'
user_id = event.user_id[3:]
user_id_int = decode_uid(user_id)
cursor.execute(SEARCH_QUERY, (term, user_id_int))
for row in cursor.fetchall():
ts = pb.TopicSub()
ts.user_id = encode_uid(row['id'])
ts.public = row['public']
access = json.loads(row['access'])
ts.acs.given = access['Auth'].encode('utf-8')
ts.acs.want = access['Anon'].encode('utf-8')
ts.updated_at = int(row['updatedat'].strftime('%s')) * 1000
sf.result.append(ts)
cursor.close()
sf.status = pb.RespCode.RESPOND
return sf
```
And now we go to server code
Method pluginFind passes response to pbSubSliceDeserialize from pbconverter.go
(https://github.com/tinode/chat/blob/8d77b2be39a24e85f125e09e247ab17437df7878/server/pbconverter.go#L832)
Server sets ModeGiven and ModeWant.
After that here in topic.go (https://github.com/tinode/chat/blob/8d77b2be39a24e85f125e09e247ab17437df7878/server/topic.go#L1828)
server is trying to read default access if topic category is find.
So there is no way to set acs for search results from plugin.
### Expected behaviour
There should be ability to set ACS for search results from plugin.
### Actual behaviour
There is no way to set ACS for search results from plugin.
### Client-side log
```
{""meta"":{""id"":""116792"",""topic"":""fnd"",""ts"":""2020-03-12T13:49:30.486Z"",""sub"":[{""updated"":""2020-03-11T14:45:07Z"",""acs"":{""mode"":""N""},""public"":{""fn"":""Generated test_1""},""user"":""usroTqZNkdr74w""}]}}
```
",
188,https://api.github.com/repos/tinode/chat/issues/377,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/377/labels{/name},https://api.github.com/repos/tinode/chat/issues/377/comments,https://api.github.com/repos/tinode/chat/issues/377/events,https://github.com/tinode/chat/pull/377,577662135,MDExOlB1bGxSZXF1ZXN0Mzg1Mzg4MjEx,377,Allow bundling all available DB adapters in tinode binaries.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-03-09T05:08:35Z,2020-03-11T03:05:49Z,2020-03-11T03:05:49Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/377', 'html_url': 'https://github.com/tinode/chat/pull/377', 'diff_url': 'https://github.com/tinode/chat/pull/377.diff', 'patch_url': 'https://github.com/tinode/chat/pull/377.patch'}","In addition to specifying the DB adapter explicitly via build tags,
allow bundling all available DB adapters to the binary (enabled via ""all"" tag).
The adapter may be chosen by setting `store_config.adapter_name` field in `tinode.conf`.
Modify build scripts and docker configs to support this.
Docker tinode-all image includes the bundled binaries, the adapter may be
chosen by providing ADAPTER_NAME env var.",
189,https://api.github.com/repos/tinode/chat/issues/376,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/376/labels{/name},https://api.github.com/repos/tinode/chat/issues/376/comments,https://api.github.com/repos/tinode/chat/issues/376/events,https://github.com/tinode/chat/pull/376,577322675,MDExOlB1bGxSZXF1ZXN0Mzg1MTM2MzAy,376,"Memory leak in cluster sessions, cosmetics for monitoring","{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-03-07T11:40:30Z,2020-03-08T05:54:12Z,2020-03-08T05:53:11Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/376', 'html_url': 'https://github.com/tinode/chat/pull/376', 'diff_url': 'https://github.com/tinode/chat/pull/376.diff', 'patch_url': 'https://github.com/tinode/chat/pull/376.patch'}","Changes:
1. Memory leak, line 765 in `server/cluster.go`
https://github.com/tinode/chat/compare/devel...cluster2?expand=1#diff-d412b9240514b30a308e4b4c8208ae72R765
2. Removed initialization of `Session.remoteSubs` from proxied cluster sessions because it's not used.
3. Added check for duplicate session IDs.
4. Some cosmetic changes for monitoring: version number as decimal as opposite to hex, uptime.
5. Some debug logging removed, some `Printf`s replaced with `Println`s as the latter is better performing.
6. fixed a small memory waste in long polling. It's minor and unrelated to that massive leak.",
190,https://api.github.com/repos/tinode/chat/issues/375,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/375/labels{/name},https://api.github.com/repos/tinode/chat/issues/375/comments,https://api.github.com/repos/tinode/chat/issues/375/events,https://github.com/tinode/chat/issues/375,577306763,MDU6SXNzdWU1NzczMDY3NjM=,375,"Unable to login/signin, without error log. ( both in my local install and sandbox server)","{'login': 'sg552', 'id': 234533, 'node_id': 'MDQ6VXNlcjIzNDUzMw==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/234533?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/sg552', 'html_url': 'https://github.com/sg552', 'followers_url': 'https://api.github.com/users/sg552/followers', 'following_url': 'https://api.github.com/users/sg552/following{/other_user}', 'gists_url': 'https://api.github.com/users/sg552/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/sg552/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/sg552/subscriptions', 'organizations_url': 'https://api.github.com/users/sg552/orgs', 'repos_url': 'https://api.github.com/users/sg552/repos', 'events_url': 'https://api.github.com/users/sg552/events{/privacy}', 'received_events_url': 'https://api.github.com/users/sg552/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977920, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjA=', 'url': 'https://api.github.com/repos/tinode/chat/labels/bug', 'name': 'bug', 'color': 'fc2929', 'default': True, 'description': None}]",closed,False,,[],,4,2020-03-07T09:21:44Z,2020-03-09T12:39:42Z,2020-03-09T12:39:41Z,NONE,,,"### Unable to Login(Signin)
I am not able to login neither in the sanbox server, nor my local server.
username: alice
password: alice123
### Is this a bug report of a feature request?
- [x] Bug report
### Your environment
#### Server-side
- [x] sandbox url: https://sandbox.tinode.co
- [x] Your own setup:
* platform Ubuntu 18
* TinodeWeb/0.16.4-rc3 (tinodejs/0.16.4-rc3)
* database backend: MYSQL
#### Client-side
- [x] TinodeWeb/tinodejs: javascript client
* Browser make and version. (TinodeWeb/0.16.4-rc3 (tinodejs/0.16.4-rc3))
### Steps to reproduce
1. open https://sandbox.tinode.co
2. input username: alice, with password: alice123
3. click the ""signin"" button
### Expected behaviour
user should be logged in successfully, and the chat window should come out.
or should give message: ""password incorrect""
### Actual behaviour
web page hanged in ""loading""
### Server-side log
I can't touch the offical sandbox server's log.
In my local environment, the log looks like:
```
2020/03/07 17:20:26 Listening for client HTTP connections on [:6060]
2020/03/07 17:20:35 ws: session started Jvv1pRGG-zw 1
2020/03/07 17:20:35 in: '{""hi"":{""id"":""65668"",""ver"":""0.16.4-rc3"",""ua"":""TinodeWeb/0.16.4-rc3 (Chrome/77.0; Linux x86_64); tinodejs/0.16.4-rc3"",""lang"":""en-US""}}' ip='47.56.64.204:54402' sid='Jvv1pRGG-zw' uid=''
2020/03/07 17:20:37 ws: session started G2-goLWx-hI 2
2020/03/07 17:20:37 in: '{""hi"":{""id"":""129614"",""ver"":""0.16.4-rc3"",""ua"":""TinodeWeb/0.16.4-rc3 (Chrome/77.0; Linux x86_64); tinodejs/0.16.4-rc3"",""lang"":""en-US""}}' ip='47.56.64.204:54404' sid='G2-goLWx-hI' uid=''
```
### Client-side log
in chrome developer tools console:
```
[09:12:15:220] Connecting to: wss://sandbox.tinode.co/v0/channels?apikey=AQEAAAABAAD_rAp4DJh05a1HAwFT3A6K
tinode.prod.js:1 [09:12:16:104] out: {""hi"":{""id"":""118024"",""ver"":""0.16.4-rc3"",""ua"":""TinodeWeb/0.16.4-rc3 (Chrome/77.0; Linux x86_64); tinodejs/0.16.4-rc3"",""lang"":""en-US""}}
tinode.prod.js:1 [09:12:16:387] in: {""ctrl"":{""id"":""118024"",""params"":{""build"":""rethinkdb:v0.16.4-rc3"",""maxFileUploadSize"":8388608,""maxMessageSize"":262144,""maxSubscriberCount"":32,""maxTagCount"":16,""ver"":""0.16""},""code"":201,""text"":""created"",""ts"":""2020-03-07T09:12:16.255Z""}}
```
and this is the log from chrome developer tools ""network tag"", I can see the websocket connection established:
```
Request URL: wss://sandbox.tinode.co/v0/channels?apikey=AQEAAAABAAD_rAp4DJh05a1HAwFT3A6K
Request Method: GET
Status Code: 101 Switching Protocols
```
![Screenshot from 2020-03-07 17-22-43](https://user-images.githubusercontent.com/234533/76140724-54124380-6098-11ea-9b0d-f07c8d525b7a.png)
",
191,https://api.github.com/repos/tinode/chat/issues/374,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/374/labels{/name},https://api.github.com/repos/tinode/chat/issues/374/comments,https://api.github.com/repos/tinode/chat/issues/374/events,https://github.com/tinode/chat/pull/374,575211565,MDExOlB1bGxSZXF1ZXN0MzgzMzk5MzQz,374,Add instance tag to exported metrics.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-03-04T08:10:12Z,2020-03-06T06:46:36Z,2020-03-06T06:46:36Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/374', 'html_url': 'https://github.com/tinode/chat/pull/374', 'diff_url': 'https://github.com/tinode/chat/pull/374.diff', 'patch_url': 'https://github.com/tinode/chat/pull/374.patch'}",,
192,https://api.github.com/repos/tinode/chat/issues/373,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/373/labels{/name},https://api.github.com/repos/tinode/chat/issues/373/comments,https://api.github.com/repos/tinode/chat/issues/373/events,https://github.com/tinode/chat/pull/373,574562388,MDExOlB1bGxSZXF1ZXN0MzgyODYyOTk0,373,remove redundant type conversion during auth.Init() call,"{'login': 'Googlom', 'id': 36107508, 'node_id': 'MDQ6VXNlcjM2MTA3NTA4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/36107508?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Googlom', 'html_url': 'https://github.com/Googlom', 'followers_url': 'https://api.github.com/users/Googlom/followers', 'following_url': 'https://api.github.com/users/Googlom/following{/other_user}', 'gists_url': 'https://api.github.com/users/Googlom/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Googlom/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Googlom/subscriptions', 'organizations_url': 'https://api.github.com/users/Googlom/orgs', 'repos_url': 'https://api.github.com/users/Googlom/repos', 'events_url': 'https://api.github.com/users/Googlom/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Googlom/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-03-03T10:22:43Z,2020-03-03T10:26:19Z,2020-03-03T10:26:19Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/373', 'html_url': 'https://github.com/tinode/chat/pull/373', 'diff_url': 'https://github.com/tinode/chat/pull/373.diff', 'patch_url': 'https://github.com/tinode/chat/pull/373.patch'}",,
193,https://api.github.com/repos/tinode/chat/issues/372,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/372/labels{/name},https://api.github.com/repos/tinode/chat/issues/372/comments,https://api.github.com/repos/tinode/chat/issues/372/events,https://github.com/tinode/chat/pull/372,574504932,MDExOlB1bGxSZXF1ZXN0MzgyODE2MDcy,372,A couple bugfixes in exporter.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-03-03T08:43:28Z,2020-03-04T04:43:42Z,2020-03-04T04:37:22Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/372', 'html_url': 'https://github.com/tinode/chat/pull/372', 'diff_url': 'https://github.com/tinode/chat/pull/372.diff', 'patch_url': 'https://github.com/tinode/chat/pull/372.patch'}",,
194,https://api.github.com/repos/tinode/chat/issues/371,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/371/labels{/name},https://api.github.com/repos/tinode/chat/issues/371/comments,https://api.github.com/repos/tinode/chat/issues/371/events,https://github.com/tinode/chat/pull/371,573815466,MDExOlB1bGxSZXF1ZXN0MzgyMjU0Njg0,371,Support InfluxDB 1.7 push api format.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-03-02T08:56:20Z,2020-03-02T09:07:09Z,2020-03-02T09:07:08Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/371', 'html_url': 'https://github.com/tinode/chat/pull/371', 'diff_url': 'https://github.com/tinode/chat/pull/371.diff', 'patch_url': 'https://github.com/tinode/chat/pull/371.patch'}",,
195,https://api.github.com/repos/tinode/chat/issues/370,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/370/labels{/name},https://api.github.com/repos/tinode/chat/issues/370/comments,https://api.github.com/repos/tinode/chat/issues/370/events,https://github.com/tinode/chat/pull/370,572628802,MDExOlB1bGxSZXF1ZXN0MzgxMjg1ODY0,370,Allow pushing metrics to influx db in monitoring exporter.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-02-28T09:21:04Z,2020-03-01T05:32:45Z,2020-03-01T05:32:45Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/370', 'html_url': 'https://github.com/tinode/chat/pull/370', 'diff_url': 'https://github.com/tinode/chat/pull/370.diff', 'patch_url': 'https://github.com/tinode/chat/pull/370.patch'}",A simple prototype.,
196,https://api.github.com/repos/tinode/chat/issues/369,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/369/labels{/name},https://api.github.com/repos/tinode/chat/issues/369/comments,https://api.github.com/repos/tinode/chat/issues/369/events,https://github.com/tinode/chat/issues/369,572014950,MDU6SXNzdWU1NzIwMTQ5NTA=,369,{pres} not come on second device for same user / fast reconnect.,"{'login': 'bimawa', 'id': 1393809, 'node_id': 'MDQ6VXNlcjEzOTM4MDk=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1393809?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/bimawa', 'html_url': 'https://github.com/bimawa', 'followers_url': 'https://api.github.com/users/bimawa/followers', 'following_url': 'https://api.github.com/users/bimawa/following{/other_user}', 'gists_url': 'https://api.github.com/users/bimawa/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/bimawa/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/bimawa/subscriptions', 'organizations_url': 'https://api.github.com/users/bimawa/orgs', 'repos_url': 'https://api.github.com/users/bimawa/repos', 'events_url': 'https://api.github.com/users/bimawa/events{/privacy}', 'received_events_url': 'https://api.github.com/users/bimawa/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977925, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/question', 'name': 'question', 'color': 'cc317c', 'default': True, 'description': None}]",closed,False,,[],,9,2020-02-27T11:28:15Z,2020-02-27T14:55:11Z,2020-02-27T14:55:11Z,NONE,,,"### Subject of the issue
When user fast reconnect tinode not detect logout and presence not come to him.
### Is this a bug report of a feature request?
- [x] Question
### Your environment
#### Server-side
- [x] api.tinode.co
#### Client-side
- [x] grpc iOS
### Steps to reproduce
Fast reconnect to server.
Login on another device in same time with same user.
### Expected behaviour
Pres should come to logined user anyway.
### Actual behaviour
No pres messages come.
Maybe I did something wrong?",
197,https://api.github.com/repos/tinode/chat/issues/368,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/368/labels{/name},https://api.github.com/repos/tinode/chat/issues/368/comments,https://api.github.com/repos/tinode/chat/issues/368/events,https://github.com/tinode/chat/issues/368,570624329,MDU6SXNzdWU1NzA2MjQzMjk=,368,Not enough data in push notification plugin,"{'login': 'jetmind', 'id': 849266, 'node_id': 'MDQ6VXNlcjg0OTI2Ng==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/849266?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jetmind', 'html_url': 'https://github.com/jetmind', 'followers_url': 'https://api.github.com/users/jetmind/followers', 'following_url': 'https://api.github.com/users/jetmind/following{/other_user}', 'gists_url': 'https://api.github.com/users/jetmind/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jetmind/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jetmind/subscriptions', 'organizations_url': 'https://api.github.com/users/jetmind/orgs', 'repos_url': 'https://api.github.com/users/jetmind/repos', 'events_url': 'https://api.github.com/users/jetmind/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jetmind/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977925, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/question', 'name': 'question', 'color': 'cc317c', 'default': True, 'description': None}]",closed,False,,[],,3,2020-02-25T14:50:22Z,2020-03-03T07:03:16Z,2020-03-03T07:03:16Z,NONE,,,"I'm implementing my own push notifications plugin. In order to format message I need to get topic's public info so that I can show the name of a group chat in the notification message, but it seems like there is no way of doing that without modifying the core to pass more info to the plugin. Payload only contains topic name and no additional data.
Am I missing something? If not, is this something you'll be interested in adding to the core?",
198,https://api.github.com/repos/tinode/chat/issues/367,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/367/labels{/name},https://api.github.com/repos/tinode/chat/issues/367/comments,https://api.github.com/repos/tinode/chat/issues/367/events,https://github.com/tinode/chat/issues/367,569769915,MDU6SXNzdWU1Njk3Njk5MTU=,367,web client login timeout,"{'login': 'abitcyanine', 'id': 34504060, 'node_id': 'MDQ6VXNlcjM0NTA0MDYw', 'avatar_url': 'https://avatars1.githubusercontent.com/u/34504060?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/abitcyanine', 'html_url': 'https://github.com/abitcyanine', 'followers_url': 'https://api.github.com/users/abitcyanine/followers', 'following_url': 'https://api.github.com/users/abitcyanine/following{/other_user}', 'gists_url': 'https://api.github.com/users/abitcyanine/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/abitcyanine/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/abitcyanine/subscriptions', 'organizations_url': 'https://api.github.com/users/abitcyanine/orgs', 'repos_url': 'https://api.github.com/users/abitcyanine/repos', 'events_url': 'https://api.github.com/users/abitcyanine/events{/privacy}', 'received_events_url': 'https://api.github.com/users/abitcyanine/received_events', 'type': 'User', 'site_admin': False}","[{'id': 910591285, 'node_id': 'MDU6TGFiZWw5MTA1OTEyODU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/incomplete', 'name': 'incomplete', 'color': 'ff6633', 'default': False, 'description': ''}]",closed,False,,[],,4,2020-02-24T10:40:17Z,2020-03-04T06:32:04Z,2020-03-04T06:32:03Z,NONE,,,"We have two test servers.
(A) A server of our own, with tinode server (v0.15), is mapped to public IP through router.
(B) An alicloud server with tinode server(v0.16)
Recently, the web client connected to server A and returned timeout. I checked the client console and server messages. The client received hi's response, but did not receive login's response.
I copy the server(v0.15) to server B, the web client can access two versions of the server successfully. And I copy the server(v0.16) to server A,the web client can only access the server(v0.16) successfully. The same conf file used by two servers.
What other information do I need to provide? Please help me to analyze and locate the problem, thx.",
199,https://api.github.com/repos/tinode/chat/issues/366,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/366/labels{/name},https://api.github.com/repos/tinode/chat/issues/366/comments,https://api.github.com/repos/tinode/chat/issues/366/events,https://github.com/tinode/chat/pull/366,569450860,MDExOlB1bGxSZXF1ZXN0Mzc4NjcyNzY1,366,i18n of email templates,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-02-23T07:23:05Z,2020-02-25T06:23:10Z,2020-02-25T06:22:49Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/366', 'html_url': 'https://github.com/tinode/chat/pull/366', 'diff_url': 'https://github.com/tinode/chat/pull/366.diff', 'patch_url': 'https://github.com/tinode/chat/pull/366.patch'}","Email templates can be internationalised now: one template per language.
The email subject moved from tinode.conf to template.
Templates now support multipart-alternative composition.",
200,https://api.github.com/repos/tinode/chat/issues/365,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/365/labels{/name},https://api.github.com/repos/tinode/chat/issues/365/comments,https://api.github.com/repos/tinode/chat/issues/365/events,https://github.com/tinode/chat/issues/365,568553664,MDU6SXNzdWU1Njg1NTM2NjQ=,365,Examples,"{'login': 'tomiok', 'id': 11444365, 'node_id': 'MDQ6VXNlcjExNDQ0MzY1', 'avatar_url': 'https://avatars3.githubusercontent.com/u/11444365?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/tomiok', 'html_url': 'https://github.com/tomiok', 'followers_url': 'https://api.github.com/users/tomiok/followers', 'following_url': 'https://api.github.com/users/tomiok/following{/other_user}', 'gists_url': 'https://api.github.com/users/tomiok/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/tomiok/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/tomiok/subscriptions', 'organizations_url': 'https://api.github.com/users/tomiok/orgs', 'repos_url': 'https://api.github.com/users/tomiok/repos', 'events_url': 'https://api.github.com/users/tomiok/events{/privacy}', 'received_events_url': 'https://api.github.com/users/tomiok/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977925, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/question', 'name': 'question', 'color': 'cc317c', 'default': True, 'description': None}]",closed,False,,[],,1,2020-02-20T20:34:37Z,2020-02-21T06:48:12Z,2020-02-21T06:47:59Z,NONE,,,Any example project that uses Tinode?,
201,https://api.github.com/repos/tinode/chat/issues/364,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/364/labels{/name},https://api.github.com/repos/tinode/chat/issues/364/comments,https://api.github.com/repos/tinode/chat/issues/364/events,https://github.com/tinode/chat/pull/364,566684079,MDExOlB1bGxSZXF1ZXN0Mzc2NDQ2NTk0,364,Add login to Validator.ResetSecret signature.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-02-18T06:50:47Z,2020-02-23T05:12:23Z,2020-02-23T05:12:23Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/364', 'html_url': 'https://github.com/tinode/chat/pull/364', 'diff_url': 'https://github.com/tinode/chat/pull/364.diff', 'patch_url': 'https://github.com/tinode/chat/pull/364.patch'}",Login is included in the password reset email message.,
202,https://api.github.com/repos/tinode/chat/issues/363,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/363/labels{/name},https://api.github.com/repos/tinode/chat/issues/363/comments,https://api.github.com/repos/tinode/chat/issues/363/events,https://github.com/tinode/chat/issues/363,566139597,MDU6SXNzdWU1NjYxMzk1OTc=,363,go install no -output option,"{'login': 'usernameisnull', 'id': 3390414, 'node_id': 'MDQ6VXNlcjMzOTA0MTQ=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/3390414?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/usernameisnull', 'html_url': 'https://github.com/usernameisnull', 'followers_url': 'https://api.github.com/users/usernameisnull/followers', 'following_url': 'https://api.github.com/users/usernameisnull/following{/other_user}', 'gists_url': 'https://api.github.com/users/usernameisnull/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/usernameisnull/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/usernameisnull/subscriptions', 'organizations_url': 'https://api.github.com/users/usernameisnull/orgs', 'repos_url': 'https://api.github.com/users/usernameisnull/repos', 'events_url': 'https://api.github.com/users/usernameisnull/events{/privacy}', 'received_events_url': 'https://api.github.com/users/usernameisnull/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977921, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjE=', 'url': 'https://api.github.com/repos/tinode/chat/labels/duplicate', 'name': 'duplicate', 'color': 'cccccc', 'default': True, 'description': None}]",closed,False,,[],,2,2020-02-17T08:38:47Z,2020-02-18T01:41:31Z,2020-02-18T01:41:31Z,NONE,,,"in this link: https://github.com/tinode/chat/blob/master/docs/API.md#server-api
go install -tags mongodb -output $GOPATH/bin/tinode github.com/tinode/chat/server",
203,https://api.github.com/repos/tinode/chat/issues/362,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/362/labels{/name},https://api.github.com/repos/tinode/chat/issues/362/comments,https://api.github.com/repos/tinode/chat/issues/362/events,https://github.com/tinode/chat/pull/362,565854095,MDExOlB1bGxSZXF1ZXN0Mzc1Nzg5MTQ3,362,Add Chcred and VCard macros in tn-cli.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-02-16T05:22:34Z,2020-02-16T18:44:58Z,2020-02-16T18:44:58Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/362', 'html_url': 'https://github.com/tinode/chat/pull/362', 'diff_url': 'https://github.com/tinode/chat/pull/362.diff', 'patch_url': 'https://github.com/tinode/chat/pull/362.patch'}","Chcred adds or removes credentials for a user.
VCard prints user's vcard (description or credentials).",
204,https://api.github.com/repos/tinode/chat/issues/361,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/361/labels{/name},https://api.github.com/repos/tinode/chat/issues/361/comments,https://api.github.com/repos/tinode/chat/issues/361/events,https://github.com/tinode/chat/issues/361,564931028,MDU6SXNzdWU1NjQ5MzEwMjg=,361,ios push notification issue,"{'login': 'michael-networking', 'id': 8905585, 'node_id': 'MDQ6VXNlcjg5MDU1ODU=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/8905585?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/michael-networking', 'html_url': 'https://github.com/michael-networking', 'followers_url': 'https://api.github.com/users/michael-networking/followers', 'following_url': 'https://api.github.com/users/michael-networking/following{/other_user}', 'gists_url': 'https://api.github.com/users/michael-networking/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/michael-networking/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/michael-networking/subscriptions', 'organizations_url': 'https://api.github.com/users/michael-networking/orgs', 'repos_url': 'https://api.github.com/users/michael-networking/repos', 'events_url': 'https://api.github.com/users/michael-networking/events{/privacy}', 'received_events_url': 'https://api.github.com/users/michael-networking/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977925, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/question', 'name': 'question', 'color': 'cc317c', 'default': True, 'description': None}]",closed,False,,[],,6,2020-02-13T20:26:48Z,2020-03-04T06:32:48Z,2020-03-04T06:32:48Z,NONE,,,"I have installed latest 0.16.3 binary release (vm not docker) and compiled ios client too. Everything is good except ios client can't receive any push notification. I followed the document and also sent test message from fcm console to test notification and notification did come to our ios client. It seems server side didn't send any notification at all and there's no any log about pushing in tinode.log either even I have enabled push debug. I also notice plugin mentioned for mobile push notification, but no detail can be found. Please help and let me know if I miss anything.
By the way, is there any command line we can use to send push from server side to test because we have token already in table ""devices"" ? Thanks a lot.
",
205,https://api.github.com/repos/tinode/chat/issues/360,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/360/labels{/name},https://api.github.com/repos/tinode/chat/issues/360/comments,https://api.github.com/repos/tinode/chat/issues/360/events,https://github.com/tinode/chat/issues/360,564570991,MDU6SXNzdWU1NjQ1NzA5OTE=,360,the build/install doc is chaos,"{'login': 'usernameisnull', 'id': 3390414, 'node_id': 'MDQ6VXNlcjMzOTA0MTQ=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/3390414?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/usernameisnull', 'html_url': 'https://github.com/usernameisnull', 'followers_url': 'https://api.github.com/users/usernameisnull/followers', 'following_url': 'https://api.github.com/users/usernameisnull/following{/other_user}', 'gists_url': 'https://api.github.com/users/usernameisnull/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/usernameisnull/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/usernameisnull/subscriptions', 'organizations_url': 'https://api.github.com/users/usernameisnull/orgs', 'repos_url': 'https://api.github.com/users/usernameisnull/repos', 'events_url': 'https://api.github.com/users/usernameisnull/events{/privacy}', 'received_events_url': 'https://api.github.com/users/usernameisnull/received_events', 'type': 'User', 'site_admin': False}","[{'id': 1105115388, 'node_id': 'MDU6TGFiZWwxMTA1MTE1Mzg4', 'url': 'https://api.github.com/repos/tinode/chat/labels/documentation', 'name': 'documentation', 'color': 'd4c5f9', 'default': True, 'description': 'Request for documentation update'}]",closed,False,,[],,4,2020-02-13T10:05:40Z,2020-02-15T10:01:03Z,2020-02-15T10:01:03Z,NONE,,,"### Subject of the issue
can't build from source
### Is this a bug report of a feature request?
- [x] Bug report
- [ ] Feature request
### Your environment
#### Server-side
- [ ] api.tinode.co
- [x] Your own setup:
* platform (Windows, Mac, Linux etc)
```Distributor ID: Ubuntu
Description: Ubuntu 18.04.1 LTS
Release: 18.04
Codename: bionic
```
* version of tinode server, e.g. `0.15.2-rc3`
`0.16.3`
* database backend
`mysql`
#### Client-side
- [ ] TinodeWeb/tinodejs: javascript client
* Browser make and version.
- [ ] Tindroid: Android app
* Android API level (e.g. 25).
* Emulator or hardware, if hardware describe it.
- [ ] tn-cli
* Python version
- [ ] Chatbot
* Python version
- Version of the client, e.g. `0.15.1`
### Steps to reproduce
Tell us how to reproduce this issue.
1. go install no `-output` option!!
```
go get -tags mysql github.com/tinode/chat/server && go install -tags mysql -output $GOPATH/bin/tinode github.com/tinode/chat/server
```
2. build-all.sh, this can't run,problems:
```
cp: cannot stat './server/static/img/*.png': No such file or directory
cp: cannot stat './server/static/img/*.svg': No such file or directory
cp: cannot stat './server/static/audio/*.mp3': No such file or directory
cp: cannot stat './server/static/css/*.css': No such file or directory
cp: cannot stat './server/static/index.html': No such file or directory
cp: cannot stat './server/static/index-dev.html': No such file or directory
cp: cannot stat './server/static/umd/*.js': No such file or directory
cp: cannot stat './server/static/manifest.json': No such file or directory
cp: cannot stat './server/static/service-worker.js': No such file or directory
Building python code...
----, /root/gopath/src/github.com/tinode/chat
build-all.sh: line 139: ./build-py-grpc.sh: No such file or directory
```
### Expected behaviour
Tell us what should happen.
### Actual behaviour
Tell us what happens instead.
### Server-side log
Copy server-side log here. You may also attach it to the issue as a file.
### Client-side log
Copy client-side log here (Android logcat, Javascript console, etc). You may also attach it to the issue as a file.",
206,https://api.github.com/repos/tinode/chat/issues/359,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/359/labels{/name},https://api.github.com/repos/tinode/chat/issues/359/comments,https://api.github.com/repos/tinode/chat/issues/359/events,https://github.com/tinode/chat/pull/359,564530471,MDExOlB1bGxSZXF1ZXN0Mzc0NzQzMzg2,359,Add macro functionality to tn-cli.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-02-13T08:54:45Z,2020-02-15T04:42:05Z,2020-02-15T04:42:05Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/359', 'html_url': 'https://github.com/tinode/chat/pull/359', 'diff_url': 'https://github.com/tinode/chat/pull/359.diff', 'patch_url': 'https://github.com/tinode/chat/pull/359.patch'}","Macros are high-level commands that expand to a sequence of
basic Tinode CLI commands.",
207,https://api.github.com/repos/tinode/chat/issues/358,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/358/labels{/name},https://api.github.com/repos/tinode/chat/issues/358/comments,https://api.github.com/repos/tinode/chat/issues/358/events,https://github.com/tinode/chat/issues/358,564449148,MDU6SXNzdWU1NjQ0NDkxNDg=,358,token authentication and gRPC,"{'login': 'Googlom', 'id': 36107508, 'node_id': 'MDQ6VXNlcjM2MTA3NTA4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/36107508?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Googlom', 'html_url': 'https://github.com/Googlom', 'followers_url': 'https://api.github.com/users/Googlom/followers', 'following_url': 'https://api.github.com/users/Googlom/following{/other_user}', 'gists_url': 'https://api.github.com/users/Googlom/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Googlom/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Googlom/subscriptions', 'organizations_url': 'https://api.github.com/users/Googlom/orgs', 'repos_url': 'https://api.github.com/users/Googlom/repos', 'events_url': 'https://api.github.com/users/Googlom/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Googlom/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977925, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/question', 'name': 'question', 'color': 'cc317c', 'default': True, 'description': None}]",closed,False,,[],,2,2020-02-13T05:27:07Z,2020-02-13T08:41:22Z,2020-02-13T08:41:21Z,CONTRIBUTOR,,,"I think there is a bug with `pbconverter`. Token that client receives is unsuitable when it sent back to server. I've done some research:
1) `[]byte` generated by GenSecret():
`[16 206 1 189 53 77 116 50 113 70 87 94 20 0 1 0 1 0 214 47 239 28 142 176 39 196 84 226 59 59 243 185 154 200 194 190 121 142 191 42 209 240 21 20 145 3 116 235 216 65]`
2) `[]byte` after `json.Marshal()` (**pbconverter.interfaceMapToByteMap()**):
`[34 69 77 52 66 118 84 86 78 100 68 74 120 82 108 100 101 70 65 65 66 65 65 69 65 49 105 47 118 72 73 54 119 74 56 82 85 52 106 115 55 56 55 109 97 121 77 75 43 101 89 54 47 75 116 72 119 70 82 83 82 65 51 84 114 50 69 69 61 34]`
3) and **its string** representation: `""EM4BvTVNdDJxRldeFAABAAEA1i/vHI6wJ8RU4js787mayMK+eY6/KtHwFRSRA3Tr2EE=""`
4) What I received in python client:
```python
params {
key: ""token""
value: ""\""EM4BvTVNdDJxRldeFAABAAEA1i/vHI6wJ8RU4js787mayMK+eY6/KtHwFRSRA3Tr2EE=\""""
}
```
5) How I send token back to server:
```python
pb.ClientMsg(
login=pb.ClientLogin(
scheme=""token"",
secret=b'""EM4BvTVNdDJxRldeFAABAAEA1i/vHI6wJ8RU4js787mayMK+eY6/KtHwFRSRA3Tr2EE=""'
))
```
6) `[]byte` received by `Authenticate()` (same as in step 2):
`[34 69 77 52 66 118 84 86 78 100 68 74 120 82 108 100 101 70 65 65 66 65 65 69 65 49 105 47 118 72 73 54 119 74 56 82 85 52 106 115 55 56 55 109 97 121 77 75 43 101 89 54 47 75 116 72 119 70 82 83 82 65 51 84 114 50 69 69 61 34]`
This value used as token during auth.
7) But after `json.Unmarshal()`:
```go
var tkn []byte
json.Unmarshal(token, &tkn)
```
I get the same value as in step 1:
`[16 206 1 189 53 77 116 50 113 70 87 94 20 0 1 0 1 0 214 47 239 28 142 176 39 196 84 226 59 59 243 185 154 200 194 190 121 142 191 42 209 240 21 20 145 3 116 235 216 65]`
Is it a bug or am I doing something wrong? ",
208,https://api.github.com/repos/tinode/chat/issues/357,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/357/labels{/name},https://api.github.com/repos/tinode/chat/issues/357/comments,https://api.github.com/repos/tinode/chat/issues/357/events,https://github.com/tinode/chat/issues/357,563664719,MDU6SXNzdWU1NjM2NjQ3MTk=,357,e2e encryption,"{'login': 'Lunatic83', 'id': 3919247, 'node_id': 'MDQ6VXNlcjM5MTkyNDc=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/3919247?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Lunatic83', 'html_url': 'https://github.com/Lunatic83', 'followers_url': 'https://api.github.com/users/Lunatic83/followers', 'following_url': 'https://api.github.com/users/Lunatic83/following{/other_user}', 'gists_url': 'https://api.github.com/users/Lunatic83/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Lunatic83/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Lunatic83/subscriptions', 'organizations_url': 'https://api.github.com/users/Lunatic83/orgs', 'repos_url': 'https://api.github.com/users/Lunatic83/repos', 'events_url': 'https://api.github.com/users/Lunatic83/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Lunatic83/received_events', 'type': 'User', 'site_admin': False}","[{'id': 811090999, 'node_id': 'MDU6TGFiZWw4MTEwOTA5OTk=', 'url': 'https://api.github.com/repos/tinode/chat/labels/feature%20request', 'name': 'feature request', 'color': 'edcf8b', 'default': False, 'description': None}]",open,False,,[],,7,2020-02-12T01:07:02Z,2020-08-20T05:38:21Z,,NONE,,,"First of all many thanks for your effort, this is a very interesting project.
I know this is not easy and you have a big backlog, from what I can read this is the roadmap but could you please share when are you planning to implement?
Thanks,
Gaspare",
209,https://api.github.com/repos/tinode/chat/issues/356,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/356/labels{/name},https://api.github.com/repos/tinode/chat/issues/356/comments,https://api.github.com/repos/tinode/chat/issues/356/events,https://github.com/tinode/chat/issues/356,563228473,MDU6SXNzdWU1NjMyMjg0NzM=,356,secret chat ,"{'login': 'amiri267', 'id': 22135208, 'node_id': 'MDQ6VXNlcjIyMTM1MjA4', 'avatar_url': 'https://avatars1.githubusercontent.com/u/22135208?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/amiri267', 'html_url': 'https://github.com/amiri267', 'followers_url': 'https://api.github.com/users/amiri267/followers', 'following_url': 'https://api.github.com/users/amiri267/following{/other_user}', 'gists_url': 'https://api.github.com/users/amiri267/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/amiri267/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/amiri267/subscriptions', 'organizations_url': 'https://api.github.com/users/amiri267/orgs', 'repos_url': 'https://api.github.com/users/amiri267/repos', 'events_url': 'https://api.github.com/users/amiri267/events{/privacy}', 'received_events_url': 'https://api.github.com/users/amiri267/received_events', 'type': 'User', 'site_admin': False}","[{'id': 811090999, 'node_id': 'MDU6TGFiZWw4MTEwOTA5OTk=', 'url': 'https://api.github.com/repos/tinode/chat/labels/feature%20request', 'name': 'feature request', 'color': 'edcf8b', 'default': False, 'description': None}]",open,False,,[],,1,2020-02-11T14:04:49Z,2020-02-11T14:33:20Z,,NONE,,,"### Subject of the issue
please add secret chat similar telegram
auto remove chat history after user read message
- Feature request
### Your environment
#### Server-side
- api.tinode.co
#### Client-side
- Tindroid: Android app
- Tindroid: ios app
",
210,https://api.github.com/repos/tinode/chat/issues/355,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/355/labels{/name},https://api.github.com/repos/tinode/chat/issues/355/comments,https://api.github.com/repos/tinode/chat/issues/355/events,https://github.com/tinode/chat/pull/355,563079572,MDExOlB1bGxSZXF1ZXN0MzczNTU1OTQ4,355,Fix a couple of errors in MySQL adapter.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-02-11T09:40:41Z,2020-02-11T17:30:21Z,2020-02-11T17:30:21Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/355', 'html_url': 'https://github.com/tinode/chat/pull/355', 'diff_url': 'https://github.com/tinode/chat/pull/355.diff', 'patch_url': 'https://github.com/tinode/chat/pull/355.patch'}",Discovered these while implementing macros in tn-cli.,
211,https://api.github.com/repos/tinode/chat/issues/354,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/354/labels{/name},https://api.github.com/repos/tinode/chat/issues/354/comments,https://api.github.com/repos/tinode/chat/issues/354/events,https://github.com/tinode/chat/issues/354,561487824,MDU6SXNzdWU1NjE0ODc4MjQ=,354,[Question] Telegram like account creation and login,"{'login': 'Googlom', 'id': 36107508, 'node_id': 'MDQ6VXNlcjM2MTA3NTA4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/36107508?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Googlom', 'html_url': 'https://github.com/Googlom', 'followers_url': 'https://api.github.com/users/Googlom/followers', 'following_url': 'https://api.github.com/users/Googlom/following{/other_user}', 'gists_url': 'https://api.github.com/users/Googlom/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Googlom/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Googlom/subscriptions', 'organizations_url': 'https://api.github.com/users/Googlom/orgs', 'repos_url': 'https://api.github.com/users/Googlom/repos', 'events_url': 'https://api.github.com/users/Googlom/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Googlom/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977925, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/question', 'name': 'question', 'color': 'cc317c', 'default': True, 'description': None}]",closed,False,,[],,7,2020-02-07T08:19:45Z,2020-03-03T10:16:53Z,2020-03-03T10:16:53Z,CONTRIBUTOR,,,"Is it possible to register users like in Telegram? I mean type your phone number, enter code from SMS to finish registering and later on use that authenticated device without typing any login/password to log in.
I know that it can be achieved by using `token` auth, but what if token expires - how to refresh?
",
212,https://api.github.com/repos/tinode/chat/issues/353,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/353/labels{/name},https://api.github.com/repos/tinode/chat/issues/353/comments,https://api.github.com/repos/tinode/chat/issues/353/events,https://github.com/tinode/chat/pull/353,560367593,MDExOlB1bGxSZXF1ZXN0MzcxMzY5ODYx,353,Pushes for new subscriptions,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-02-05T13:20:29Z,2020-02-06T06:31:38Z,2020-02-06T06:31:18Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/353', 'html_url': 'https://github.com/tinode/chat/pull/353', 'diff_url': 'https://github.com/tinode/chat/pull/353.diff', 'patch_url': 'https://github.com/tinode/chat/pull/353.patch'}",Also AndroidNotification refactored. This refactoring is not directly related to the new push type.,
213,https://api.github.com/repos/tinode/chat/issues/352,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/352/labels{/name},https://api.github.com/repos/tinode/chat/issues/352/comments,https://api.github.com/repos/tinode/chat/issues/352/events,https://github.com/tinode/chat/pull/352,559014193,MDExOlB1bGxSZXF1ZXN0MzcwMjYxMTY4,352,cleanup: unused err assignments,"{'login': 'Googlom', 'id': 36107508, 'node_id': 'MDQ6VXNlcjM2MTA3NTA4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/36107508?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Googlom', 'html_url': 'https://github.com/Googlom', 'followers_url': 'https://api.github.com/users/Googlom/followers', 'following_url': 'https://api.github.com/users/Googlom/following{/other_user}', 'gists_url': 'https://api.github.com/users/Googlom/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Googlom/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Googlom/subscriptions', 'organizations_url': 'https://api.github.com/users/Googlom/orgs', 'repos_url': 'https://api.github.com/users/Googlom/repos', 'events_url': 'https://api.github.com/users/Googlom/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Googlom/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-02-03T11:14:34Z,2020-02-03T11:43:33Z,2020-02-03T11:43:28Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/352', 'html_url': 'https://github.com/tinode/chat/pull/352', 'diff_url': 'https://github.com/tinode/chat/pull/352.diff', 'patch_url': 'https://github.com/tinode/chat/pull/352.patch'}",#349,
214,https://api.github.com/repos/tinode/chat/issues/351,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/351/labels{/name},https://api.github.com/repos/tinode/chat/issues/351/comments,https://api.github.com/repos/tinode/chat/issues/351/events,https://github.com/tinode/chat/pull/351,558670785,MDExOlB1bGxSZXF1ZXN0MzY5OTkyMTMz,351,Ability to suspend users (MongoDB),"{'login': 'Googlom', 'id': 36107508, 'node_id': 'MDQ6VXNlcjM2MTA3NTA4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/36107508?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Googlom', 'html_url': 'https://github.com/Googlom', 'followers_url': 'https://api.github.com/users/Googlom/followers', 'following_url': 'https://api.github.com/users/Googlom/following{/other_user}', 'gists_url': 'https://api.github.com/users/Googlom/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Googlom/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Googlom/subscriptions', 'organizations_url': 'https://api.github.com/users/Googlom/orgs', 'repos_url': 'https://api.github.com/users/Googlom/repos', 'events_url': 'https://api.github.com/users/Googlom/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Googlom/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-02-02T09:41:51Z,2020-02-09T06:01:16Z,2020-02-03T07:53:54Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/351', 'html_url': 'https://github.com/tinode/chat/pull/351', 'diff_url': 'https://github.com/tinode/chat/pull/351.diff', 'patch_url': 'https://github.com/tinode/chat/pull/351.patch'}",#347,
215,https://api.github.com/repos/tinode/chat/issues/350,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/350/labels{/name},https://api.github.com/repos/tinode/chat/issues/350/comments,https://api.github.com/repos/tinode/chat/issues/350/events,https://github.com/tinode/chat/pull/350,558646631,MDExOlB1bGxSZXF1ZXN0MzY5OTc0NTU1,350,Enable history and command editing in interactive mode in tn-cli.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,5,2020-02-02T05:36:23Z,2020-02-03T08:12:18Z,2020-02-03T08:12:18Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/350', 'html_url': 'https://github.com/tinode/chat/pull/350', 'diff_url': 'https://github.com/tinode/chat/pull/350.diff', 'patch_url': 'https://github.com/tinode/chat/pull/350.patch'}",,
216,https://api.github.com/repos/tinode/chat/issues/349,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/349/labels{/name},https://api.github.com/repos/tinode/chat/issues/349/comments,https://api.github.com/repos/tinode/chat/issues/349/events,https://github.com/tinode/chat/issues/349,558559541,MDU6SXNzdWU1NTg1NTk1NDE=,349,A few unused assignments in mongodb_test.go,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}","[{'id': 1821392634, 'node_id': 'MDU6TGFiZWwxODIxMzkyNjM0', 'url': 'https://api.github.com/repos/tinode/chat/labels/cleanup', 'name': 'cleanup', 'color': 'c5def5', 'default': False, 'description': ''}]",closed,False,,[],,0,2020-02-01T16:00:26Z,2020-02-03T11:43:44Z,2020-02-03T11:43:44Z,CONTRIBUTOR,,,"@Googlom
### Subject of the issue
Goreportcard shows a few unused assignments in [mongodb_test.go](https://github.com/tinode/chat/blob/master/server/db/mongodb/tests/mongo_test.go) (scroll down to **ineffassign** section):
https://goreportcard.com/report/github.com/tinode/chat
For example,
https://github.com/tinode/chat/blob/master/server/db/mongodb/tests/mongo_test.go#L264
```go
got, err = adp.UserGetByCred(creds[0].Method, creds[0].Value)
if got != types.ParseUserId(""usr""+creds[0].User) {
t.Error(mismatchErrorString(""Uid"", got, types.ParseUserId(""usr""+creds[0].User)))
}
```
`err` is assigned, but not used after assignment: it's not checked and not returned. Could you please check if `err` needs to be checked and then either check it or, if check is not needed, replace `err` with` _`.
Thanks!",
217,https://api.github.com/repos/tinode/chat/issues/348,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/348/labels{/name},https://api.github.com/repos/tinode/chat/issues/348/comments,https://api.github.com/repos/tinode/chat/issues/348/events,https://github.com/tinode/chat/pull/348,558555337,MDExOlB1bGxSZXF1ZXN0MzY5OTA5MDM4,348,Ability to send different types of push notifications.,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-02-01T15:26:11Z,2020-02-02T09:20:29Z,2020-02-02T09:20:29Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/348', 'html_url': 'https://github.com/tinode/chat/pull/348', 'diff_url': 'https://github.com/tinode/chat/pull/348.diff', 'patch_url': 'https://github.com/tinode/chat/pull/348.patch'}",This is needed in order to send pushes for new subscriptions as well as silencing pushes when all messages are read from another device.,
218,https://api.github.com/repos/tinode/chat/issues/347,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/347/labels{/name},https://api.github.com/repos/tinode/chat/issues/347/comments,https://api.github.com/repos/tinode/chat/issues/347/events,https://github.com/tinode/chat/pull/347,558521349,MDExOlB1bGxSZXF1ZXN0MzY5ODgzODM4,347,Ability to suspend users,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,5,2020-02-01T10:38:43Z,2020-02-02T09:28:15Z,2020-02-02T09:28:15Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/347', 'html_url': 'https://github.com/tinode/chat/pull/347', 'diff_url': 'https://github.com/tinode/chat/pull/347.diff', 'patch_url': 'https://github.com/tinode/chat/pull/347.patch'}",Only mysql and rethinkdb adapters are updated for new functionality. ,
219,https://api.github.com/repos/tinode/chat/issues/346,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/346/labels{/name},https://api.github.com/repos/tinode/chat/issues/346/comments,https://api.github.com/repos/tinode/chat/issues/346/events,https://github.com/tinode/chat/issues/346,557067642,MDU6SXNzdWU1NTcwNjc2NDI=,346,Return the last message along with chat list,"{'login': 'kisulken', 'id': 7709243, 'node_id': 'MDQ6VXNlcjc3MDkyNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/7709243?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/kisulken', 'html_url': 'https://github.com/kisulken', 'followers_url': 'https://api.github.com/users/kisulken/followers', 'following_url': 'https://api.github.com/users/kisulken/following{/other_user}', 'gists_url': 'https://api.github.com/users/kisulken/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/kisulken/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/kisulken/subscriptions', 'organizations_url': 'https://api.github.com/users/kisulken/orgs', 'repos_url': 'https://api.github.com/users/kisulken/repos', 'events_url': 'https://api.github.com/users/kisulken/events{/privacy}', 'received_events_url': 'https://api.github.com/users/kisulken/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977921, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjE=', 'url': 'https://api.github.com/repos/tinode/chat/labels/duplicate', 'name': 'duplicate', 'color': 'cccccc', 'default': True, 'description': None}, {'id': 811090999, 'node_id': 'MDU6TGFiZWw4MTEwOTA5OTk=', 'url': 'https://api.github.com/repos/tinode/chat/labels/feature%20request', 'name': 'feature request', 'color': 'edcf8b', 'default': False, 'description': None}]",closed,False,,[],,1,2020-01-29T19:27:21Z,2020-01-30T06:16:16Z,2020-01-30T06:16:16Z,NONE,,,"This is probably a feature request as I was not able to locate a function to return the last messages with the list of chats aside from requesting everyone of them separately.
Currently the chat list looks like a list of names when most of the modern messengers are also displaying the last messages of the dialog along with the recipient name.
For example: list of chats in telegram containing name of a recipient and the last message of a dialog.
![785DEBB7-4912-477F-9478-8C60B817AC62](https://user-images.githubusercontent.com/7709243/73389630-75a63100-4289-11ea-9a80-153811bc64d0.png)
",
220,https://api.github.com/repos/tinode/chat/issues/345,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/345/labels{/name},https://api.github.com/repos/tinode/chat/issues/345/comments,https://api.github.com/repos/tinode/chat/issues/345/events,https://github.com/tinode/chat/pull/345,556017860,MDExOlB1bGxSZXF1ZXN0MzY3ODU0Nzc0,345,"fixed ""before"" param was inclusive.","{'login': 'Googlom', 'id': 36107508, 'node_id': 'MDQ6VXNlcjM2MTA3NTA4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/36107508?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Googlom', 'html_url': 'https://github.com/Googlom', 'followers_url': 'https://api.github.com/users/Googlom/followers', 'following_url': 'https://api.github.com/users/Googlom/following{/other_user}', 'gists_url': 'https://api.github.com/users/Googlom/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Googlom/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Googlom/subscriptions', 'organizations_url': 'https://api.github.com/users/Googlom/orgs', 'repos_url': 'https://api.github.com/users/Googlom/repos', 'events_url': 'https://api.github.com/users/Googlom/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Googlom/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-01-28T06:52:12Z,2020-01-28T07:05:55Z,2020-01-28T07:05:55Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/345', 'html_url': 'https://github.com/tinode/chat/pull/345', 'diff_url': 'https://github.com/tinode/chat/pull/345.diff', 'patch_url': 'https://github.com/tinode/chat/pull/345.patch'}",**before** param should have been exclusive. Fixed.,
221,https://api.github.com/repos/tinode/chat/issues/344,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/344/labels{/name},https://api.github.com/repos/tinode/chat/issues/344/comments,https://api.github.com/repos/tinode/chat/issues/344/events,https://github.com/tinode/chat/issues/344,552031236,MDU6SXNzdWU1NTIwMzEyMzY=,344,CLI Request failed,"{'login': 'kisulken', 'id': 7709243, 'node_id': 'MDQ6VXNlcjc3MDkyNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/7709243?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/kisulken', 'html_url': 'https://github.com/kisulken', 'followers_url': 'https://api.github.com/users/kisulken/followers', 'following_url': 'https://api.github.com/users/kisulken/following{/other_user}', 'gists_url': 'https://api.github.com/users/kisulken/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/kisulken/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/kisulken/subscriptions', 'organizations_url': 'https://api.github.com/users/kisulken/orgs', 'repos_url': 'https://api.github.com/users/kisulken/repos', 'events_url': 'https://api.github.com/users/kisulken/events{/privacy}', 'received_events_url': 'https://api.github.com/users/kisulken/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977920, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjA=', 'url': 'https://api.github.com/repos/tinode/chat/labels/bug', 'name': 'bug', 'color': 'fc2929', 'default': True, 'description': None}]",closed,False,,[],,3,2020-01-20T02:20:00Z,2020-01-20T07:48:21Z,2020-01-20T07:48:20Z,NONE,,,"### Subject of the issue
Running `tinode/tinode-rethinkdb:0.16.2` docker container and connecting to it via CLI using `python tn-cli.py --host=""0.0.0.0:16061"" --no-login`
### Is this a bug report of a feature request?
- [X] Bug report
- [ ] Feature request
### Your environment
#### Server-side
* platform: Mac OS 10.14.6 + docker 2.1.0.5
* version of tinode server, e.g. `0.16.2`
* database backend: rethink db
#### Client-side
- [X] tn-cli
Python 2.7.15
- Version of the client `0.16.2`
### Steps to reproduce
Run docker image
```
tinode:
container_name: tinode_messaging
image: tinode/tinode-rethinkdb:0.16.2
hostname: tinode
restart: on-failure:5
environment:
GET_HOST_FROM: dns
EXT_CONFIG: /tinode.conf
volumes:
- ../tinodedata/new_tinode.conf:/tinode.conf
- ../tinodedata/logs:/var/log
ports:
- 6060:18080
- 16061:16061
depends_on:
- tinode_db
networks:
- lollinet
```
### Expected behaviour
Successful connection to the server
### Actual behaviour
Instead of connecting to the server the error is being printed
### Server-side log
No server side errors
### Client-side log
```
$ python tn-cli.py --host=""0.0.0.0:16061"" --no-login
Tinode command line client. Version 1.2.1/0.16.2; gRPC/1.26.0.
Server at '0.0.0.0:16061'
tn> Request failed: coercing to Unicode: need string or buffer, int found
Shutting down...
```
Additional logs after I added some extra print(..)
` tn-cli.py 888`
My goal is to be able to register users at Tinode from Go application. Currently I am doing it by executing python cli script with `.must $user acc --scheme=basic --uname=...`. Is there any other way I could achieve the same result without using python cli script? Is there a Go client for tinode?",
222,https://api.github.com/repos/tinode/chat/issues/343,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/343/labels{/name},https://api.github.com/repos/tinode/chat/issues/343/comments,https://api.github.com/repos/tinode/chat/issues/343/events,https://github.com/tinode/chat/issues/343,551973903,MDU6SXNzdWU1NTE5NzM5MDM=,343,Sync Contacts With Mobile(Android or iOS) Contacts,"{'login': 'ahs441', 'id': 16563880, 'node_id': 'MDQ6VXNlcjE2NTYzODgw', 'avatar_url': 'https://avatars3.githubusercontent.com/u/16563880?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ahs441', 'html_url': 'https://github.com/ahs441', 'followers_url': 'https://api.github.com/users/ahs441/followers', 'following_url': 'https://api.github.com/users/ahs441/following{/other_user}', 'gists_url': 'https://api.github.com/users/ahs441/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ahs441/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ahs441/subscriptions', 'organizations_url': 'https://api.github.com/users/ahs441/orgs', 'repos_url': 'https://api.github.com/users/ahs441/repos', 'events_url': 'https://api.github.com/users/ahs441/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ahs441/received_events', 'type': 'User', 'site_admin': False}","[{'id': 811090999, 'node_id': 'MDU6TGFiZWw4MTEwOTA5OTk=', 'url': 'https://api.github.com/repos/tinode/chat/labels/feature%20request', 'name': 'feature request', 'color': 'edcf8b', 'default': False, 'description': None}]",closed,False,,[],,4,2020-01-19T19:49:59Z,2020-07-04T12:31:10Z,2020-07-04T12:31:10Z,NONE,,,"### Subject of the issue
Automatically add and sync contacts with phone number (tel) from device (android or ios) contacts and show join messages if new contact join to the chat server (like telegram)
### Is this a bug report of a feature request?
- [x] Feature request
#### Server-side
- [x] api.tinode.co
- [x] Your own setup:
* platform (Windows, Mac, Linux etc)
#### Client-side
- [x] Tindroid: Android app
- [x] Tindroid: iOS app
",
223,https://api.github.com/repos/tinode/chat/issues/342,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/342/labels{/name},https://api.github.com/repos/tinode/chat/issues/342/comments,https://api.github.com/repos/tinode/chat/issues/342/events,https://github.com/tinode/chat/issues/342,549712006,MDU6SXNzdWU1NDk3MTIwMDY=,342,[Query] Pagination of Topics,"{'login': 'sandeepcmsm', 'id': 2104634, 'node_id': 'MDQ6VXNlcjIxMDQ2MzQ=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/2104634?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/sandeepcmsm', 'html_url': 'https://github.com/sandeepcmsm', 'followers_url': 'https://api.github.com/users/sandeepcmsm/followers', 'following_url': 'https://api.github.com/users/sandeepcmsm/following{/other_user}', 'gists_url': 'https://api.github.com/users/sandeepcmsm/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/sandeepcmsm/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/sandeepcmsm/subscriptions', 'organizations_url': 'https://api.github.com/users/sandeepcmsm/orgs', 'repos_url': 'https://api.github.com/users/sandeepcmsm/repos', 'events_url': 'https://api.github.com/users/sandeepcmsm/events{/privacy}', 'received_events_url': 'https://api.github.com/users/sandeepcmsm/received_events', 'type': 'User', 'site_admin': False}","[{'id': 811090999, 'node_id': 'MDU6TGFiZWw4MTEwOTA5OTk=', 'url': 'https://api.github.com/repos/tinode/chat/labels/feature%20request', 'name': 'feature request', 'color': 'edcf8b', 'default': False, 'description': None}]",open,False,,[],,1,2020-01-14T17:26:38Z,2020-01-14T18:05:10Z,,NONE,,,"### Pagination of Topics
If the user has more than 100 or 500 topics, Currently users are receiving all the topics at one shot. It would be better to paginate topics, but there are many cases to handle on the mobile devices when topics are cached. Can you point me direction to implement it or suggest any sources or documents related this scenario.
### Is this a bug report of a feature request?
- [ ] Bug report
- [*] Feature request
### Your environment
#### Server-side
- [ *] api.tinode.co
- [ *] Your own setup:
* platform (Windows, Mac, Linux etc)
* version of tinode server, e.g. `0.15.2-rc3`
* database backend
#### Client-side
- [ ] TinodeWeb/tinodejs: javascript client
* Browser make and version.
- [ *] Tindroid: Android app
* Android API level (e.g. 25).
* Emulator or hardware, if hardware describe it.
- [ ] tn-cli
* Python version
- [ ] Chatbot
* Python version
- Version of the client, e.g. `0.15.1`
",
224,https://api.github.com/repos/tinode/chat/issues/341,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/341/labels{/name},https://api.github.com/repos/tinode/chat/issues/341/comments,https://api.github.com/repos/tinode/chat/issues/341/events,https://github.com/tinode/chat/pull/341,548737971,MDExOlB1bGxSZXF1ZXN0MzYxOTYwMTEw,341,fix #340,"{'login': 'Googlom', 'id': 36107508, 'node_id': 'MDQ6VXNlcjM2MTA3NTA4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/36107508?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Googlom', 'html_url': 'https://github.com/Googlom', 'followers_url': 'https://api.github.com/users/Googlom/followers', 'following_url': 'https://api.github.com/users/Googlom/following{/other_user}', 'gists_url': 'https://api.github.com/users/Googlom/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Googlom/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Googlom/subscriptions', 'organizations_url': 'https://api.github.com/users/Googlom/orgs', 'repos_url': 'https://api.github.com/users/Googlom/repos', 'events_url': 'https://api.github.com/users/Googlom/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Googlom/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-01-13T06:51:40Z,2020-01-13T07:01:33Z,2020-01-13T07:01:33Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/341', 'html_url': 'https://github.com/tinode/chat/pull/341', 'diff_url': 'https://github.com/tinode/chat/pull/341.diff', 'patch_url': 'https://github.com/tinode/chat/pull/341.patch'}",,
225,https://api.github.com/repos/tinode/chat/issues/340,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/340/labels{/name},https://api.github.com/repos/tinode/chat/issues/340/comments,https://api.github.com/repos/tinode/chat/issues/340/events,https://github.com/tinode/chat/issues/340,548737217,MDU6SXNzdWU1NDg3MzcyMTc=,340,GRPC: Get sub with if_modified_since not working correctly,"{'login': 'Googlom', 'id': 36107508, 'node_id': 'MDQ6VXNlcjM2MTA3NTA4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/36107508?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Googlom', 'html_url': 'https://github.com/Googlom', 'followers_url': 'https://api.github.com/users/Googlom/followers', 'following_url': 'https://api.github.com/users/Googlom/following{/other_user}', 'gists_url': 'https://api.github.com/users/Googlom/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Googlom/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Googlom/subscriptions', 'organizations_url': 'https://api.github.com/users/Googlom/orgs', 'repos_url': 'https://api.github.com/users/Googlom/repos', 'events_url': 'https://api.github.com/users/Googlom/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Googlom/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-01-13T06:49:30Z,2020-01-13T07:01:54Z,2020-01-13T07:01:54Z,CONTRIBUTOR,,,"`get` `sub` request with **if_modified_since** param not working correctly (`Public `and `Private `fields not stripped. Request example:
```json{
""sub"": {
""topic"": ""me"",
""get_query"": {
""what"": ""sub"",
""sub"": {
""if_modified_since"": ""1578650040000""
}
}
}
}
```
But the same request with `what: ""desc""` working correctly:
```json{
""sub"": {
""topic"": ""me"",
""get_query"": {
""what"": ""desc"",
""desc"": {
""if_modified_since"": ""1578650040000""
}
}
}
}
```
",
226,https://api.github.com/repos/tinode/chat/issues/339,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/339/labels{/name},https://api.github.com/repos/tinode/chat/issues/339/comments,https://api.github.com/repos/tinode/chat/issues/339/events,https://github.com/tinode/chat/issues/339,548538015,MDU6SXNzdWU1NDg1MzgwMTU=,339,Problem with existing fcm config file,"{'login': 'pwFoo', 'id': 333408, 'node_id': 'MDQ6VXNlcjMzMzQwOA==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/333408?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/pwFoo', 'html_url': 'https://github.com/pwFoo', 'followers_url': 'https://api.github.com/users/pwFoo/followers', 'following_url': 'https://api.github.com/users/pwFoo/following{/other_user}', 'gists_url': 'https://api.github.com/users/pwFoo/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/pwFoo/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/pwFoo/subscriptions', 'organizations_url': 'https://api.github.com/users/pwFoo/orgs', 'repos_url': 'https://api.github.com/users/pwFoo/repos', 'events_url': 'https://api.github.com/users/pwFoo/events{/privacy}', 'received_events_url': 'https://api.github.com/users/pwFoo/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977920, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjA=', 'url': 'https://api.github.com/repos/tinode/chat/labels/bug', 'name': 'bug', 'color': 'fc2929', 'default': True, 'description': None}]",closed,False,,[],,9,2020-01-12T08:22:53Z,2020-01-21T18:45:43Z,2020-01-21T18:45:42Z,NONE,,,"Hi,
after some time I updated tinode to latest version and fcm push notifications stopped working without changes for fcm in tinode container. Maybe there is a tinode / fcm breaking change I don't know?
I searched https://console.firebase.google.com/ (project -> settings -> my apps -> sdk config snippet, no file download found) for a maybe changed config file and it looks like syntax is changed completely?
""Old"" file:
```
{
""type"": ""service_account"",
""project_id"": [...]
```
File I found online:
```
const firebaseConfig = {
apiKey: [...]
```
Haven't found a file like the old one online searched the firebase project...
Could you help me how to change fcm settings to get it working again?
P.S.
That's why I asked for moving away from fcm. With webpush-lib there is no need to manage a FCM project and config file. Just to generate keys for the server side.",
227,https://api.github.com/repos/tinode/chat/issues/338,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/338/labels{/name},https://api.github.com/repos/tinode/chat/issues/338/comments,https://api.github.com/repos/tinode/chat/issues/338/events,https://github.com/tinode/chat/issues/338,547355974,MDU6SXNzdWU1NDczNTU5NzQ=,338,Feature request: Guest / anonymous users?,"{'login': 'pwFoo', 'id': 333408, 'node_id': 'MDQ6VXNlcjMzMzQwOA==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/333408?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/pwFoo', 'html_url': 'https://github.com/pwFoo', 'followers_url': 'https://api.github.com/users/pwFoo/followers', 'following_url': 'https://api.github.com/users/pwFoo/following{/other_user}', 'gists_url': 'https://api.github.com/users/pwFoo/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/pwFoo/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/pwFoo/subscriptions', 'organizations_url': 'https://api.github.com/users/pwFoo/orgs', 'repos_url': 'https://api.github.com/users/pwFoo/repos', 'events_url': 'https://api.github.com/users/pwFoo/events{/privacy}', 'received_events_url': 'https://api.github.com/users/pwFoo/received_events', 'type': 'User', 'site_admin': False}","[{'id': 910591285, 'node_id': 'MDU6TGFiZWw5MTA1OTEyODU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/incomplete', 'name': 'incomplete', 'color': 'ff6633', 'default': False, 'description': ''}]",closed,False,,[],,14,2020-01-09T09:31:04Z,2020-04-01T11:36:26Z,2020-03-03T12:09:39Z,NONE,,,"Would be nice to have guest / anonymous users for chat / groups by link invite. It's possible for example with nextcloud talk.
Is it possible to do with tinode and could it added to planned features?
",
228,https://api.github.com/repos/tinode/chat/issues/337,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/337/labels{/name},https://api.github.com/repos/tinode/chat/issues/337/comments,https://api.github.com/repos/tinode/chat/issues/337/events,https://github.com/tinode/chat/issues/337,546711924,MDU6SXNzdWU1NDY3MTE5MjQ=,337,"Failed to parse config file: invalid character '""' after object key:value pair","{'login': 'pwFoo', 'id': 333408, 'node_id': 'MDQ6VXNlcjMzMzQwOA==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/333408?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/pwFoo', 'html_url': 'https://github.com/pwFoo', 'followers_url': 'https://api.github.com/users/pwFoo/followers', 'following_url': 'https://api.github.com/users/pwFoo/following{/other_user}', 'gists_url': 'https://api.github.com/users/pwFoo/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/pwFoo/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/pwFoo/subscriptions', 'organizations_url': 'https://api.github.com/users/pwFoo/orgs', 'repos_url': 'https://api.github.com/users/pwFoo/repos', 'events_url': 'https://api.github.com/users/pwFoo/events{/privacy}', 'received_events_url': 'https://api.github.com/users/pwFoo/received_events', 'type': 'User', 'site_admin': False}","[{'id': 811090999, 'node_id': 'MDU6TGFiZWw4MTEwOTA5OTk=', 'url': 'https://api.github.com/repos/tinode/chat/labels/feature%20request', 'name': 'feature request', 'color': 'edcf8b', 'default': False, 'description': None}]",closed,False,,[],,13,2020-01-08T08:23:34Z,2020-01-11T14:03:16Z,2020-01-11T14:03:15Z,NONE,,,"Hi @or-else,
I updated my tinode docker swarm to latest and it breaks with the following error.
```
2020/01/08 08:15:41 Initializing mysql 110
2020/01/08 08:15:41 Failed to parse config file:invalid character '""' after object key:value pair
```
I started the container manually to try to do more debugging...
```
2020/01/08 08:15:41 Server v0.16:/opt/tinode/tinode:v0.16.3-rc4; db: 'mysql'; pid 44; 2 process(es)
2020/01/08 08:15:41 Using config from '/opt/tinode/working.config'
2020/01/08 08:15:41 Failed to parse config file: invalid character '""' after object key:value pair
```
Any idea why there is an invalid character in the generated config?
Environment configurationen
```
environment:
# UPGRADE_DB: 'true'
# RESET_DB: 'true'
SMTP_SERVER: smtp.example.com
SMTP_PORT: '25'
SMTP_SENDER: noreply@example.com
SMTP_HOST_URL: https://chat.example.com
SMTP_PASSWORD:
FCM_CRED_FILE: /path/to/file.json
FCM_SENDER_ID:
FCM_VAPID_KEY:
```
Any change to add the line to the error message for future debugging?",
229,https://api.github.com/repos/tinode/chat/issues/336,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/336/labels{/name},https://api.github.com/repos/tinode/chat/issues/336/comments,https://api.github.com/repos/tinode/chat/issues/336/events,https://github.com/tinode/chat/issues/336,545641076,MDU6SXNzdWU1NDU2NDEwNzY=,336,Message replies and forwarding,"{'login': 'amiri267', 'id': 22135208, 'node_id': 'MDQ6VXNlcjIyMTM1MjA4', 'avatar_url': 'https://avatars1.githubusercontent.com/u/22135208?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/amiri267', 'html_url': 'https://github.com/amiri267', 'followers_url': 'https://api.github.com/users/amiri267/followers', 'following_url': 'https://api.github.com/users/amiri267/following{/other_user}', 'gists_url': 'https://api.github.com/users/amiri267/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/amiri267/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/amiri267/subscriptions', 'organizations_url': 'https://api.github.com/users/amiri267/orgs', 'repos_url': 'https://api.github.com/users/amiri267/repos', 'events_url': 'https://api.github.com/users/amiri267/events{/privacy}', 'received_events_url': 'https://api.github.com/users/amiri267/received_events', 'type': 'User', 'site_admin': False}","[{'id': 811090999, 'node_id': 'MDU6TGFiZWw4MTEwOTA5OTk=', 'url': 'https://api.github.com/repos/tinode/chat/labels/feature%20request', 'name': 'feature request', 'color': 'edcf8b', 'default': False, 'description': None}]",open,False,,[],,7,2020-01-06T10:00:20Z,2020-01-23T20:30:53Z,,NONE,,,"### please add forward and replay message
### Is this a bug report of a feature request?
- Feature request
### Your environment
#### Server-side
- api.tinode.co
- platform (Windows, Mac, Linux etc)
#### Client-side
- Browser make and version.
- Android API level (e.g. 25).
",
230,https://api.github.com/repos/tinode/chat/issues/335,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/335/labels{/name},https://api.github.com/repos/tinode/chat/issues/335/comments,https://api.github.com/repos/tinode/chat/issues/335/events,https://github.com/tinode/chat/pull/335,544205215,MDExOlB1bGxSZXF1ZXN0MzU4MzcwNjk3,335,Fix for missing presence notifications,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-12-31T14:48:27Z,2020-01-03T14:22:53Z,2020-01-03T14:22:36Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/335', 'html_url': 'https://github.com/tinode/chat/pull/335', 'diff_url': 'https://github.com/tinode/chat/pull/335.diff', 'patch_url': 'https://github.com/tinode/chat/pull/335.patch'}",Here is the fix.,
231,https://api.github.com/repos/tinode/chat/issues/334,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/334/labels{/name},https://api.github.com/repos/tinode/chat/issues/334/comments,https://api.github.com/repos/tinode/chat/issues/334/events,https://github.com/tinode/chat/pull/334,543327708,MDExOlB1bGxSZXF1ZXN0MzU3NjE4MDc2,334,Correct dellog.hi handling in mysql.MessageGetAll,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-12-29T06:47:59Z,2019-12-31T14:51:34Z,2019-12-29T14:05:47Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/334', 'html_url': 'https://github.com/tinode/chat/pull/334', 'diff_url': 'https://github.com/tinode/chat/pull/334.diff', 'patch_url': 'https://github.com/tinode/chat/pull/334.patch'}",,
232,https://api.github.com/repos/tinode/chat/issues/333,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/333/labels{/name},https://api.github.com/repos/tinode/chat/issues/333/comments,https://api.github.com/repos/tinode/chat/issues/333/events,https://github.com/tinode/chat/pull/333,538206923,MDExOlB1bGxSZXF1ZXN0MzUzMzkyOTE0,333,make replica_set optional,"{'login': 'Googlom', 'id': 36107508, 'node_id': 'MDQ6VXNlcjM2MTA3NTA4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/36107508?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Googlom', 'html_url': 'https://github.com/Googlom', 'followers_url': 'https://api.github.com/users/Googlom/followers', 'following_url': 'https://api.github.com/users/Googlom/following{/other_user}', 'gists_url': 'https://api.github.com/users/Googlom/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Googlom/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Googlom/subscriptions', 'organizations_url': 'https://api.github.com/users/Googlom/orgs', 'repos_url': 'https://api.github.com/users/Googlom/repos', 'events_url': 'https://api.github.com/users/Googlom/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Googlom/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-12-16T06:12:01Z,2019-12-19T08:16:35Z,2019-12-16T06:22:16Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/333', 'html_url': 'https://github.com/tinode/chat/pull/333', 'diff_url': 'https://github.com/tinode/chat/pull/333.diff', 'patch_url': 'https://github.com/tinode/chat/pull/333.patch'}",according to #330 ,
233,https://api.github.com/repos/tinode/chat/issues/332,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/332/labels{/name},https://api.github.com/repos/tinode/chat/issues/332/comments,https://api.github.com/repos/tinode/chat/issues/332/events,https://github.com/tinode/chat/pull/332,538206036,MDExOlB1bGxSZXF1ZXN0MzUzMzkyMTgy,332,Make replicaset optional,"{'login': 'Googlom', 'id': 36107508, 'node_id': 'MDQ6VXNlcjM2MTA3NTA4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/36107508?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Googlom', 'html_url': 'https://github.com/Googlom', 'followers_url': 'https://api.github.com/users/Googlom/followers', 'following_url': 'https://api.github.com/users/Googlom/following{/other_user}', 'gists_url': 'https://api.github.com/users/Googlom/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Googlom/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Googlom/subscriptions', 'organizations_url': 'https://api.github.com/users/Googlom/orgs', 'repos_url': 'https://api.github.com/users/Googlom/repos', 'events_url': 'https://api.github.com/users/Googlom/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Googlom/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2019-12-16T06:09:14Z,2019-12-19T08:16:35Z,2019-12-16T06:09:23Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/332', 'html_url': 'https://github.com/tinode/chat/pull/332', 'diff_url': 'https://github.com/tinode/chat/pull/332.diff', 'patch_url': 'https://github.com/tinode/chat/pull/332.patch'}",fix to #330 ,
234,https://api.github.com/repos/tinode/chat/issues/331,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/331/labels{/name},https://api.github.com/repos/tinode/chat/issues/331/comments,https://api.github.com/repos/tinode/chat/issues/331/events,https://github.com/tinode/chat/issues/331,537472265,MDU6SXNzdWU1Mzc0NzIyNjU=,331,How to get tinode for linux?,"{'login': 'music24by7', 'id': 58847163, 'node_id': 'MDQ6VXNlcjU4ODQ3MTYz', 'avatar_url': 'https://avatars1.githubusercontent.com/u/58847163?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/music24by7', 'html_url': 'https://github.com/music24by7', 'followers_url': 'https://api.github.com/users/music24by7/followers', 'following_url': 'https://api.github.com/users/music24by7/following{/other_user}', 'gists_url': 'https://api.github.com/users/music24by7/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/music24by7/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/music24by7/subscriptions', 'organizations_url': 'https://api.github.com/users/music24by7/orgs', 'repos_url': 'https://api.github.com/users/music24by7/repos', 'events_url': 'https://api.github.com/users/music24by7/events{/privacy}', 'received_events_url': 'https://api.github.com/users/music24by7/received_events', 'type': 'User', 'site_admin': False}","[{'id': 1105115388, 'node_id': 'MDU6TGFiZWwxMTA1MTE1Mzg4', 'url': 'https://api.github.com/repos/tinode/chat/labels/documentation', 'name': 'documentation', 'color': 'd4c5f9', 'default': True, 'description': 'Request for documentation update'}]",closed,False,,[],,4,2019-12-13T10:33:59Z,2019-12-13T10:56:10Z,2019-12-13T10:56:10Z,NONE,,,"I did following:
go get -tags mysql github.com/tinode/chat/server && go install -tags mysql github.com/tinode/chat/server
go get -tags mysql github.com/tinode/chat/tinode-db && go install -tags mysql github.com/tinode/chat/tinode-db
cd ~/go/src/github.com/tinode/chat/tinode-db
--> Change tinode.conf with proper mysql user/password
cp ~/go/bin/tinode-db .
./tinode-db -data=data.json
--> with this I can see MYSQL database getting created with proper tables/users
--> After this the next step according to INSTALL file is to run ./tinode
How I can build/get this file(tinode)? ",
235,https://api.github.com/repos/tinode/chat/issues/330,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/330/labels{/name},https://api.github.com/repos/tinode/chat/issues/330/comments,https://api.github.com/repos/tinode/chat/issues/330/events,https://github.com/tinode/chat/issues/330,537330442,MDU6SXNzdWU1MzczMzA0NDI=,330,Is it possible to make mongodb replica_set configurable?,"{'login': 'beanhacker', 'id': 43446474, 'node_id': 'MDQ6VXNlcjQzNDQ2NDc0', 'avatar_url': 'https://avatars0.githubusercontent.com/u/43446474?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/beanhacker', 'html_url': 'https://github.com/beanhacker', 'followers_url': 'https://api.github.com/users/beanhacker/followers', 'following_url': 'https://api.github.com/users/beanhacker/following{/other_user}', 'gists_url': 'https://api.github.com/users/beanhacker/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/beanhacker/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/beanhacker/subscriptions', 'organizations_url': 'https://api.github.com/users/beanhacker/orgs', 'repos_url': 'https://api.github.com/users/beanhacker/repos', 'events_url': 'https://api.github.com/users/beanhacker/events{/privacy}', 'received_events_url': 'https://api.github.com/users/beanhacker/received_events', 'type': 'User', 'site_admin': False}","[{'id': 811090999, 'node_id': 'MDU6TGFiZWw4MTEwOTA5OTk=', 'url': 'https://api.github.com/repos/tinode/chat/labels/feature%20request', 'name': 'feature request', 'color': 'edcf8b', 'default': False, 'description': None}]",closed,False,,[],,8,2019-12-13T03:35:01Z,2019-12-16T06:22:55Z,2019-12-16T06:22:54Z,NONE,,,"Hello author,
the MONOGODB I use here does not do a replication set. If I do a replication set at this time, many other services will also be forced to add the replication set option when connecting. Need to modify the system a lot. replica_set made configurable? thank!",
236,https://api.github.com/repos/tinode/chat/issues/329,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/329/labels{/name},https://api.github.com/repos/tinode/chat/issues/329/comments,https://api.github.com/repos/tinode/chat/issues/329/events,https://github.com/tinode/chat/issues/329,534505459,MDU6SXNzdWU1MzQ1MDU0NTk=,329,MySql Docker image failed to start,"{'login': 'mohgh', 'id': 8774487, 'node_id': 'MDQ6VXNlcjg3NzQ0ODc=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/8774487?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mohgh', 'html_url': 'https://github.com/mohgh', 'followers_url': 'https://api.github.com/users/mohgh/followers', 'following_url': 'https://api.github.com/users/mohgh/following{/other_user}', 'gists_url': 'https://api.github.com/users/mohgh/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mohgh/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mohgh/subscriptions', 'organizations_url': 'https://api.github.com/users/mohgh/orgs', 'repos_url': 'https://api.github.com/users/mohgh/repos', 'events_url': 'https://api.github.com/users/mohgh/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mohgh/received_events', 'type': 'User', 'site_admin': False}","[{'id': 910591285, 'node_id': 'MDU6TGFiZWw5MTA1OTEyODU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/incomplete', 'name': 'incomplete', 'color': 'ff6633', 'default': False, 'description': ''}]",closed,False,,[],,5,2019-12-08T07:47:00Z,2019-12-16T07:04:17Z,2019-12-16T07:04:17Z,NONE,,,"### Subject of the issue
I'm using the latest tinode mysql docker image with external config file option. I'm running the mysql docker image and then set the databast hostname to 'mysql' instead of 'localhost' in config file. Now when I run the actual tinode-mysql image, I got the following error:
2019/12/08 06:02:16 Initializing mysql 109
2019/12/08 06:02:16 Database reset requested
2019/12/08 06:02:18 No data provided, stopping
Although the container is started and running there's no active connection on port 6060.
### Is this a bug report of a feature request?
- [x] Bug report
- [ ] Feature request
### Your environment
#### Server-side
- [ ] api.tinode.co
- [x] Your own setup:
* Linux
* version of tinode server: latest
* mysql
",
237,https://api.github.com/repos/tinode/chat/issues/328,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/328/labels{/name},https://api.github.com/repos/tinode/chat/issues/328/comments,https://api.github.com/repos/tinode/chat/issues/328/events,https://github.com/tinode/chat/pull/328,530913056,MDExOlB1bGxSZXF1ZXN0MzQ3NDU0NDk1,328,Word correction,"{'login': 'shmutalov', 'id': 8098898, 'node_id': 'MDQ6VXNlcjgwOTg4OTg=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/8098898?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/shmutalov', 'html_url': 'https://github.com/shmutalov', 'followers_url': 'https://api.github.com/users/shmutalov/followers', 'following_url': 'https://api.github.com/users/shmutalov/following{/other_user}', 'gists_url': 'https://api.github.com/users/shmutalov/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/shmutalov/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/shmutalov/subscriptions', 'organizations_url': 'https://api.github.com/users/shmutalov/orgs', 'repos_url': 'https://api.github.com/users/shmutalov/repos', 'events_url': 'https://api.github.com/users/shmutalov/events{/privacy}', 'received_events_url': 'https://api.github.com/users/shmutalov/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-12-02T06:09:16Z,2019-12-02T06:25:50Z,2019-12-02T06:25:50Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/328', 'html_url': 'https://github.com/tinode/chat/pull/328', 'diff_url': 'https://github.com/tinode/chat/pull/328.diff', 'patch_url': 'https://github.com/tinode/chat/pull/328.patch'}",Fixed mistake in the parameter name (`LiveTopics`),
238,https://api.github.com/repos/tinode/chat/issues/327,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/327/labels{/name},https://api.github.com/repos/tinode/chat/issues/327/comments,https://api.github.com/repos/tinode/chat/issues/327/events,https://github.com/tinode/chat/pull/327,530692499,MDExOlB1bGxSZXF1ZXN0MzQ3MzAzNTk5,327,Proposal for reporting deleted messages,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2019-12-01T08:11:22Z,2019-12-09T07:32:34Z,2019-12-09T07:07:13Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/327', 'html_url': 'https://github.com/tinode/chat/pull/327', 'diff_url': 'https://github.com/tinode/chat/pull/327.diff', 'patch_url': 'https://github.com/tinode/chat/pull/327.patch'}","This is the proposal for dealing with
> Topic.subscribe fetches only the latest |limit| messages posted after latest cached message.
> Clients should be able to figure out legit gaps in sequence numbers and fetch the missing messages from the server when necessary.",
239,https://api.github.com/repos/tinode/chat/issues/326,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/326/labels{/name},https://api.github.com/repos/tinode/chat/issues/326/comments,https://api.github.com/repos/tinode/chat/issues/326/events,https://github.com/tinode/chat/pull/326,530612620,MDExOlB1bGxSZXF1ZXN0MzQ3MjQ3MTYw,326,Pass unroutable {pres} params in intra-cluster messages,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-11-30T18:10:34Z,2019-12-01T07:52:30Z,2019-12-01T05:16:29Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/326', 'html_url': 'https://github.com/tinode/chat/pull/326', 'diff_url': 'https://github.com/tinode/chat/pull/326.diff', 'patch_url': 'https://github.com/tinode/chat/pull/326.patch'}",This fixes spurious / duplicate `{pres}` notifications when running in a cluster.,
240,https://api.github.com/repos/tinode/chat/issues/325,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/325/labels{/name},https://api.github.com/repos/tinode/chat/issues/325/comments,https://api.github.com/repos/tinode/chat/issues/325/events,https://github.com/tinode/chat/pull/325,530320398,MDExOlB1bGxSZXF1ZXN0MzQ3MDI2NzU3,325,Word correction in API doc 2,"{'login': 'shmutalov', 'id': 8098898, 'node_id': 'MDQ6VXNlcjgwOTg4OTg=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/8098898?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/shmutalov', 'html_url': 'https://github.com/shmutalov', 'followers_url': 'https://api.github.com/users/shmutalov/followers', 'following_url': 'https://api.github.com/users/shmutalov/following{/other_user}', 'gists_url': 'https://api.github.com/users/shmutalov/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/shmutalov/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/shmutalov/subscriptions', 'organizations_url': 'https://api.github.com/users/shmutalov/orgs', 'repos_url': 'https://api.github.com/users/shmutalov/repos', 'events_url': 'https://api.github.com/users/shmutalov/events{/privacy}', 'received_events_url': 'https://api.github.com/users/shmutalov/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-11-29T12:25:26Z,2019-11-29T15:36:06Z,2019-11-29T15:36:06Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/325', 'html_url': 'https://github.com/tinode/chat/pull/325', 'diff_url': 'https://github.com/tinode/chat/pull/325.diff', 'patch_url': 'https://github.com/tinode/chat/pull/325.patch'}",Fixed possible mistake,
241,https://api.github.com/repos/tinode/chat/issues/324,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/324/labels{/name},https://api.github.com/repos/tinode/chat/issues/324/comments,https://api.github.com/repos/tinode/chat/issues/324/events,https://github.com/tinode/chat/pull/324,530308314,MDExOlB1bGxSZXF1ZXN0MzQ3MDE2OTUy,324,Word correction in API doc,"{'login': 'shmutalov', 'id': 8098898, 'node_id': 'MDQ6VXNlcjgwOTg4OTg=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/8098898?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/shmutalov', 'html_url': 'https://github.com/shmutalov', 'followers_url': 'https://api.github.com/users/shmutalov/followers', 'following_url': 'https://api.github.com/users/shmutalov/following{/other_user}', 'gists_url': 'https://api.github.com/users/shmutalov/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/shmutalov/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/shmutalov/subscriptions', 'organizations_url': 'https://api.github.com/users/shmutalov/orgs', 'repos_url': 'https://api.github.com/users/shmutalov/repos', 'events_url': 'https://api.github.com/users/shmutalov/events{/privacy}', 'received_events_url': 'https://api.github.com/users/shmutalov/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2019-11-29T11:55:14Z,2019-11-29T11:56:32Z,2019-11-29T11:56:22Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/324', 'html_url': 'https://github.com/tinode/chat/pull/324', 'diff_url': 'https://github.com/tinode/chat/pull/324.diff', 'patch_url': 'https://github.com/tinode/chat/pull/324.patch'}",Fixed possible mistake,
242,https://api.github.com/repos/tinode/chat/issues/323,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/323/labels{/name},https://api.github.com/repos/tinode/chat/issues/323/comments,https://api.github.com/repos/tinode/chat/issues/323/events,https://github.com/tinode/chat/pull/323,529366312,MDExOlB1bGxSZXF1ZXN0MzQ2MjU2NTYx,323,Support for delayed presence notifications,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-11-27T14:03:45Z,2019-11-30T18:24:55Z,2019-11-28T08:55:35Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/323', 'html_url': 'https://github.com/tinode/chat/pull/323', 'diff_url': 'https://github.com/tinode/chat/pull/323.diff', 'patch_url': 'https://github.com/tinode/chat/pull/323.patch'}","This is a rough draft, not thoroughly tested.
If client requests for notifications to be delayed they are placed into a queue. A ticker pulls notifications from the queue if they are old enough and executes them. If session disconnects from the topic before the notifications are sent, the request is removed from the queue.",
243,https://api.github.com/repos/tinode/chat/issues/322,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/322/labels{/name},https://api.github.com/repos/tinode/chat/issues/322/comments,https://api.github.com/repos/tinode/chat/issues/322/events,https://github.com/tinode/chat/issues/322,529230177,MDU6SXNzdWU1MjkyMzAxNzc=,322,SMTP error xxxx@xx.com unencrypted connection,"{'login': 'hackjackyer', 'id': 15046522, 'node_id': 'MDQ6VXNlcjE1MDQ2NTIy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/15046522?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/hackjackyer', 'html_url': 'https://github.com/hackjackyer', 'followers_url': 'https://api.github.com/users/hackjackyer/followers', 'following_url': 'https://api.github.com/users/hackjackyer/following{/other_user}', 'gists_url': 'https://api.github.com/users/hackjackyer/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/hackjackyer/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/hackjackyer/subscriptions', 'organizations_url': 'https://api.github.com/users/hackjackyer/orgs', 'repos_url': 'https://api.github.com/users/hackjackyer/repos', 'events_url': 'https://api.github.com/users/hackjackyer/events{/privacy}', 'received_events_url': 'https://api.github.com/users/hackjackyer/received_events', 'type': 'User', 'site_admin': False}","[{'id': 910591285, 'node_id': 'MDU6TGFiZWw5MTA1OTEyODU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/incomplete', 'name': 'incomplete', 'color': 'ff6633', 'default': False, 'description': ''}, {'id': 147977925, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/question', 'name': 'question', 'color': 'cc317c', 'default': True, 'description': None}]",closed,False,,[],,1,2019-11-27T09:43:59Z,2019-11-28T16:56:12Z,2019-11-28T16:56:12Z,NONE,,,"# SMTP error xxxx@xx.com unencrypted connection
configure smtp server in tinode.conf
but when reg the new user, the log show `SMTP error xxxx@xx.com unencrypted connection`, i test my smtp server is work well, and my zabbix server use its very well
anyone have the same issue?",
244,https://api.github.com/repos/tinode/chat/issues/321,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/321/labels{/name},https://api.github.com/repos/tinode/chat/issues/321/comments,https://api.github.com/repos/tinode/chat/issues/321/events,https://github.com/tinode/chat/pull/321,529163281,MDExOlB1bGxSZXF1ZXN0MzQ2MDkwMjI4,321,Set content-available field in iOS push notifications.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-11-27T07:17:42Z,2019-11-30T18:24:49Z,2019-11-27T07:26:51Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/321', 'html_url': 'https://github.com/tinode/chat/pull/321', 'diff_url': 'https://github.com/tinode/chat/pull/321.diff', 'patch_url': 'https://github.com/tinode/chat/pull/321.patch'}",Needed for triggering background fetch.,
245,https://api.github.com/repos/tinode/chat/issues/320,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/320/labels{/name},https://api.github.com/repos/tinode/chat/issues/320/comments,https://api.github.com/repos/tinode/chat/issues/320/events,https://github.com/tinode/chat/issues/320,528654210,MDU6SXNzdWU1Mjg2NTQyMTA=,320,Add tags on user registration,"{'login': 'lorenzoPrimi', 'id': 1616097, 'node_id': 'MDQ6VXNlcjE2MTYwOTc=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/1616097?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/lorenzoPrimi', 'html_url': 'https://github.com/lorenzoPrimi', 'followers_url': 'https://api.github.com/users/lorenzoPrimi/followers', 'following_url': 'https://api.github.com/users/lorenzoPrimi/following{/other_user}', 'gists_url': 'https://api.github.com/users/lorenzoPrimi/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/lorenzoPrimi/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/lorenzoPrimi/subscriptions', 'organizations_url': 'https://api.github.com/users/lorenzoPrimi/orgs', 'repos_url': 'https://api.github.com/users/lorenzoPrimi/repos', 'events_url': 'https://api.github.com/users/lorenzoPrimi/events{/privacy}', 'received_events_url': 'https://api.github.com/users/lorenzoPrimi/received_events', 'type': 'User', 'site_admin': False}","[{'id': 811090999, 'node_id': 'MDU6TGFiZWw4MTEwOTA5OTk=', 'url': 'https://api.github.com/repos/tinode/chat/labels/feature%20request', 'name': 'feature request', 'color': 'edcf8b', 'default': False, 'description': None}]",open,False,,[],,3,2019-11-26T11:11:22Z,2019-11-26T15:17:33Z,,NONE,,,"### Subject of the issue
Is there a way to automatically add tags on user registration?
I want to add ""username"" (not ""basic:username"") and ""first last name""
If yes, is it possible to do with the config file or should I modify the sources?
### Is this a bug report of a feature request?
- [ ] Bug report
- [X ] Feature request
### Your environment
- Last docker image",
246,https://api.github.com/repos/tinode/chat/issues/319,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/319/labels{/name},https://api.github.com/repos/tinode/chat/issues/319/comments,https://api.github.com/repos/tinode/chat/issues/319/events,https://github.com/tinode/chat/pull/319,528504853,MDExOlB1bGxSZXF1ZXN0MzQ1NTUzNDMz,319,add replicaset information to docs,"{'login': 'Googlom', 'id': 36107508, 'node_id': 'MDQ6VXNlcjM2MTA3NTA4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/36107508?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Googlom', 'html_url': 'https://github.com/Googlom', 'followers_url': 'https://api.github.com/users/Googlom/followers', 'following_url': 'https://api.github.com/users/Googlom/following{/other_user}', 'gists_url': 'https://api.github.com/users/Googlom/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Googlom/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Googlom/subscriptions', 'organizations_url': 'https://api.github.com/users/Googlom/orgs', 'repos_url': 'https://api.github.com/users/Googlom/repos', 'events_url': 'https://api.github.com/users/Googlom/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Googlom/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-11-26T05:52:28Z,2019-11-26T07:12:37Z,2019-11-26T07:12:37Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/319', 'html_url': 'https://github.com/tinode/chat/pull/319', 'diff_url': 'https://github.com/tinode/chat/pull/319.diff', 'patch_url': 'https://github.com/tinode/chat/pull/319.patch'}",,
247,https://api.github.com/repos/tinode/chat/issues/318,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/318/labels{/name},https://api.github.com/repos/tinode/chat/issues/318/comments,https://api.github.com/repos/tinode/chat/issues/318/events,https://github.com/tinode/chat/pull/318,527687208,MDExOlB1bGxSZXF1ZXN0MzQ0ODk5MzYx,318,Different logic of handling timeouts in outbound connections,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-11-24T11:55:13Z,2019-11-25T06:52:45Z,2019-11-25T06:52:41Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/318', 'html_url': 'https://github.com/tinode/chat/pull/318', 'diff_url': 'https://github.com/tinode/chat/pull/318.diff', 'patch_url': 'https://github.com/tinode/chat/pull/318.patch'}",,
248,https://api.github.com/repos/tinode/chat/issues/317,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/317/labels{/name},https://api.github.com/repos/tinode/chat/issues/317/comments,https://api.github.com/repos/tinode/chat/issues/317/events,https://github.com/tinode/chat/pull/317,526350084,MDExOlB1bGxSZXF1ZXN0MzQzODMyMTAy,317,TouchedAt should be in outer struct,"{'login': 'Googlom', 'id': 36107508, 'node_id': 'MDQ6VXNlcjM2MTA3NTA4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/36107508?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Googlom', 'html_url': 'https://github.com/Googlom', 'followers_url': 'https://api.github.com/users/Googlom/followers', 'following_url': 'https://api.github.com/users/Googlom/following{/other_user}', 'gists_url': 'https://api.github.com/users/Googlom/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Googlom/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Googlom/subscriptions', 'organizations_url': 'https://api.github.com/users/Googlom/orgs', 'repos_url': 'https://api.github.com/users/Googlom/repos', 'events_url': 'https://api.github.com/users/Googlom/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Googlom/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-11-21T03:56:59Z,2019-11-21T05:50:41Z,2019-11-21T05:50:41Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/317', 'html_url': 'https://github.com/tinode/chat/pull/317', 'diff_url': 'https://github.com/tinode/chat/pull/317.diff', 'patch_url': 'https://github.com/tinode/chat/pull/317.patch'}",,
249,https://api.github.com/repos/tinode/chat/issues/316,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/316/labels{/name},https://api.github.com/repos/tinode/chat/issues/316/comments,https://api.github.com/repos/tinode/chat/issues/316/events,https://github.com/tinode/chat/issues/316,525748260,MDU6SXNzdWU1MjU3NDgyNjA=,316,[Question]deploy on kubernetes,"{'login': 'diaobrother', 'id': 15030911, 'node_id': 'MDQ6VXNlcjE1MDMwOTEx', 'avatar_url': 'https://avatars2.githubusercontent.com/u/15030911?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/diaobrother', 'html_url': 'https://github.com/diaobrother', 'followers_url': 'https://api.github.com/users/diaobrother/followers', 'following_url': 'https://api.github.com/users/diaobrother/following{/other_user}', 'gists_url': 'https://api.github.com/users/diaobrother/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/diaobrother/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/diaobrother/subscriptions', 'organizations_url': 'https://api.github.com/users/diaobrother/orgs', 'repos_url': 'https://api.github.com/users/diaobrother/repos', 'events_url': 'https://api.github.com/users/diaobrother/events{/privacy}', 'received_events_url': 'https://api.github.com/users/diaobrother/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977925, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/question', 'name': 'question', 'color': 'cc317c', 'default': True, 'description': None}]",open,False,,[],,16,2019-11-20T11:36:40Z,2020-04-10T09:15:33Z,,NONE,,,"On kubernetes, every node is the same. In this case, how to make communication between nodes?",
250,https://api.github.com/repos/tinode/chat/issues/315,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/315/labels{/name},https://api.github.com/repos/tinode/chat/issues/315/comments,https://api.github.com/repos/tinode/chat/issues/315/events,https://github.com/tinode/chat/pull/315,523923182,MDExOlB1bGxSZXF1ZXN0MzQxODExMzA2,315,Set MutableContent and Alert field on the FCM Aps.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-11-17T02:01:58Z,2019-11-17T05:41:29Z,2019-11-17T05:40:46Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/315', 'html_url': 'https://github.com/tinode/chat/pull/315', 'diff_url': 'https://github.com/tinode/chat/pull/315.diff', 'patch_url': 'https://github.com/tinode/chat/pull/315.patch'}","Needed for NotificationServiceExtension to work.
Also, enable sound on push notifications in iOS.",
251,https://api.github.com/repos/tinode/chat/issues/314,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/314/labels{/name},https://api.github.com/repos/tinode/chat/issues/314/comments,https://api.github.com/repos/tinode/chat/issues/314/events,https://github.com/tinode/chat/pull/314,523806700,MDExOlB1bGxSZXF1ZXN0MzQxNzMxMjE0,314,Fix for a deadlock in hub.join,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-11-16T07:14:47Z,2019-11-16T07:27:21Z,2019-11-16T07:27:13Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/314', 'html_url': 'https://github.com/tinode/chat/pull/314', 'diff_url': 'https://github.com/tinode/chat/pull/314.diff', 'patch_url': 'https://github.com/tinode/chat/pull/314.patch'}",,
252,https://api.github.com/repos/tinode/chat/issues/313,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/313/labels{/name},https://api.github.com/repos/tinode/chat/issues/313/comments,https://api.github.com/repos/tinode/chat/issues/313/events,https://github.com/tinode/chat/pull/313,523446928,MDExOlB1bGxSZXF1ZXN0MzQxNDQ5MTI5,313,move store.GetUid() from adapter to store,"{'login': 'Googlom', 'id': 36107508, 'node_id': 'MDQ6VXNlcjM2MTA3NTA4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/36107508?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Googlom', 'html_url': 'https://github.com/Googlom', 'followers_url': 'https://api.github.com/users/Googlom/followers', 'following_url': 'https://api.github.com/users/Googlom/following{/other_user}', 'gists_url': 'https://api.github.com/users/Googlom/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Googlom/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Googlom/subscriptions', 'organizations_url': 'https://api.github.com/users/Googlom/orgs', 'repos_url': 'https://api.github.com/users/Googlom/repos', 'events_url': 'https://api.github.com/users/Googlom/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Googlom/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2019-11-15T12:37:17Z,2019-11-16T06:45:12Z,2019-11-16T06:45:12Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/313', 'html_url': 'https://github.com/tinode/chat/pull/313', 'diff_url': 'https://github.com/tinode/chat/pull/313.diff', 'patch_url': 'https://github.com/tinode/chat/pull/313.patch'}",Issue: https://github.com/tinode/chat/pull/306#issuecomment-554343709,
253,https://api.github.com/repos/tinode/chat/issues/312,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/312/labels{/name},https://api.github.com/repos/tinode/chat/issues/312/comments,https://api.github.com/repos/tinode/chat/issues/312/events,https://github.com/tinode/chat/pull/312,523318810,MDExOlB1bGxSZXF1ZXN0MzQxMzQ3MjY3,312,Simple tooling for debugging threading issues,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-11-15T08:12:13Z,2019-11-16T07:01:05Z,2019-11-16T04:25:01Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/312', 'html_url': 'https://github.com/tinode/chat/pull/312', 'diff_url': 'https://github.com/tinode/chat/pull/312.diff', 'patch_url': 'https://github.com/tinode/chat/pull/312.patch'}",,
254,https://api.github.com/repos/tinode/chat/issues/311,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/311/labels{/name},https://api.github.com/repos/tinode/chat/issues/311/comments,https://api.github.com/repos/tinode/chat/issues/311/events,https://github.com/tinode/chat/pull/311,522753151,MDExOlB1bGxSZXF1ZXN0MzQwODg4MjMz,311,Try to catch cases when remote subscription is missing,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2019-11-14T10:06:50Z,2019-11-16T07:01:06Z,2019-11-15T07:21:37Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/311', 'html_url': 'https://github.com/tinode/chat/pull/311', 'diff_url': 'https://github.com/tinode/chat/pull/311.diff', 'patch_url': 'https://github.com/tinode/chat/pull/311.patch'}",This is a bit extreme but missing remote subscription is a bug. Crash should allow us to catch it if it ever happens.,
255,https://api.github.com/repos/tinode/chat/issues/310,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/310/labels{/name},https://api.github.com/repos/tinode/chat/issues/310/comments,https://api.github.com/repos/tinode/chat/issues/310/events,https://github.com/tinode/chat/pull/310,522183122,MDExOlB1bGxSZXF1ZXN0MzQwNDI4MzIy,310,remove redundant 'dupe' flag,"{'login': 'Googlom', 'id': 36107508, 'node_id': 'MDQ6VXNlcjM2MTA3NTA4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/36107508?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Googlom', 'html_url': 'https://github.com/Googlom', 'followers_url': 'https://api.github.com/users/Googlom/followers', 'following_url': 'https://api.github.com/users/Googlom/following{/other_user}', 'gists_url': 'https://api.github.com/users/Googlom/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Googlom/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Googlom/subscriptions', 'organizations_url': 'https://api.github.com/users/Googlom/orgs', 'repos_url': 'https://api.github.com/users/Googlom/repos', 'events_url': 'https://api.github.com/users/Googlom/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Googlom/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-11-13T12:22:49Z,2019-11-13T17:20:04Z,2019-11-13T17:20:03Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/310', 'html_url': 'https://github.com/tinode/chat/pull/310', 'diff_url': 'https://github.com/tinode/chat/pull/310.diff', 'patch_url': 'https://github.com/tinode/chat/pull/310.patch'}",There is no need in `dupe` flag if `types.ErrDuplicate` error returned when there is a duplicate,
256,https://api.github.com/repos/tinode/chat/issues/309,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/309/labels{/name},https://api.github.com/repos/tinode/chat/issues/309/comments,https://api.github.com/repos/tinode/chat/issues/309/events,https://github.com/tinode/chat/issues/309,521934765,MDU6SXNzdWU1MjE5MzQ3NjU=,309,adapter.go:1850:16: constant 2147483648 overflows int,"{'login': 'supaplextor', 'id': 4638774, 'node_id': 'MDQ6VXNlcjQ2Mzg3NzQ=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/4638774?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/supaplextor', 'html_url': 'https://github.com/supaplextor', 'followers_url': 'https://api.github.com/users/supaplextor/followers', 'following_url': 'https://api.github.com/users/supaplextor/following{/other_user}', 'gists_url': 'https://api.github.com/users/supaplextor/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/supaplextor/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/supaplextor/subscriptions', 'organizations_url': 'https://api.github.com/users/supaplextor/orgs', 'repos_url': 'https://api.github.com/users/supaplextor/repos', 'events_url': 'https://api.github.com/users/supaplextor/events{/privacy}', 'received_events_url': 'https://api.github.com/users/supaplextor/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977920, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjA=', 'url': 'https://api.github.com/repos/tinode/chat/labels/bug', 'name': 'bug', 'color': 'fc2929', 'default': True, 'description': None}]",closed,False,,[],,5,2019-11-13T03:24:49Z,2019-11-14T21:48:05Z,2019-11-14T21:48:05Z,NONE,,,"### Subject of the issue
installing from [INSTALL.md](https://github.com/tinode/chat/blob/master/INSTALL.md)
As a normal user:
```
supaplex@tinode2:~$ go get -tags mysql github.com/tinode/chat/server && go install -tags mysql github.com/tinode/chat/server
# github.com/tinode/chat/server/db/mysql
go/src/github.com/tinode/chat/server/db/mysql/adapter.go:1850:16: constant 2147483648 overflows int
go/src/github.com/tinode/chat/server/db/mysql/adapter.go:1905:16: constant 2147483648 overflows int
supaplex@tinode2:~$ echo $?
2
```
### Is this a bug report of a feature request?
- [x] Bug report
- [ ] Feature request
### Your environment
#### Server-side
- [ ] api.tinode.co
- [x] Your own setup:
* platform (Windows, Mac, Linux etc)
Two instances:
i386 tinode2 (this report) Debian Linux VM Buster 10.0 with all updates.
Raspberry Pi 4 B (same results) Raspbian Buster 10 with all updates.
```
supaplex@tinode2:~$ dpkg -l golang-go
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-==============-============-============-=========================================================
ii golang-go 2:1.11~1 i386 Go programming language compiler, linker, compiled stdlib
supaplex@tinode2:~$ go version
go version go1.11.6 linux/386
```
* version of tinode server, e.g. `0.15.2-rc3`
git-master?
* database backend
MySQL
#### Client-side
- [x] TinodeWeb/tinodejs: javascript client
* Browser make and version.
No issues here. FF, Chrome, all work.
- [x] Tindroid: Android app
* Android API level (e.g. 25).
* Emulator or hardware, if hardware describe it.
Emulator (works)
- [ ] tn-cli
* Python version
- [ ] Chatbot
* Python version
- Version of the client, e.g. `0.15.1`
",
257,https://api.github.com/repos/tinode/chat/issues/308,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/308/labels{/name},https://api.github.com/repos/tinode/chat/issues/308/comments,https://api.github.com/repos/tinode/chat/issues/308/events,https://github.com/tinode/chat/pull/308,520484362,MDExOlB1bGxSZXF1ZXN0MzM5MDY3NzAx,308,touchedAt was a pointer which pointed to a shared instance of time,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-11-09T17:20:13Z,2019-11-14T10:05:58Z,2019-11-11T18:25:24Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/308', 'html_url': 'https://github.com/tinode/chat/pull/308', 'diff_url': 'https://github.com/tinode/chat/pull/308.diff', 'patch_url': 'https://github.com/tinode/chat/pull/308.patch'}",A similar bug probably exists with `DeletedAt`.,
258,https://api.github.com/repos/tinode/chat/issues/307,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/307/labels{/name},https://api.github.com/repos/tinode/chat/issues/307/comments,https://api.github.com/repos/tinode/chat/issues/307/events,https://github.com/tinode/chat/issues/307,518358957,MDU6SXNzdWU1MTgzNTg5NTc=,307,add fullName and Msg content in me topic's pres,"{'login': 'pcgpcgpcg', 'id': 5022843, 'node_id': 'MDQ6VXNlcjUwMjI4NDM=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/5022843?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/pcgpcgpcg', 'html_url': 'https://github.com/pcgpcgpcg', 'followers_url': 'https://api.github.com/users/pcgpcgpcg/followers', 'following_url': 'https://api.github.com/users/pcgpcgpcg/following{/other_user}', 'gists_url': 'https://api.github.com/users/pcgpcgpcg/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/pcgpcgpcg/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/pcgpcgpcg/subscriptions', 'organizations_url': 'https://api.github.com/users/pcgpcgpcg/orgs', 'repos_url': 'https://api.github.com/users/pcgpcgpcg/repos', 'events_url': 'https://api.github.com/users/pcgpcgpcg/events{/privacy}', 'received_events_url': 'https://api.github.com/users/pcgpcgpcg/received_events', 'type': 'User', 'site_admin': False}","[{'id': 811090999, 'node_id': 'MDU6TGFiZWw4MTEwOTA5OTk=', 'url': 'https://api.github.com/repos/tinode/chat/labels/feature%20request', 'name': 'feature request', 'color': 'edcf8b', 'default': False, 'description': None}]",open,False,,[],,9,2019-11-06T09:52:36Z,2020-01-30T11:49:19Z,,NONE,,,"Assume I am in the contact list view, at the same time another one send a message to me,I get the json like this:
{""topic"":""me"",""src"":""grph81dvFpmAiw"",""what"":""msg"",""seq"":27}}
It is diffcult to get the fullName and msg content without modify the chat server. So I think in server, we can change the pres as below:
{""topic"":""me"",""src"":""grph81dvFpmAiw"",""what"":""msg"",""seq"":27,""fn"":""Bob Smith"",""ct"":""hello""}}
so if we can modify in topic.go and pres.go?
the result like below:
![1573033886(1)](https://user-images.githubusercontent.com/5022843/68287737-2b644800-00be-11ea-95ec-c62674972699.png)
//if the pic below can't show,see below:
[http://140.143.143.225/res/prev.png](url)
",
259,https://api.github.com/repos/tinode/chat/issues/306,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/306/labels{/name},https://api.github.com/repos/tinode/chat/issues/306/comments,https://api.github.com/repos/tinode/chat/issues/306/events,https://github.com/tinode/chat/pull/306,513728002,MDExOlB1bGxSZXF1ZXN0MzMzNDYxOTMz,306,Mongodb adapter branch (in development),"{'login': 'Googlom', 'id': 36107508, 'node_id': 'MDQ6VXNlcjM2MTA3NTA4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/36107508?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Googlom', 'html_url': 'https://github.com/Googlom', 'followers_url': 'https://api.github.com/users/Googlom/followers', 'following_url': 'https://api.github.com/users/Googlom/following{/other_user}', 'gists_url': 'https://api.github.com/users/Googlom/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Googlom/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Googlom/subscriptions', 'organizations_url': 'https://api.github.com/users/Googlom/orgs', 'repos_url': 'https://api.github.com/users/Googlom/repos', 'events_url': 'https://api.github.com/users/Googlom/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Googlom/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,23,2019-10-29T06:56:24Z,2019-11-26T04:03:48Z,2019-11-26T03:56:14Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/306', 'html_url': 'https://github.com/tinode/chat/pull/306', 'diff_url': 'https://github.com/tinode/chat/pull/306.diff', 'patch_url': 'https://github.com/tinode/chat/pull/306.patch'}","Almost 80% of the adapter has already been done, only some complex (for me) methods and creating indexes remain. I didn't use the context (context.Background() everywhere), I just didn't figure out how to use them here.",
260,https://api.github.com/repos/tinode/chat/issues/305,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/305/labels{/name},https://api.github.com/repos/tinode/chat/issues/305/comments,https://api.github.com/repos/tinode/chat/issues/305/events,https://github.com/tinode/chat/issues/305,513286572,MDU6SXNzdWU1MTMyODY1NzI=,305,[Feature Request] - WebSocket Root User,"{'login': 'LenaCM', 'id': 12024995, 'node_id': 'MDQ6VXNlcjEyMDI0OTk1', 'avatar_url': 'https://avatars1.githubusercontent.com/u/12024995?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/LenaCM', 'html_url': 'https://github.com/LenaCM', 'followers_url': 'https://api.github.com/users/LenaCM/followers', 'following_url': 'https://api.github.com/users/LenaCM/following{/other_user}', 'gists_url': 'https://api.github.com/users/LenaCM/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/LenaCM/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/LenaCM/subscriptions', 'organizations_url': 'https://api.github.com/users/LenaCM/orgs', 'repos_url': 'https://api.github.com/users/LenaCM/repos', 'events_url': 'https://api.github.com/users/LenaCM/events{/privacy}', 'received_events_url': 'https://api.github.com/users/LenaCM/received_events', 'type': 'User', 'site_admin': False}","[{'id': 811090999, 'node_id': 'MDU6TGFiZWw4MTEwOTA5OTk=', 'url': 'https://api.github.com/repos/tinode/chat/labels/feature%20request', 'name': 'feature request', 'color': 'edcf8b', 'default': False, 'description': None}]",open,False,,[],,1,2019-10-28T12:56:11Z,2019-10-28T17:02:42Z,,NONE,,,"### Subject of the issue
Can you enable the root user to be used in websockets?
### Is this a bug report of a feature request?
- [ ] Bug report
- [x] Feature request
",
261,https://api.github.com/repos/tinode/chat/issues/304,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/304/labels{/name},https://api.github.com/repos/tinode/chat/issues/304/comments,https://api.github.com/repos/tinode/chat/issues/304/events,https://github.com/tinode/chat/issues/304,513126022,MDU6SXNzdWU1MTMxMjYwMjI=,304,"[Feature Request] Add one key to modify the permissions of all group members, such as group estoppel","{'login': 'KyoShio', 'id': 20240090, 'node_id': 'MDQ6VXNlcjIwMjQwMDkw', 'avatar_url': 'https://avatars2.githubusercontent.com/u/20240090?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/KyoShio', 'html_url': 'https://github.com/KyoShio', 'followers_url': 'https://api.github.com/users/KyoShio/followers', 'following_url': 'https://api.github.com/users/KyoShio/following{/other_user}', 'gists_url': 'https://api.github.com/users/KyoShio/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/KyoShio/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/KyoShio/subscriptions', 'organizations_url': 'https://api.github.com/users/KyoShio/orgs', 'repos_url': 'https://api.github.com/users/KyoShio/repos', 'events_url': 'https://api.github.com/users/KyoShio/events{/privacy}', 'received_events_url': 'https://api.github.com/users/KyoShio/received_events', 'type': 'User', 'site_admin': False}","[{'id': 910591285, 'node_id': 'MDU6TGFiZWw5MTA1OTEyODU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/incomplete', 'name': 'incomplete', 'color': 'ff6633', 'default': False, 'description': ''}]",open,False,,[],,14,2019-10-28T06:49:09Z,2019-11-01T09:46:57Z,,NONE,,,"### Subject of the issue
Add one key to modify the permissions of all group members, such as group members estoppel
### Is this a bug report of a feature request?
- [x] Feature request
",
262,https://api.github.com/repos/tinode/chat/issues/303,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/303/labels{/name},https://api.github.com/repos/tinode/chat/issues/303/comments,https://api.github.com/repos/tinode/chat/issues/303/events,https://github.com/tinode/chat/issues/303,512370454,MDU6SXNzdWU1MTIzNzA0NTQ=,303,[Question] adapter.SubsDelForUser hard deletion,"{'login': 'Googlom', 'id': 36107508, 'node_id': 'MDQ6VXNlcjM2MTA3NTA4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/36107508?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Googlom', 'html_url': 'https://github.com/Googlom', 'followers_url': 'https://api.github.com/users/Googlom/followers', 'following_url': 'https://api.github.com/users/Googlom/following{/other_user}', 'gists_url': 'https://api.github.com/users/Googlom/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Googlom/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Googlom/subscriptions', 'organizations_url': 'https://api.github.com/users/Googlom/orgs', 'repos_url': 'https://api.github.com/users/Googlom/repos', 'events_url': 'https://api.github.com/users/Googlom/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Googlom/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977920, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjA=', 'url': 'https://api.github.com/repos/tinode/chat/labels/bug', 'name': 'bug', 'color': 'fc2929', 'default': True, 'description': None}]",closed,False,,[],,2,2019-10-25T08:14:15Z,2019-10-25T09:52:38Z,2019-10-25T09:52:38Z,CONTRIBUTOR,,,"There is no query to hard delete subscriptions. Is that how it should be or a missing query?
https://github.com/tinode/chat/blob/84d9a499cd54e8e2170421b6984a76e776eeabcc/server/db/rethinkdb/adapter.go#L1351-L1364",
263,https://api.github.com/repos/tinode/chat/issues/302,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/302/labels{/name},https://api.github.com/repos/tinode/chat/issues/302/comments,https://api.github.com/repos/tinode/chat/issues/302/events,https://github.com/tinode/chat/issues/302,512021893,MDU6SXNzdWU1MTIwMjE4OTM=,302,The value of minTagLength,"{'login': 'vapao', 'id': 10863906, 'node_id': 'MDQ6VXNlcjEwODYzOTA2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/10863906?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/vapao', 'html_url': 'https://github.com/vapao', 'followers_url': 'https://api.github.com/users/vapao/followers', 'following_url': 'https://api.github.com/users/vapao/following{/other_user}', 'gists_url': 'https://api.github.com/users/vapao/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/vapao/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/vapao/subscriptions', 'organizations_url': 'https://api.github.com/users/vapao/orgs', 'repos_url': 'https://api.github.com/users/vapao/repos', 'events_url': 'https://api.github.com/users/vapao/events{/privacy}', 'received_events_url': 'https://api.github.com/users/vapao/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,6,2019-10-24T15:31:18Z,2019-10-24T15:41:48Z,2019-10-24T15:41:48Z,CONTRIBUTOR,,,"Many names in China are two or three characters, can't search by tag.
Can the value of minTagLength be reduced?",
264,https://api.github.com/repos/tinode/chat/issues/301,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/301/labels{/name},https://api.github.com/repos/tinode/chat/issues/301/comments,https://api.github.com/repos/tinode/chat/issues/301/events,https://github.com/tinode/chat/pull/301,511866727,MDExOlB1bGxSZXF1ZXN0MzMxOTgzOTYz,301,remove unused return value in adater.TopicShare method,"{'login': 'Googlom', 'id': 36107508, 'node_id': 'MDQ6VXNlcjM2MTA3NTA4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/36107508?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Googlom', 'html_url': 'https://github.com/Googlom', 'followers_url': 'https://api.github.com/users/Googlom/followers', 'following_url': 'https://api.github.com/users/Googlom/following{/other_user}', 'gists_url': 'https://api.github.com/users/Googlom/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Googlom/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Googlom/subscriptions', 'organizations_url': 'https://api.github.com/users/Googlom/orgs', 'repos_url': 'https://api.github.com/users/Googlom/repos', 'events_url': 'https://api.github.com/users/Googlom/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Googlom/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-10-24T10:53:43Z,2019-10-24T15:04:47Z,2019-10-24T15:04:46Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/301', 'html_url': 'https://github.com/tinode/chat/pull/301', 'diff_url': 'https://github.com/tinode/chat/pull/301.diff', 'patch_url': 'https://github.com/tinode/chat/pull/301.patch'}",,
265,https://api.github.com/repos/tinode/chat/issues/300,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/300/labels{/name},https://api.github.com/repos/tinode/chat/issues/300/comments,https://api.github.com/repos/tinode/chat/issues/300/events,https://github.com/tinode/chat/pull/300,511317245,MDExOlB1bGxSZXF1ZXN0MzMxNTM3MjE0,300,Add sql package and common adapter,"{'login': 'A9u', 'id': 10492976, 'node_id': 'MDQ6VXNlcjEwNDkyOTc2', 'avatar_url': 'https://avatars0.githubusercontent.com/u/10492976?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/A9u', 'html_url': 'https://github.com/A9u', 'followers_url': 'https://api.github.com/users/A9u/followers', 'following_url': 'https://api.github.com/users/A9u/following{/other_user}', 'gists_url': 'https://api.github.com/users/A9u/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/A9u/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/A9u/subscriptions', 'organizations_url': 'https://api.github.com/users/A9u/orgs', 'repos_url': 'https://api.github.com/users/A9u/repos', 'events_url': 'https://api.github.com/users/A9u/events{/privacy}', 'received_events_url': 'https://api.github.com/users/A9u/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,19,2019-10-23T13:18:15Z,2020-08-08T02:16:11Z,2020-08-08T02:16:10Z,NONE,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/300', 'html_url': 'https://github.com/tinode/chat/pull/300', 'diff_url': 'https://github.com/tinode/chat/pull/300.diff', 'patch_url': 'https://github.com/tinode/chat/pull/300.patch'}",,
266,https://api.github.com/repos/tinode/chat/issues/299,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/299/labels{/name},https://api.github.com/repos/tinode/chat/issues/299/comments,https://api.github.com/repos/tinode/chat/issues/299/events,https://github.com/tinode/chat/pull/299,511310600,MDExOlB1bGxSZXF1ZXN0MzMxNTMxODE1,299,remove unused opts parameter in adapter.OwnTopics method,"{'login': 'Googlom', 'id': 36107508, 'node_id': 'MDQ6VXNlcjM2MTA3NTA4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/36107508?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Googlom', 'html_url': 'https://github.com/Googlom', 'followers_url': 'https://api.github.com/users/Googlom/followers', 'following_url': 'https://api.github.com/users/Googlom/following{/other_user}', 'gists_url': 'https://api.github.com/users/Googlom/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Googlom/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Googlom/subscriptions', 'organizations_url': 'https://api.github.com/users/Googlom/orgs', 'repos_url': 'https://api.github.com/users/Googlom/repos', 'events_url': 'https://api.github.com/users/Googlom/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Googlom/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-10-23T13:07:06Z,2019-10-23T13:12:00Z,2019-10-23T13:12:00Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/299', 'html_url': 'https://github.com/tinode/chat/pull/299', 'diff_url': 'https://github.com/tinode/chat/pull/299.diff', 'patch_url': 'https://github.com/tinode/chat/pull/299.patch'}",,
267,https://api.github.com/repos/tinode/chat/issues/298,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/298/labels{/name},https://api.github.com/repos/tinode/chat/issues/298/comments,https://api.github.com/repos/tinode/chat/issues/298/events,https://github.com/tinode/chat/pull/298,511290797,MDExOlB1bGxSZXF1ZXN0MzMxNTE1NTQ4,298,typos,"{'login': 'Googlom', 'id': 36107508, 'node_id': 'MDQ6VXNlcjM2MTA3NTA4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/36107508?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Googlom', 'html_url': 'https://github.com/Googlom', 'followers_url': 'https://api.github.com/users/Googlom/followers', 'following_url': 'https://api.github.com/users/Googlom/following{/other_user}', 'gists_url': 'https://api.github.com/users/Googlom/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Googlom/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Googlom/subscriptions', 'organizations_url': 'https://api.github.com/users/Googlom/orgs', 'repos_url': 'https://api.github.com/users/Googlom/repos', 'events_url': 'https://api.github.com/users/Googlom/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Googlom/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-10-23T12:30:58Z,2019-10-24T04:06:34Z,2019-10-23T13:10:32Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/298', 'html_url': 'https://github.com/tinode/chat/pull/298', 'diff_url': 'https://github.com/tinode/chat/pull/298.diff', 'patch_url': 'https://github.com/tinode/chat/pull/298.patch'}",there is no `ModeGive `field inside db. Only `ModeGiven `,
268,https://api.github.com/repos/tinode/chat/issues/297,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/297/labels{/name},https://api.github.com/repos/tinode/chat/issues/297/comments,https://api.github.com/repos/tinode/chat/issues/297/events,https://github.com/tinode/chat/pull/297,511174415,MDExOlB1bGxSZXF1ZXN0MzMxNDIwNTE2,297,Infer iOS platform from UA string.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-10-23T08:51:40Z,2019-10-23T08:57:40Z,2019-10-23T08:55:25Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/297', 'html_url': 'https://github.com/tinode/chat/pull/297', 'diff_url': 'https://github.com/tinode/chat/pull/297.diff', 'patch_url': 'https://github.com/tinode/chat/pull/297.patch'}",,
269,https://api.github.com/repos/tinode/chat/issues/296,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/296/labels{/name},https://api.github.com/repos/tinode/chat/issues/296/comments,https://api.github.com/repos/tinode/chat/issues/296/events,https://github.com/tinode/chat/pull/296,511107238,MDExOlB1bGxSZXF1ZXN0MzMxMzY2OTMw,296,Remove label from version metric in promexp.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-10-23T06:35:13Z,2019-10-23T08:44:04Z,2019-10-23T06:39:33Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/296', 'html_url': 'https://github.com/tinode/chat/pull/296', 'diff_url': 'https://github.com/tinode/chat/pull/296.diff', 'patch_url': 'https://github.com/tinode/chat/pull/296.patch'}","To fix ""panic: inconsistent label cardinality: expected 1 label values but got 0 in []string(nil)"".",
270,https://api.github.com/repos/tinode/chat/issues/295,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/295/labels{/name},https://api.github.com/repos/tinode/chat/issues/295/comments,https://api.github.com/repos/tinode/chat/issues/295/events,https://github.com/tinode/chat/issues/295,510601015,MDU6SXNzdWU1MTA2MDEwMTU=,295,CredConfirm method,"{'login': 'Googlom', 'id': 36107508, 'node_id': 'MDQ6VXNlcjM2MTA3NTA4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/36107508?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Googlom', 'html_url': 'https://github.com/Googlom', 'followers_url': 'https://api.github.com/users/Googlom/followers', 'following_url': 'https://api.github.com/users/Googlom/following{/other_user}', 'gists_url': 'https://api.github.com/users/Googlom/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Googlom/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Googlom/subscriptions', 'organizations_url': 'https://api.github.com/users/Googlom/orgs', 'repos_url': 'https://api.github.com/users/Googlom/repos', 'events_url': 'https://api.github.com/users/Googlom/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Googlom/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977925, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/question', 'name': 'question', 'color': 'cc317c', 'default': True, 'description': None}]",closed,False,,[],,1,2019-10-22T11:46:03Z,2019-10-22T12:10:37Z,2019-10-22T12:10:37Z,CONTRIBUTOR,,,"I'm a little confused about this lines in `CredConfirm` method:
https://github.com/tinode/chat/blob/0428153dfd84323308a3de1552d922b0d6f14557/server/db/rethinkdb/adapter.go#L1973-L1977
Both soft and hard deletion done inside `CredUpsert` method. So why those lines for?",
271,https://api.github.com/repos/tinode/chat/issues/294,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/294/labels{/name},https://api.github.com/repos/tinode/chat/issues/294/comments,https://api.github.com/repos/tinode/chat/issues/294/events,https://github.com/tinode/chat/pull/294,508434680,MDExOlB1bGxSZXF1ZXN0MzI5MjI3NDA2,294,fix #293,"{'login': 'vapao', 'id': 10863906, 'node_id': 'MDQ6VXNlcjEwODYzOTA2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/10863906?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/vapao', 'html_url': 'https://github.com/vapao', 'followers_url': 'https://api.github.com/users/vapao/followers', 'following_url': 'https://api.github.com/users/vapao/following{/other_user}', 'gists_url': 'https://api.github.com/users/vapao/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/vapao/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/vapao/subscriptions', 'organizations_url': 'https://api.github.com/users/vapao/orgs', 'repos_url': 'https://api.github.com/users/vapao/repos', 'events_url': 'https://api.github.com/users/vapao/events{/privacy}', 'received_events_url': 'https://api.github.com/users/vapao/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2019-10-17T12:15:51Z,2019-10-17T13:06:30Z,2019-10-17T13:06:21Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/294', 'html_url': 'https://github.com/tinode/chat/pull/294', 'diff_url': 'https://github.com/tinode/chat/pull/294.diff', 'patch_url': 'https://github.com/tinode/chat/pull/294.patch'}",,
272,https://api.github.com/repos/tinode/chat/issues/293,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/293/labels{/name},https://api.github.com/repos/tinode/chat/issues/293/comments,https://api.github.com/repos/tinode/chat/issues/293/events,https://github.com/tinode/chat/issues/293,508430646,MDU6SXNzdWU1MDg0MzA2NDY=,293,init-db Table 'tinode.kvmeta' doesn't exist,"{'login': 'vapao', 'id': 10863906, 'node_id': 'MDQ6VXNlcjEwODYzOTA2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/10863906?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/vapao', 'html_url': 'https://github.com/vapao', 'followers_url': 'https://api.github.com/users/vapao/followers', 'following_url': 'https://api.github.com/users/vapao/following{/other_user}', 'gists_url': 'https://api.github.com/users/vapao/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/vapao/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/vapao/subscriptions', 'organizations_url': 'https://api.github.com/users/vapao/orgs', 'repos_url': 'https://api.github.com/users/vapao/repos', 'events_url': 'https://api.github.com/users/vapao/events{/privacy}', 'received_events_url': 'https://api.github.com/users/vapao/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977920, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjA=', 'url': 'https://api.github.com/repos/tinode/chat/labels/bug', 'name': 'bug', 'color': 'fc2929', 'default': True, 'description': None}]",closed,False,,[],,1,2019-10-17T12:07:44Z,2019-10-17T13:06:50Z,2019-10-17T13:06:49Z,CONTRIBUTOR,,,"### Subject of the issue
init-data -data ./data.json
```shell
Initializing mysql 108
Failed to init DB adapter:Error 1146: Table 'tinode.kvmeta' doesn't exist
```
### Is this a bug report of a feature request?
- [x] Bug report
- [ ] Feature request
### Your environment
#### Server-side
- [ ] api.tinode.co
- [x] Your own setup:
* Mac
* `0.16.1`
* mysql 5.7
",
273,https://api.github.com/repos/tinode/chat/issues/292,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/292/labels{/name},https://api.github.com/repos/tinode/chat/issues/292/comments,https://api.github.com/repos/tinode/chat/issues/292/events,https://github.com/tinode/chat/pull/292,508236163,MDExOlB1bGxSZXF1ZXN0MzI5MDY3NDEw,292,docs updated,"{'login': 'vapao', 'id': 10863906, 'node_id': 'MDQ6VXNlcjEwODYzOTA2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/10863906?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/vapao', 'html_url': 'https://github.com/vapao', 'followers_url': 'https://api.github.com/users/vapao/followers', 'following_url': 'https://api.github.com/users/vapao/following{/other_user}', 'gists_url': 'https://api.github.com/users/vapao/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/vapao/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/vapao/subscriptions', 'organizations_url': 'https://api.github.com/users/vapao/orgs', 'repos_url': 'https://api.github.com/users/vapao/repos', 'events_url': 'https://api.github.com/users/vapao/events{/privacy}', 'received_events_url': 'https://api.github.com/users/vapao/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2019-10-17T05:03:35Z,2019-10-17T06:01:44Z,2019-10-17T06:01:35Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/292', 'html_url': 'https://github.com/tinode/chat/pull/292', 'diff_url': 'https://github.com/tinode/chat/pull/292.diff', 'patch_url': 'https://github.com/tinode/chat/pull/292.patch'}",,
274,https://api.github.com/repos/tinode/chat/issues/291,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/291/labels{/name},https://api.github.com/repos/tinode/chat/issues/291/comments,https://api.github.com/repos/tinode/chat/issues/291/events,https://github.com/tinode/chat/pull/291,507753604,MDExOlB1bGxSZXF1ZXN0MzI4Njc5Mjgz,291,Refactoring,"{'login': 'Googlom', 'id': 36107508, 'node_id': 'MDQ6VXNlcjM2MTA3NTA4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/36107508?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Googlom', 'html_url': 'https://github.com/Googlom', 'followers_url': 'https://api.github.com/users/Googlom/followers', 'following_url': 'https://api.github.com/users/Googlom/following{/other_user}', 'gists_url': 'https://api.github.com/users/Googlom/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Googlom/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Googlom/subscriptions', 'organizations_url': 'https://api.github.com/users/Googlom/orgs', 'repos_url': 'https://api.github.com/users/Googlom/repos', 'events_url': 'https://api.github.com/users/Googlom/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Googlom/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-10-16T10:12:59Z,2019-10-16T10:24:25Z,2019-10-16T10:24:25Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/291', 'html_url': 'https://github.com/tinode/chat/pull/291', 'diff_url': 'https://github.com/tinode/chat/pull/291.diff', 'patch_url': 'https://github.com/tinode/chat/pull/291.patch'}","* Removed unused `name `parameter from `store.RegisterAdapter`
* Removed redundant type conversion in `adapter.Open`",
275,https://api.github.com/repos/tinode/chat/issues/290,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/290/labels{/name},https://api.github.com/repos/tinode/chat/issues/290/comments,https://api.github.com/repos/tinode/chat/issues/290/events,https://github.com/tinode/chat/issues/290,507633368,MDU6SXNzdWU1MDc2MzMzNjg=,290,"[Feature Request] Share desktop, remote control","{'login': 'portsip', 'id': 11405486, 'node_id': 'MDQ6VXNlcjExNDA1NDg2', 'avatar_url': 'https://avatars3.githubusercontent.com/u/11405486?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/portsip', 'html_url': 'https://github.com/portsip', 'followers_url': 'https://api.github.com/users/portsip/followers', 'following_url': 'https://api.github.com/users/portsip/following{/other_user}', 'gists_url': 'https://api.github.com/users/portsip/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/portsip/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/portsip/subscriptions', 'organizations_url': 'https://api.github.com/users/portsip/orgs', 'repos_url': 'https://api.github.com/users/portsip/repos', 'events_url': 'https://api.github.com/users/portsip/events{/privacy}', 'received_events_url': 'https://api.github.com/users/portsip/received_events', 'type': 'User', 'site_admin': False}","[{'id': 811090999, 'node_id': 'MDU6TGFiZWw4MTEwOTA5OTk=', 'url': 'https://api.github.com/repos/tinode/chat/labels/feature%20request', 'name': 'feature request', 'color': 'edcf8b', 'default': False, 'description': None}]",open,False,,[],,1,2019-10-16T06:00:23Z,2019-10-16T10:07:11Z,,NONE,,,It's possible support share desktop and remote control ?,
276,https://api.github.com/repos/tinode/chat/issues/289,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/289/labels{/name},https://api.github.com/repos/tinode/chat/issues/289/comments,https://api.github.com/repos/tinode/chat/issues/289/events,https://github.com/tinode/chat/pull/289,507146799,MDExOlB1bGxSZXF1ZXN0MzI4MTg5NTgx,289,duplicate of method CredGetActive in rethinkdb adapter,"{'login': 'Googlom', 'id': 36107508, 'node_id': 'MDQ6VXNlcjM2MTA3NTA4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/36107508?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Googlom', 'html_url': 'https://github.com/Googlom', 'followers_url': 'https://api.github.com/users/Googlom/followers', 'following_url': 'https://api.github.com/users/Googlom/following{/other_user}', 'gists_url': 'https://api.github.com/users/Googlom/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Googlom/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Googlom/subscriptions', 'organizations_url': 'https://api.github.com/users/Googlom/orgs', 'repos_url': 'https://api.github.com/users/Googlom/repos', 'events_url': 'https://api.github.com/users/Googlom/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Googlom/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2019-10-15T10:14:30Z,2019-10-15T11:34:08Z,2019-10-15T11:33:06Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/289', 'html_url': 'https://github.com/tinode/chat/pull/289', 'diff_url': 'https://github.com/tinode/chat/pull/289.diff', 'patch_url': 'https://github.com/tinode/chat/pull/289.patch'}",I don't know why but there is call to credGetActive from CredGetActive. I think its redundant.,
277,https://api.github.com/repos/tinode/chat/issues/288,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/288/labels{/name},https://api.github.com/repos/tinode/chat/issues/288/comments,https://api.github.com/repos/tinode/chat/issues/288/events,https://github.com/tinode/chat/issues/288,506996217,MDU6SXNzdWU1MDY5OTYyMTc=,288,adapter CredIsConfirmed() method,"{'login': 'Googlom', 'id': 36107508, 'node_id': 'MDQ6VXNlcjM2MTA3NTA4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/36107508?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Googlom', 'html_url': 'https://github.com/Googlom', 'followers_url': 'https://api.github.com/users/Googlom/followers', 'following_url': 'https://api.github.com/users/Googlom/following{/other_user}', 'gists_url': 'https://api.github.com/users/Googlom/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Googlom/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Googlom/subscriptions', 'organizations_url': 'https://api.github.com/users/Googlom/orgs', 'repos_url': 'https://api.github.com/users/Googlom/repos', 'events_url': 'https://api.github.com/users/Googlom/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Googlom/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977920, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjA=', 'url': 'https://api.github.com/repos/tinode/chat/labels/bug', 'name': 'bug', 'color': 'fc2929', 'default': True, 'description': None}]",closed,False,,[],,3,2019-10-15T04:24:29Z,2019-10-15T07:12:53Z,2019-10-15T07:12:26Z,CONTRIBUTOR,,,"adapter.CredIsConfirmed() method is unused.
Is it for ""future"" or just forgot to remove?
https://github.com/tinode/chat/blob/0428153dfd84323308a3de1552d922b0d6f14557/server/db/adapter.go#L67-L68",
278,https://api.github.com/repos/tinode/chat/issues/287,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/287/labels{/name},https://api.github.com/repos/tinode/chat/issues/287/comments,https://api.github.com/repos/tinode/chat/issues/287/events,https://github.com/tinode/chat/pull/287,506990764,MDExOlB1bGxSZXF1ZXN0MzI4MDY0MDY3,287,just a few typos,"{'login': 'Googlom', 'id': 36107508, 'node_id': 'MDQ6VXNlcjM2MTA3NTA4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/36107508?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Googlom', 'html_url': 'https://github.com/Googlom', 'followers_url': 'https://api.github.com/users/Googlom/followers', 'following_url': 'https://api.github.com/users/Googlom/following{/other_user}', 'gists_url': 'https://api.github.com/users/Googlom/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Googlom/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Googlom/subscriptions', 'organizations_url': 'https://api.github.com/users/Googlom/orgs', 'repos_url': 'https://api.github.com/users/Googlom/repos', 'events_url': 'https://api.github.com/users/Googlom/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Googlom/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2019-10-15T04:03:30Z,2019-10-15T09:52:47Z,2019-10-15T06:47:37Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/287', 'html_url': 'https://github.com/tinode/chat/pull/287', 'diff_url': 'https://github.com/tinode/chat/pull/287.diff', 'patch_url': 'https://github.com/tinode/chat/pull/287.patch'}",arg names according to implementation in **mysql/adapter.go** and **rethinkdb/adapter.go**,
279,https://api.github.com/repos/tinode/chat/issues/286,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/286/labels{/name},https://api.github.com/repos/tinode/chat/issues/286/comments,https://api.github.com/repos/tinode/chat/issues/286/events,https://github.com/tinode/chat/issues/286,506609595,MDU6SXNzdWU1MDY2MDk1OTU=,286,Create user validation fails with 500 error,"{'login': 'Googlom', 'id': 36107508, 'node_id': 'MDQ6VXNlcjM2MTA3NTA4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/36107508?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Googlom', 'html_url': 'https://github.com/Googlom', 'followers_url': 'https://api.github.com/users/Googlom/followers', 'following_url': 'https://api.github.com/users/Googlom/following{/other_user}', 'gists_url': 'https://api.github.com/users/Googlom/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Googlom/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Googlom/subscriptions', 'organizations_url': 'https://api.github.com/users/Googlom/orgs', 'repos_url': 'https://api.github.com/users/Googlom/repos', 'events_url': 'https://api.github.com/users/Googlom/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Googlom/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977920, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjA=', 'url': 'https://api.github.com/repos/tinode/chat/labels/bug', 'name': 'bug', 'color': 'fc2929', 'default': True, 'description': None}]",closed,False,,[],,3,2019-10-14T12:02:00Z,2019-10-14T14:25:00Z,2019-10-14T14:25:00Z,CONTRIBUTOR,,,"Server gives 500 error when registering new account (error log below). Debugging says error is coming from here: https://github.com/tinode/chat/blob/0428153dfd84323308a3de1552d922b0d6f14557/server/db/rethinkdb/adapter.go#L1863-L1870
Registration works fine in server version `0.15.15-rc2`
#### Server-side
* Windows 10
* version of tinode server: `0.16.0`
* rethinkdb backend (RethinkDB server v2.3.6)
#### Client-side
* Client: TinodeWeb/0.16.1 (tinodejs/0.16.1)
### Server-side log
`2019/10/14 16:49:44 create user: failed to save or validate credential Cannot perform without on a non-object non-sequence `null`. ETcRKGgoYlE`
",
280,https://api.github.com/repos/tinode/chat/issues/285,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/285/labels{/name},https://api.github.com/repos/tinode/chat/issues/285/comments,https://api.github.com/repos/tinode/chat/issues/285/events,https://github.com/tinode/chat/pull/285,506545377,MDExOlB1bGxSZXF1ZXN0MzI3NzE3NDU2,285,Grammatical Documentation Correction,"{'login': 'BenisonSebastian', 'id': 33474422, 'node_id': 'MDQ6VXNlcjMzNDc0NDIy', 'avatar_url': 'https://avatars0.githubusercontent.com/u/33474422?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/BenisonSebastian', 'html_url': 'https://github.com/BenisonSebastian', 'followers_url': 'https://api.github.com/users/BenisonSebastian/followers', 'following_url': 'https://api.github.com/users/BenisonSebastian/following{/other_user}', 'gists_url': 'https://api.github.com/users/BenisonSebastian/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/BenisonSebastian/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/BenisonSebastian/subscriptions', 'organizations_url': 'https://api.github.com/users/BenisonSebastian/orgs', 'repos_url': 'https://api.github.com/users/BenisonSebastian/repos', 'events_url': 'https://api.github.com/users/BenisonSebastian/events{/privacy}', 'received_events_url': 'https://api.github.com/users/BenisonSebastian/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2019-10-14T09:40:32Z,2019-10-14T10:33:38Z,2019-10-14T10:33:31Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/285', 'html_url': 'https://github.com/tinode/chat/pull/285', 'diff_url': 'https://github.com/tinode/chat/pull/285.diff', 'patch_url': 'https://github.com/tinode/chat/pull/285.patch'}","The slightest touch matters. Hope these better your documentation and add quality to your project.
",
281,https://api.github.com/repos/tinode/chat/issues/284,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/284/labels{/name},https://api.github.com/repos/tinode/chat/issues/284/comments,https://api.github.com/repos/tinode/chat/issues/284/events,https://github.com/tinode/chat/pull/284,506378421,MDExOlB1bGxSZXF1ZXN0MzI3NTkwODgz,284,{pres term} on rehashing to displaced topics (attempt 2).,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-10-13T20:35:03Z,2019-10-14T08:12:06Z,2019-10-14T08:11:38Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/284', 'html_url': 'https://github.com/tinode/chat/pull/284', 'diff_url': 'https://github.com/tinode/chat/pull/284.diff', 'patch_url': 'https://github.com/tinode/chat/pull/284.patch'}",I've updated the comments. Let's agree on the data structure and I'll make appropriate changes in this PR.,
282,https://api.github.com/repos/tinode/chat/issues/283,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/283/labels{/name},https://api.github.com/repos/tinode/chat/issues/283/comments,https://api.github.com/repos/tinode/chat/issues/283/events,https://github.com/tinode/chat/pull/283,506283137,MDExOlB1bGxSZXF1ZXN0MzI3NTI5MzI2,283,"Revert ""Send {pres term} to displaced topic subs""","{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-10-13T06:46:38Z,2019-10-13T06:46:49Z,2019-10-13T06:46:48Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/283', 'html_url': 'https://github.com/tinode/chat/pull/283', 'diff_url': 'https://github.com/tinode/chat/pull/283.diff', 'patch_url': 'https://github.com/tinode/chat/pull/283.patch'}",Reverts tinode/chat#282,
283,https://api.github.com/repos/tinode/chat/issues/282,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/282/labels{/name},https://api.github.com/repos/tinode/chat/issues/282/comments,https://api.github.com/repos/tinode/chat/issues/282/events,https://github.com/tinode/chat/pull/282,506146238,MDExOlB1bGxSZXF1ZXN0MzI3NDM2Mzcy,282,Send {pres term} to displaced topic subs,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2019-10-12T07:16:44Z,2019-10-14T08:13:24Z,2019-10-13T06:34:26Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/282', 'html_url': 'https://github.com/tinode/chat/pull/282', 'diff_url': 'https://github.com/tinode/chat/pull/282.diff', 'patch_url': 'https://github.com/tinode/chat/pull/282.patch'}","Keep a list of remote subscriptions in sessions.
After rehashing takes place, for each session walk over the list of its remote
topic subscriptions and send {pres term} to those whose hosting nodes have changed.",
284,https://api.github.com/repos/tinode/chat/issues/281,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/281/labels{/name},https://api.github.com/repos/tinode/chat/issues/281/comments,https://api.github.com/repos/tinode/chat/issues/281/events,https://github.com/tinode/chat/issues/281,505685395,MDU6SXNzdWU1MDU2ODUzOTU=,281,Cluster mode: orphaned remote sessions upon originating node failure,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977920, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjA=', 'url': 'https://api.github.com/repos/tinode/chat/labels/bug', 'name': 'bug', 'color': 'fc2929', 'default': True, 'description': None}]",closed,False,,[],,7,2019-10-11T07:26:14Z,2019-10-12T04:14:04Z,2019-10-12T04:14:03Z,CONTRIBUTOR,,,"When the node where the session originated fails, its remote sessions on other nodes stay active.
How to reproduce:
- Bring up a basic 3-node cluster.
- Connect several clients so at least one of them subscribes to ME on a remote node
- For such a session, let's denote the original node A and the node hosting its ME topic B.
- Take down A
- Check that the remote session on node B is still present.
This behavior is not critical since it doesn't break any invariants but ideally such orphaned sessions should go away.
",
285,https://api.github.com/repos/tinode/chat/issues/280,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/280/labels{/name},https://api.github.com/repos/tinode/chat/issues/280/comments,https://api.github.com/repos/tinode/chat/issues/280/events,https://github.com/tinode/chat/issues/280,505682533,MDU6SXNzdWU1MDU2ODI1MzM=,280,Cluster mode: sys topic not migrated on failover,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977920, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjA=', 'url': 'https://api.github.com/repos/tinode/chat/labels/bug', 'name': 'bug', 'color': 'fc2929', 'default': True, 'description': None}]",closed,False,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}]",,2,2019-10-11T07:18:59Z,2019-10-12T04:03:53Z,2019-10-12T04:03:53Z,CONTRIBUTOR,,,"When the node hosting ""sys"" topic goes down, the topic won't be re-created in the hub on its new host.
How to reproduce:
- Bring up a basic 3-node cluster.
- Take down the node hosting ""sys"".
- Check the other two nodes - none of these nodes' hubs contains topic ""sys"".
",
286,https://api.github.com/repos/tinode/chat/issues/279,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/279/labels{/name},https://api.github.com/repos/tinode/chat/issues/279/comments,https://api.github.com/repos/tinode/chat/issues/279/events,https://github.com/tinode/chat/issues/279,503854016,MDU6SXNzdWU1MDM4NTQwMTY=,279,[How to access the cluster ? ],"{'login': 'yeluoqiuzhi', 'id': 9261562, 'node_id': 'MDQ6VXNlcjkyNjE1NjI=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/9261562?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/yeluoqiuzhi', 'html_url': 'https://github.com/yeluoqiuzhi', 'followers_url': 'https://api.github.com/users/yeluoqiuzhi/followers', 'following_url': 'https://api.github.com/users/yeluoqiuzhi/following{/other_user}', 'gists_url': 'https://api.github.com/users/yeluoqiuzhi/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/yeluoqiuzhi/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/yeluoqiuzhi/subscriptions', 'organizations_url': 'https://api.github.com/users/yeluoqiuzhi/orgs', 'repos_url': 'https://api.github.com/users/yeluoqiuzhi/repos', 'events_url': 'https://api.github.com/users/yeluoqiuzhi/events{/privacy}', 'received_events_url': 'https://api.github.com/users/yeluoqiuzhi/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977925, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/question', 'name': 'question', 'color': 'cc317c', 'default': True, 'description': None}]",closed,False,,[],,6,2019-10-08T06:27:02Z,2019-10-08T06:58:54Z,2019-10-08T06:58:54Z,NONE,,,How to access the cluster ? Only accessing to the leader node or accessing to any node of the cluster ? Which is the right way. Thank you.,
287,https://api.github.com/repos/tinode/chat/issues/278,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/278/labels{/name},https://api.github.com/repos/tinode/chat/issues/278/comments,https://api.github.com/repos/tinode/chat/issues/278/events,https://github.com/tinode/chat/issues/278,502938930,MDU6SXNzdWU1MDI5Mzg5MzA=,278,Cluster mode: remote sessions for ME topic aren't correctly migrated,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}","[{'id': 147977920, 'node_id': 'MDU6TGFiZWwxNDc5Nzc5MjA=', 'url': 'https://api.github.com/repos/tinode/chat/labels/bug', 'name': 'bug', 'color': 'fc2929', 'default': True, 'description': None}]",closed,False,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}]",,14,2019-10-05T09:16:32Z,2019-10-15T06:17:57Z,2019-10-15T06:17:57Z,CONTRIBUTOR,,,"When a node hosting ME topic for a remote session goes down, the topic gets migrated via rehashing while the remote session doesn't.
This causes issues with message routing.",
288,https://api.github.com/repos/tinode/chat/issues/277,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/277/labels{/name},https://api.github.com/repos/tinode/chat/issues/277/comments,https://api.github.com/repos/tinode/chat/issues/277/events,https://github.com/tinode/chat/pull/277,502674344,MDExOlB1bGxSZXF1ZXN0MzI0NzExMjUz,277,Monitoring,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-10-04T14:36:59Z,2019-10-07T19:08:47Z,2019-10-05T10:09:11Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/277', 'html_url': 'https://github.com/tinode/chat/pull/277', 'diff_url': 'https://github.com/tinode/chat/pull/277.diff', 'patch_url': 'https://github.com/tinode/chat/pull/277.patch'}",Quick and dirty exporter for Prometheus. It converts `expvar` to prometheus format.,
289,https://api.github.com/repos/tinode/chat/issues/276,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/276/labels{/name},https://api.github.com/repos/tinode/chat/issues/276/comments,https://api.github.com/repos/tinode/chat/issues/276/events,https://github.com/tinode/chat/issues/276,502466207,MDU6SXNzdWU1MDI0NjYyMDc=,276,MongoDB support,"{'login': 'Googlom', 'id': 36107508, 'node_id': 'MDQ6VXNlcjM2MTA3NTA4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/36107508?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Googlom', 'html_url': 'https://github.com/Googlom', 'followers_url': 'https://api.github.com/users/Googlom/followers', 'following_url': 'https://api.github.com/users/Googlom/following{/other_user}', 'gists_url': 'https://api.github.com/users/Googlom/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Googlom/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Googlom/subscriptions', 'organizations_url': 'https://api.github.com/users/Googlom/orgs', 'repos_url': 'https://api.github.com/users/Googlom/repos', 'events_url': 'https://api.github.com/users/Googlom/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Googlom/received_events', 'type': 'User', 'site_admin': False}","[{'id': 811090999, 'node_id': 'MDU6TGFiZWw4MTEwOTA5OTk=', 'url': 'https://api.github.com/repos/tinode/chat/labels/feature%20request', 'name': 'feature request', 'color': 'edcf8b', 'default': False, 'description': None}]",closed,False,,[],,9,2019-10-04T07:01:11Z,2019-12-12T15:40:55Z,2019-12-12T15:40:54Z,CONTRIBUTOR,,,"Seems like RethinkDB project is abandoned (or not?).
Any plans on supporting MongoDB? Is anyone working on MongoDB adapter now? If so, I can help with development.",
290,https://api.github.com/repos/tinode/chat/issues/275,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/275/labels{/name},https://api.github.com/repos/tinode/chat/issues/275/comments,https://api.github.com/repos/tinode/chat/issues/275/events,https://github.com/tinode/chat/pull/275,502462952,MDExOlB1bGxSZXF1ZXN0MzI0NTM4ODE2,275,remove redundant type conversion,"{'login': 'Googlom', 'id': 36107508, 'node_id': 'MDQ6VXNlcjM2MTA3NTA4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/36107508?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Googlom', 'html_url': 'https://github.com/Googlom', 'followers_url': 'https://api.github.com/users/Googlom/followers', 'following_url': 'https://api.github.com/users/Googlom/following{/other_user}', 'gists_url': 'https://api.github.com/users/Googlom/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Googlom/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Googlom/subscriptions', 'organizations_url': 'https://api.github.com/users/Googlom/orgs', 'repos_url': 'https://api.github.com/users/Googlom/repos', 'events_url': 'https://api.github.com/users/Googlom/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Googlom/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-10-04T06:53:24Z,2019-10-04T10:29:39Z,2019-10-04T07:57:25Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/275', 'html_url': 'https://github.com/tinode/chat/pull/275', 'diff_url': 'https://github.com/tinode/chat/pull/275.diff', 'patch_url': 'https://github.com/tinode/chat/pull/275.patch'}",,
291,https://api.github.com/repos/tinode/chat/issues/274,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/274/labels{/name},https://api.github.com/repos/tinode/chat/issues/274/comments,https://api.github.com/repos/tinode/chat/issues/274/events,https://github.com/tinode/chat/pull/274,501039700,MDExOlB1bGxSZXF1ZXN0MzIzMzg5NTM0,274,Clustering support for user cache,"{'login': 'or-else', 'id': 5938143, 'node_id': 'MDQ6VXNlcjU5MzgxNDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5938143?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/or-else', 'html_url': 'https://github.com/or-else', 'followers_url': 'https://api.github.com/users/or-else/followers', 'following_url': 'https://api.github.com/users/or-else/following{/other_user}', 'gists_url': 'https://api.github.com/users/or-else/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/or-else/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/or-else/subscriptions', 'organizations_url': 'https://api.github.com/users/or-else/orgs', 'repos_url': 'https://api.github.com/users/or-else/repos', 'events_url': 'https://api.github.com/users/or-else/events{/privacy}', 'received_events_url': 'https://api.github.com/users/or-else/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-10-01T17:30:01Z,2019-10-07T19:08:42Z,2019-10-02T07:15:00Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/274', 'html_url': 'https://github.com/tinode/chat/pull/274', 'diff_url': 'https://github.com/tinode/chat/pull/274.diff', 'patch_url': 'https://github.com/tinode/chat/pull/274.patch'}",User cache is needed for iOS badge with the count of unread messages. It was implemented without regard for clustering. This PR adds clustering support to user cache. ,
292,https://api.github.com/repos/tinode/chat/issues/273,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/273/labels{/name},https://api.github.com/repos/tinode/chat/issues/273/comments,https://api.github.com/repos/tinode/chat/issues/273/events,https://github.com/tinode/chat/pull/273,500722628,MDExOlB1bGxSZXF1ZXN0MzIzMTMyMjU4,273,Route pres cluster,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-10-01T07:46:25Z,2019-10-02T05:10:34Z,2019-10-02T05:10:17Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/273', 'html_url': 'https://github.com/tinode/chat/pull/273', 'diff_url': 'https://github.com/tinode/chat/pull/273.diff', 'patch_url': 'https://github.com/tinode/chat/pull/273.patch'}",More flexibility in running tinode docker container.,
293,https://api.github.com/repos/tinode/chat/issues/272,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/272/labels{/name},https://api.github.com/repos/tinode/chat/issues/272/comments,https://api.github.com/repos/tinode/chat/issues/272/events,https://github.com/tinode/chat/pull/272,496935231,MDExOlB1bGxSZXF1ZXN0MzIwMTYyNDI3,272,"In Docker image, send tinode output to stdout.","{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-09-23T07:28:14Z,2019-09-30T15:13:41Z,2019-09-30T15:13:41Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/272', 'html_url': 'https://github.com/tinode/chat/pull/272', 'diff_url': 'https://github.com/tinode/chat/pull/272.diff', 'patch_url': 'https://github.com/tinode/chat/pull/272.patch'}","It's pretty straightforward to get the bot password.
So there's no need to create another Docker image at this point.",
294,https://api.github.com/repos/tinode/chat/issues/271,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/271/labels{/name},https://api.github.com/repos/tinode/chat/issues/271/comments,https://api.github.com/repos/tinode/chat/issues/271/events,https://github.com/tinode/chat/issues/271,496334727,MDU6SXNzdWU0OTYzMzQ3Mjc=,271,"Missing comma ("","") in GitHub repository metadata","{'login': 'paulvi', 'id': 1614482, 'node_id': 'MDQ6VXNlcjE2MTQ0ODI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1614482?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/paulvi', 'html_url': 'https://github.com/paulvi', 'followers_url': 'https://api.github.com/users/paulvi/followers', 'following_url': 'https://api.github.com/users/paulvi/following{/other_user}', 'gists_url': 'https://api.github.com/users/paulvi/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/paulvi/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/paulvi/subscriptions', 'organizations_url': 'https://api.github.com/users/paulvi/orgs', 'repos_url': 'https://api.github.com/users/paulvi/repos', 'events_url': 'https://api.github.com/users/paulvi/events{/privacy}', 'received_events_url': 'https://api.github.com/users/paulvi/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-09-20T12:50:52Z,2019-09-20T12:52:18Z,2019-09-20T12:52:18Z,NONE,,,"> Instant messaging server; backend in Go; Android, web command line clients; chatbots
should be
> Instant messaging server; backend in Go; Android, web, command line clients; chatbots
or insert ""and""",
295,https://api.github.com/repos/tinode/chat/issues/270,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/270/labels{/name},https://api.github.com/repos/tinode/chat/issues/270/comments,https://api.github.com/repos/tinode/chat/issues/270/events,https://github.com/tinode/chat/issues/270,496334665,MDU6SXNzdWU0OTYzMzQ2NjU=,270,"Missing comma ("","") in GitHub repository metadata","{'login': 'paulvi', 'id': 1614482, 'node_id': 'MDQ6VXNlcjE2MTQ0ODI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1614482?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/paulvi', 'html_url': 'https://github.com/paulvi', 'followers_url': 'https://api.github.com/users/paulvi/followers', 'following_url': 'https://api.github.com/users/paulvi/following{/other_user}', 'gists_url': 'https://api.github.com/users/paulvi/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/paulvi/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/paulvi/subscriptions', 'organizations_url': 'https://api.github.com/users/paulvi/orgs', 'repos_url': 'https://api.github.com/users/paulvi/repos', 'events_url': 'https://api.github.com/users/paulvi/events{/privacy}', 'received_events_url': 'https://api.github.com/users/paulvi/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-09-20T12:50:45Z,2019-09-20T12:52:11Z,2019-09-20T12:52:11Z,NONE,,,"> Instant messaging server; backend in Go; Android, web command line clients; chatbots
should be
> Instant messaging server; backend in Go; Android, web, command line clients; chatbots
or insert ""and""",
296,https://api.github.com/repos/tinode/chat/issues/269,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/269/labels{/name},https://api.github.com/repos/tinode/chat/issues/269/comments,https://api.github.com/repos/tinode/chat/issues/269/events,https://github.com/tinode/chat/issues/269,496334662,MDU6SXNzdWU0OTYzMzQ2NjI=,269,"Missing comma ("","") in GitHub repository metadata","{'login': 'paulvi', 'id': 1614482, 'node_id': 'MDQ6VXNlcjE2MTQ0ODI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1614482?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/paulvi', 'html_url': 'https://github.com/paulvi', 'followers_url': 'https://api.github.com/users/paulvi/followers', 'following_url': 'https://api.github.com/users/paulvi/following{/other_user}', 'gists_url': 'https://api.github.com/users/paulvi/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/paulvi/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/paulvi/subscriptions', 'organizations_url': 'https://api.github.com/users/paulvi/orgs', 'repos_url': 'https://api.github.com/users/paulvi/repos', 'events_url': 'https://api.github.com/users/paulvi/events{/privacy}', 'received_events_url': 'https://api.github.com/users/paulvi/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2019-09-20T12:50:45Z,2019-09-20T13:10:48Z,2019-09-20T13:10:47Z,NONE,,,"> Instant messaging server; backend in Go; Android, web command line clients; chatbots
should be
> Instant messaging server; backend in Go; Android, web, command line clients; chatbots
or insert ""and""",
297,https://api.github.com/repos/tinode/chat/issues/268,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/268/labels{/name},https://api.github.com/repos/tinode/chat/issues/268/comments,https://api.github.com/repos/tinode/chat/issues/268/events,https://github.com/tinode/chat/pull/268,496333915,MDExOlB1bGxSZXF1ZXN0MzE5NzA2NTQ5,268,README - fix syntax,"{'login': 'paulvi', 'id': 1614482, 'node_id': 'MDQ6VXNlcjE2MTQ0ODI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1614482?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/paulvi', 'html_url': 'https://github.com/paulvi', 'followers_url': 'https://api.github.com/users/paulvi/followers', 'following_url': 'https://api.github.com/users/paulvi/following{/other_user}', 'gists_url': 'https://api.github.com/users/paulvi/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/paulvi/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/paulvi/subscriptions', 'organizations_url': 'https://api.github.com/users/paulvi/orgs', 'repos_url': 'https://api.github.com/users/paulvi/repos', 'events_url': 'https://api.github.com/users/paulvi/events{/privacy}', 'received_events_url': 'https://api.github.com/users/paulvi/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2019-09-20T12:49:09Z,2019-09-23T10:31:38Z,2019-09-23T10:31:38Z,NONE,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/268', 'html_url': 'https://github.com/tinode/chat/pull/268', 'diff_url': 'https://github.com/tinode/chat/pull/268.diff', 'patch_url': 'https://github.com/tinode/chat/pull/268.patch'}","fix syntax: no need for comma ("","") before ""and""",
298,https://api.github.com/repos/tinode/chat/issues/267,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/267/labels{/name},https://api.github.com/repos/tinode/chat/issues/267/comments,https://api.github.com/repos/tinode/chat/issues/267/events,https://github.com/tinode/chat/pull/267,493592932,MDExOlB1bGxSZXF1ZXN0MzE3NTQxNDgz,267,PresWantReply field in ClusterReq.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-09-14T07:06:59Z,2019-09-14T08:11:42Z,2019-09-14T08:11:42Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/267', 'html_url': 'https://github.com/tinode/chat/pull/267', 'diff_url': 'https://github.com/tinode/chat/pull/267.diff', 'patch_url': 'https://github.com/tinode/chat/pull/267.patch'}","The field maps to ServerComMessage.Pres.wantReply.
The latter isn't tagged and, hence, doesn't get serialized and sent
as a part of the RPC payload.",
299,https://api.github.com/repos/tinode/chat/issues/266,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/266/labels{/name},https://api.github.com/repos/tinode/chat/issues/266/comments,https://api.github.com/repos/tinode/chat/issues/266/events,https://github.com/tinode/chat/pull/266,493132999,MDExOlB1bGxSZXF1ZXN0MzE3MTcxNTY4,266,Pres message routing in cluster mode. Part 1.,"{'login': 'aforge', 'id': 45520561, 'node_id': 'MDQ6VXNlcjQ1NTIwNTYx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45520561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aforge', 'html_url': 'https://github.com/aforge', 'followers_url': 'https://api.github.com/users/aforge/followers', 'following_url': 'https://api.github.com/users/aforge/following{/other_user}', 'gists_url': 'https://api.github.com/users/aforge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aforge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aforge/subscriptions', 'organizations_url': 'https://api.github.com/users/aforge/orgs', 'repos_url': 'https://api.github.com/users/aforge/repos', 'events_url': 'https://api.github.com/users/aforge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aforge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2019-09-13T04:41:17Z,2019-09-21T10:18:09Z,2019-09-13T20:24:49Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/tinode/chat/pulls/266', 'html_url': 'https://github.com/tinode/chat/pull/266', 'diff_url': 'https://github.com/tinode/chat/pull/266.diff', 'patch_url': 'https://github.com/tinode/chat/pull/266.patch'}","This is not a full solution. Pres messages are still not propagated
to new sessions.",
300,https://api.github.com/repos/tinode/chat/issues/265,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/265/labels{/name},https://api.github.com/repos/tinode/chat/issues/265/comments,https://api.github.com/repos/tinode/chat/issues/265/events,https://github.com/tinode/chat/issues/265,491487635,MDU6SXNzdWU0OTE0ODc2MzU=,265,Tinode login issue,"{'login': 'alexinla', 'id': 37059140, 'node_id': 'MDQ6VXNlcjM3MDU5MTQw', 'avatar_url': 'https://avatars1.githubusercontent.com/u/37059140?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/alexinla', 'html_url': 'https://github.com/alexinla', 'followers_url': 'https://api.github.com/users/alexinla/followers', 'following_url': 'https://api.github.com/users/alexinla/following{/other_user}', 'gists_url': 'https://api.github.com/users/alexinla/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/alexinla/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/alexinla/subscriptions', 'organizations_url': 'https://api.github.com/users/alexinla/orgs', 'repos_url': 'https://api.github.com/users/alexinla/repos', 'events_url': 'https://api.github.com/users/alexinla/events{/privacy}', 'received_events_url': 'https://api.github.com/users/alexinla/received_events', 'type': 'User', 'site_admin': False}","[{'id': 910591285, 'node_id': 'MDU6TGFiZWw5MTA1OTEyODU=', 'url': 'https://api.github.com/repos/tinode/chat/labels/incomplete', 'name': 'incomplete', 'color': 'ff6633', 'default': False, 'description': ''}]",closed,False,,[],,4,2019-09-10T06:59:13Z,2019-09-14T19:35:29Z,2019-09-14T19:35:29Z,NONE,,,"occasionally, i would get 503 web socket is not connected error while my internet is fine. Our server is in tokyo and Im in California.
Video: https://youtu.be/ydy4GB3pIlo
App: https://testflight.apple.com/join/mC64ktbV",
301,https://api.github.com/repos/tinode/chat/issues/264,https://api.github.com/repos/tinode/chat,https://api.github.com/repos/tinode/chat/issues/264/labels{/name},https://api.github.com/repos/tinode/chat/issues/264/comments,https://api.github.com/repos/tinode/chat/issues/264/events,https://github.com/tinode/chat/issues/264,491486255,MDU6SXNzdWU0OTE0ODYyNTU=,264,chat input box seems sluggish when opening and closing. See video. ,"{'login': 'alexinla', 'id': 37059140, 'node_id': 'MDQ6VXNlcjM3MDU5MTQw', 'avatar_url': 'https://avatars1.githubusercontent.com/u/37059140?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/alexinla', 'html_url': 'https://github.com/alexinla', 'followers_url': 'https://api.github.com/users/alexinla/followers', 'following_url': 'https://api.github.com/users/alexinla/following{/other_user}', 'gists_url': 'https://api.github.com/users/alexinla/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/alexinla/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/alexinla/subscriptions', 'organizations_url': 'https://api.github.com/users/alexinla/orgs', 'repos_url': 'https://api.github.com/users/alexinla/repos', 'events_url': 'https://api.github.com/users/alexinla/events{/privacy}', 'received_events_url': 'https://api.github.com/users/alexinla/received_events', 'type': 'User', 'site_admin': False}","[{'id': 1133870256, 'node_id': 'MDU6TGFiZWwxMTMzODcwMjU2', 'url': 'https://api.github.com/repos/tinode/chat/labels/cannot%20reproduce', 'name': 'cannot reproduce', 'color': '0052cc', 'default': False, 'description': ''}]",closed,False,,[],,2,2019-09-10T06:55:38Z,2019-09-10T20:56:56Z,2019-09-10T20:56:56Z,NONE,,,"iOS app. it can be downloaded here: https://testflight.apple.com/join/mC64ktbV
For the sluggish issue, Please refer to this video: https://youtu.be/hlNoyKgJC_Y
Do you experience similar thing with any demos in the past? ",
302,https://api.github.com/repos/processone/ejabberd/issues/3381,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3381/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3381/comments,https://api.github.com/repos/processone/ejabberd/issues/3381/events,https://github.com/processone/ejabberd/pull/3381,693214770,MDExOlB1bGxSZXF1ZXN0NDc5NzI1NTc4,3381,Allow for filtering outgoing s2s stanzas,"{'login': 'weiss', 'id': 71850, 'node_id': 'MDQ6VXNlcjcxODUw', 'avatar_url': 'https://avatars1.githubusercontent.com/u/71850?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/weiss', 'html_url': 'https://github.com/weiss', 'followers_url': 'https://api.github.com/users/weiss/followers', 'following_url': 'https://api.github.com/users/weiss/following{/other_user}', 'gists_url': 'https://api.github.com/users/weiss/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/weiss/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/weiss/subscriptions', 'organizations_url': 'https://api.github.com/users/weiss/orgs', 'repos_url': 'https://api.github.com/users/weiss/repos', 'events_url': 'https://api.github.com/users/weiss/events{/privacy}', 'received_events_url': 'https://api.github.com/users/weiss/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,0,2020-09-04T14:14:35Z,2020-09-04T14:14:35Z,,MEMBER,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3381', 'html_url': 'https://github.com/processone/ejabberd/pull/3381', 'diff_url': 'https://github.com/processone/ejabberd/pull/3381.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3381.patch'}","Let `s2s_send_packet` hook callbacks filter/drop stanzas, analogous to [the `s2s_receive_packet` hook][1].
[1]: https://github.com/processone/ejabberd/blob/20.07/src/ejabberd_s2s_in.erl#L221-L226",
303,https://api.github.com/repos/processone/ejabberd/issues/3380,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3380/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3380/comments,https://api.github.com/repos/processone/ejabberd/issues/3380/events,https://github.com/processone/ejabberd/issues/3380,693149972,MDU6SXNzdWU2OTMxNDk5NzI=,3380,MUC Message does not work from Rest API,"{'login': 'AtifShahzed', 'id': 54445953, 'node_id': 'MDQ6VXNlcjU0NDQ1OTUz', 'avatar_url': 'https://avatars0.githubusercontent.com/u/54445953?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/AtifShahzed', 'html_url': 'https://github.com/AtifShahzed', 'followers_url': 'https://api.github.com/users/AtifShahzed/followers', 'following_url': 'https://api.github.com/users/AtifShahzed/following{/other_user}', 'gists_url': 'https://api.github.com/users/AtifShahzed/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/AtifShahzed/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/AtifShahzed/subscriptions', 'organizations_url': 'https://api.github.com/users/AtifShahzed/orgs', 'repos_url': 'https://api.github.com/users/AtifShahzed/repos', 'events_url': 'https://api.github.com/users/AtifShahzed/events{/privacy}', 'received_events_url': 'https://api.github.com/users/AtifShahzed/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,1,2020-09-04T13:07:15Z,2020-09-04T15:46:51Z,,NONE,,,"HI,
I have configure MUC with Rest Api working fine. I am able to create room through Rest Api and send invitation to the user to join the room and when user receive request they can join the MUC room
Whole workflow is working fine.
The only problem is when I use send message api and use MUC room JID to send room message so it does not work although I receive 200 status code with 0 in response which means success but message does not deliver to the MUC room.
Is there any special settings are required to make it working.
Thanks",
304,https://api.github.com/repos/processone/ejabberd/issues/3379,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3379/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3379/comments,https://api.github.com/repos/processone/ejabberd/issues/3379/events,https://github.com/processone/ejabberd/pull/3379,691917913,MDExOlB1bGxSZXF1ZXN0NDc4NTg4MDk3,3379,Fix syntax for lager dependency version,"{'login': 'nosnilmot', 'id': 29980186, 'node_id': 'MDQ6VXNlcjI5OTgwMTg2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/29980186?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/nosnilmot', 'html_url': 'https://github.com/nosnilmot', 'followers_url': 'https://api.github.com/users/nosnilmot/followers', 'following_url': 'https://api.github.com/users/nosnilmot/following{/other_user}', 'gists_url': 'https://api.github.com/users/nosnilmot/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/nosnilmot/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/nosnilmot/subscriptions', 'organizations_url': 'https://api.github.com/users/nosnilmot/orgs', 'repos_url': 'https://api.github.com/users/nosnilmot/repos', 'events_url': 'https://api.github.com/users/nosnilmot/events{/privacy}', 'received_events_url': 'https://api.github.com/users/nosnilmot/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-09-03T12:14:21Z,2020-09-03T13:35:35Z,2020-09-03T13:35:35Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3379', 'html_url': 'https://github.com/processone/ejabberd/pull/3379', 'diff_url': 'https://github.com/processone/ejabberd/pull/3379.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3379.patch'}","Add 'tag' to lager dependency so that build with rebar3 will pull from
hex package instead of git checkout matching other dependencies",
305,https://api.github.com/repos/processone/ejabberd/issues/3378,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3378/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3378/comments,https://api.github.com/repos/processone/ejabberd/issues/3378/events,https://github.com/processone/ejabberd/issues/3378,691435320,MDU6SXNzdWU2OTE0MzUzMjA=,3378,Send POST Http request If user offline,"{'login': 'AtifShahzed', 'id': 54445953, 'node_id': 'MDQ6VXNlcjU0NDQ1OTUz', 'avatar_url': 'https://avatars0.githubusercontent.com/u/54445953?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/AtifShahzed', 'html_url': 'https://github.com/AtifShahzed', 'followers_url': 'https://api.github.com/users/AtifShahzed/followers', 'following_url': 'https://api.github.com/users/AtifShahzed/following{/other_user}', 'gists_url': 'https://api.github.com/users/AtifShahzed/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/AtifShahzed/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/AtifShahzed/subscriptions', 'organizations_url': 'https://api.github.com/users/AtifShahzed/orgs', 'repos_url': 'https://api.github.com/users/AtifShahzed/repos', 'events_url': 'https://api.github.com/users/AtifShahzed/events{/privacy}', 'received_events_url': 'https://api.github.com/users/AtifShahzed/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,3,2020-09-02T21:31:19Z,2020-09-04T09:48:21Z,,NONE,,,"Hi,
I am looking to the solution where I wanted to send the message as a PUSH Notification if receiving user is offline.
I don't need to configure PUSH Notification right on jabbered, I have another server which handles all the plumbing of iOS/Android PUSH Notification. What I am looking to send the message as a plain POST REQUEST to my server .
Looking forward for the suggestions and guidance.
Thanks
",
306,https://api.github.com/repos/processone/ejabberd/issues/3377,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3377/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3377/comments,https://api.github.com/repos/processone/ejabberd/issues/3377/events,https://github.com/processone/ejabberd/issues/3377,691255655,MDU6SXNzdWU2OTEyNTU2NTU=,3377,Outcoming chat messages are not always stored in archive,"{'login': 'gsohn', 'id': 10253280, 'node_id': 'MDQ6VXNlcjEwMjUzMjgw', 'avatar_url': 'https://avatars2.githubusercontent.com/u/10253280?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/gsohn', 'html_url': 'https://github.com/gsohn', 'followers_url': 'https://api.github.com/users/gsohn/followers', 'following_url': 'https://api.github.com/users/gsohn/following{/other_user}', 'gists_url': 'https://api.github.com/users/gsohn/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/gsohn/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/gsohn/subscriptions', 'organizations_url': 'https://api.github.com/users/gsohn/orgs', 'repos_url': 'https://api.github.com/users/gsohn/repos', 'events_url': 'https://api.github.com/users/gsohn/events{/privacy}', 'received_events_url': 'https://api.github.com/users/gsohn/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/11', 'html_url': 'https://github.com/processone/ejabberd/milestone/11', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/11/labels', 'id': 1437111, 'node_id': 'MDk6TWlsZXN0b25lMTQzNzExMQ==', 'number': 11, 'title': 'ejabberd 20.xx', 'description': '', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 35, 'closed_issues': 4, 'state': 'open', 'created_at': '2015-12-01T10:25:26Z', 'updated_at': '2020-09-03T18:38:17Z', 'due_on': None, 'closed_at': None}",14,2020-09-02T17:34:01Z,2020-09-04T09:45:20Z,,NONE,,,"## Environment
- ejabberd version: 20.07
## Configuration
```
mod_mam:
db_type: sql
assume_mam_usage: true
default: always
user_mucsub_from_muc_archive: true
request_activates_archiving: false
```
Only incoming chat messages are stored in archive table when we send messages with ejabberd send_message command and/or send_message API endpoint.
The outcoming chat messages are only stored when the from user has an active session.
",
307,https://api.github.com/repos/processone/ejabberd/issues/3376,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3376/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3376/comments,https://api.github.com/repos/processone/ejabberd/issues/3376/events,https://github.com/processone/ejabberd/issues/3376,691116680,MDU6SXNzdWU2OTExMTY2ODA=,3376,MUC Room from Rest API,"{'login': 'AtifShahzed', 'id': 54445953, 'node_id': 'MDQ6VXNlcjU0NDQ1OTUz', 'avatar_url': 'https://avatars0.githubusercontent.com/u/54445953?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/AtifShahzed', 'html_url': 'https://github.com/AtifShahzed', 'followers_url': 'https://api.github.com/users/AtifShahzed/followers', 'following_url': 'https://api.github.com/users/AtifShahzed/following{/other_user}', 'gists_url': 'https://api.github.com/users/AtifShahzed/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/AtifShahzed/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/AtifShahzed/subscriptions', 'organizations_url': 'https://api.github.com/users/AtifShahzed/orgs', 'repos_url': 'https://api.github.com/users/AtifShahzed/repos', 'events_url': 'https://api.github.com/users/AtifShahzed/events{/privacy}', 'received_events_url': 'https://api.github.com/users/AtifShahzed/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-09-02T15:26:25Z,2020-09-02T21:32:13Z,2020-09-02T21:32:13Z,NONE,,,"Hi,
I am facing following error when I try to create a MUC from rest api.
My post request is following along with error log.
```
POST /api/create_room
{
""name"": ""room1"",
""service"": ""muc.blabla.com"",
""host"": ""blabla.com""
}
```
**Error log details are given below when I rung the above api.**
```2020-09-02 08:15:56.850 [error] <0.541.0>@mod_http_api:handle:258 REST API Error:
create_room([{<<""name"">>,<<""room1"">>},{<<""service"">>,<<""muc.blabla"">>},{<<""host"">>,<<""blabla"">>}]) ->
error:{unregistered_route,<<""muc.blabla"">>}
[{ejabberd_router,host_of_route,1,[{file,""src/ejabberd_router.erl""},{line,280}]},
{mod_muc,find_online_room,2,[{file,""src/mod_muc.erl""},{line,325}]},
{mod_muc_admin,create_room_with_opts,4,[{file,""src/mod_muc_admin.erl""},{line,661}]},
{mod_http_api,handle2,4,[{file,""src/mod_http_api.erl""},{line,268}]},
{mod_http_api,handle,4,[{file,""src/mod_http_api.erl""},{line,229}]},
{mod_http_api,perform_call,4,[{file,""src/mod_http_api.erl""},{line,189}]},
{mod_http_api,process,2,[{file,""src/mod_http_api.erl""},{line,142}]},
{ejabberd_http,process,2,[{file,""src/ejabberd_http.erl""},{line,370}]}]
```
**MUC Configuration**
```
mod_muc:
access:
- allow
access_admin:
- allow: admin
access_create: muc_create
access_persistent: muc_create
access_mam:
- allow
default_room_options:
persistent: true
public: false
members_only: true
mod_muc_admin: {}
```
**Command line error**
```
ejabberdctl create_room ""DEMO"" ""muc.BLAH.com"" ""BLAH.com""
Unhandled exception occurred executing the command:
** exception error: {unregistered_route,<<""muc.BLAH.com"">>}
in function ejabberd_router:host_of_route/1 (src/ejabberd_router.erl, line 280)
in call from mod_muc:find_online_room/2 (src/mod_muc.erl, line 325)
in call from mod_muc_admin:create_room_with_opts/4 (src/mod_muc_admin.erl, line 661)
in call from ejabberd_ctl:call_command/4 (src/ejabberd_ctl.erl, line 315)
in call from ejabberd_ctl:try_call_command/4 (src/ejabberd_ctl.erl, line 280)
in call from ejabberd_ctl:process2/4 (src/ejabberd_ctl.erl, line 233)
in call from ejabberd_ctl:process/2 (src/ejabberd_ctl.erl, line 211)
in call from rpc:'-handle_call_call/6-fun-0-'/5 (rpc.erl, line 197)
```",
308,https://api.github.com/repos/processone/ejabberd/issues/3375,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3375/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3375/comments,https://api.github.com/repos/processone/ejabberd/issues/3375/events,https://github.com/processone/ejabberd/issues/3375,690937198,MDU6SXNzdWU2OTA5MzcxOTg=,3375,Unable to create admin user,"{'login': 'aamir-github', 'id': 11234464, 'node_id': 'MDQ6VXNlcjExMjM0NDY0', 'avatar_url': 'https://avatars3.githubusercontent.com/u/11234464?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aamir-github', 'html_url': 'https://github.com/aamir-github', 'followers_url': 'https://api.github.com/users/aamir-github/followers', 'following_url': 'https://api.github.com/users/aamir-github/following{/other_user}', 'gists_url': 'https://api.github.com/users/aamir-github/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aamir-github/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aamir-github/subscriptions', 'organizations_url': 'https://api.github.com/users/aamir-github/orgs', 'repos_url': 'https://api.github.com/users/aamir-github/repos', 'events_url': 'https://api.github.com/users/aamir-github/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aamir-github/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,5,2020-09-02T11:19:24Z,2020-09-03T20:33:54Z,,NONE,,,"## Environment
- ejabberd version: 18.09
- Erlang version:
- OS: Windows 10 (docker image)
- Installed from: official binary installer
After configuring ejabberd on windows 10 through docker and following the [documentation](https://hub.docker.com/r/ejabberd/ecs/) I am trying to create an admin user, but whenever I try the command
`PS C:\Users\user_name> docker exec -it ejabberd bin/ejabberdapi register --endpoint=http://127.0.0.1:5280/ --jid=admin@localhost --password=passw0rd`
it shows the following error
`ejabberdapi: error: user registration error for admin@localhost: Error 99: invalid character '<' looking for beginning of value`",
309,https://api.github.com/repos/processone/ejabberd/issues/3374,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3374/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3374/comments,https://api.github.com/repos/processone/ejabberd/issues/3374/events,https://github.com/processone/ejabberd/issues/3374,689933725,MDU6SXNzdWU2ODk5MzM3MjU=,3374,Create user PEP nodes using admin account,"{'login': 'gsohn', 'id': 10253280, 'node_id': 'MDQ6VXNlcjEwMjUzMjgw', 'avatar_url': 'https://avatars2.githubusercontent.com/u/10253280?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/gsohn', 'html_url': 'https://github.com/gsohn', 'followers_url': 'https://api.github.com/users/gsohn/followers', 'following_url': 'https://api.github.com/users/gsohn/following{/other_user}', 'gists_url': 'https://api.github.com/users/gsohn/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/gsohn/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/gsohn/subscriptions', 'organizations_url': 'https://api.github.com/users/gsohn/orgs', 'repos_url': 'https://api.github.com/users/gsohn/repos', 'events_url': 'https://api.github.com/users/gsohn/events{/privacy}', 'received_events_url': 'https://api.github.com/users/gsohn/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179680325, 'node_id': 'MDU6TGFiZWwxNzk2ODAzMjU=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:PEP', 'name': 'Component:PEP', 'color': 'fad8c7', 'default': False, 'description': None}]",closed,False,,[],,2,2020-09-01T08:22:03Z,2020-09-02T10:33:40Z,2020-09-01T22:50:48Z,NONE,,,"## Environment
- ejabberd version: 20.04
- users are authenticated with jwt
We are trying to create pep nodes for users using a client connected with an admin account. Theses nodes have to be created when a user is added in our system, and can't be created by the xmpp client itself. We have no issue when we create nodes using our pubsub service domain as host.
We have this error and don't figured out how to deal with that... :/
```
{
""status"" : 422,
""code"" : ""error.nodeOperationException"",
""message"" : ""org.jivesoftware.smack.XMPPException$XMPPErrorException: XMPP error reply received from gziqfxxswbcia4.1577630572043@im.XXX.XXX: XMPPError: subscription-required - auth [Not subscribed]""
}
```
Thanks
",
310,https://api.github.com/repos/processone/ejabberd/issues/3373,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3373/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3373/comments,https://api.github.com/repos/processone/ejabberd/issues/3373/events,https://github.com/processone/ejabberd/issues/3373,688237146,MDU6SXNzdWU2ODgyMzcxNDY=,3373,max_users is not set correctly,"{'login': 'gsohn', 'id': 10253280, 'node_id': 'MDQ6VXNlcjEwMjUzMjgw', 'avatar_url': 'https://avatars2.githubusercontent.com/u/10253280?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/gsohn', 'html_url': 'https://github.com/gsohn', 'followers_url': 'https://api.github.com/users/gsohn/followers', 'following_url': 'https://api.github.com/users/gsohn/following{/other_user}', 'gists_url': 'https://api.github.com/users/gsohn/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/gsohn/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/gsohn/subscriptions', 'organizations_url': 'https://api.github.com/users/gsohn/orgs', 'repos_url': 'https://api.github.com/users/gsohn/repos', 'events_url': 'https://api.github.com/users/gsohn/events{/privacy}', 'received_events_url': 'https://api.github.com/users/gsohn/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-08-28T17:27:06Z,2020-08-31T08:40:46Z,2020-08-31T08:40:46Z,NONE,,,"ejabberd 20.3.0
I configured mod_muc maximum nb of user with following config:
````
mod_muc:
max_users: 500
````
When I create a room with the REST API, without max_uses option, max users is set as 200 in room options.",
311,https://api.github.com/repos/processone/ejabberd/issues/3372,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3372/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3372/comments,https://api.github.com/repos/processone/ejabberd/issues/3372/events,https://github.com/processone/ejabberd/issues/3372,688224373,MDU6SXNzdWU2ODgyMjQzNzM=,3372,How to restrict ejabberd domain signup?,"{'login': 'ModeFX22', 'id': 33901301, 'node_id': 'MDQ6VXNlcjMzOTAxMzAx', 'avatar_url': 'https://avatars0.githubusercontent.com/u/33901301?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ModeFX22', 'html_url': 'https://github.com/ModeFX22', 'followers_url': 'https://api.github.com/users/ModeFX22/followers', 'following_url': 'https://api.github.com/users/ModeFX22/following{/other_user}', 'gists_url': 'https://api.github.com/users/ModeFX22/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ModeFX22/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ModeFX22/subscriptions', 'organizations_url': 'https://api.github.com/users/ModeFX22/orgs', 'repos_url': 'https://api.github.com/users/ModeFX22/repos', 'events_url': 'https://api.github.com/users/ModeFX22/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ModeFX22/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",open,False,,[],,9,2020-08-28T17:05:04Z,2020-09-01T14:21:39Z,,NONE,,,"
Hello! I am about to make my XMPP server public but there is one problem, we use ""staff.example.com"" for server administrator accounts, I only want users to register using example.com so how could I do that?
Sincerely
ModeFX",
312,https://api.github.com/repos/processone/ejabberd/issues/3371,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3371/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3371/comments,https://api.github.com/repos/processone/ejabberd/issues/3371/events,https://github.com/processone/ejabberd/issues/3371,687902780,MDU6SXNzdWU2ODc5MDI3ODA=,3371,mod_mam is not storing messages - RPM packages ejabberd-20.07-0.x86_64.rpm on centos8,"{'login': 'wurstdog', 'id': 26695552, 'node_id': 'MDQ6VXNlcjI2Njk1NTUy', 'avatar_url': 'https://avatars0.githubusercontent.com/u/26695552?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/wurstdog', 'html_url': 'https://github.com/wurstdog', 'followers_url': 'https://api.github.com/users/wurstdog/followers', 'following_url': 'https://api.github.com/users/wurstdog/following{/other_user}', 'gists_url': 'https://api.github.com/users/wurstdog/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/wurstdog/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/wurstdog/subscriptions', 'organizations_url': 'https://api.github.com/users/wurstdog/orgs', 'repos_url': 'https://api.github.com/users/wurstdog/repos', 'events_url': 'https://api.github.com/users/wurstdog/events{/privacy}', 'received_events_url': 'https://api.github.com/users/wurstdog/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,4,2020-08-28T08:25:32Z,2020-09-01T08:16:25Z,2020-09-01T08:16:25Z,NONE,,,"Hi there,
i have just install ejabberd-20.07 as a cluster on Centos8 from package and enabled MySQL (mariadb, galeracluster).
The user authentication with sql works well but i have a problem with offlinemessages
and with messages archiving.
#### Mariadb version
+---------------------+
| @@version. |
+---------------------+
| 10.4.12-MariaDB-log |
+---------------------+
#### ejabberd packages
ejabberd-20.07-0.x86_64.rpm
#### ejabberd version
The node ejabberd@ejabberd01 is started with status: started
ejabberd 20.07 is running in that node
#### ejabberd cluster
ejabberd@ejabberd03
ejabberd@ejabberd02
ejabberd@ejabberd01
#### Galeracluster
+--------------------+-------+
| Variable_name | Value |
+--------------------+-------+
| wsrep_cluster_size | 3 |
+--------------------+-------+
```
MariaDB [ejabberd]> select * from archive;
Empty set (0.001 sec)
MariaDB [ejabberd]> select * from archive_prefs;
Empty set (0.000 sec)
```
snippset ejabberd.yml
```
default_db: sql
sql_type: mysql
```
```
mod_mam:
## Mnesia is limited to 2GB, better to use an SQL backend
## For small servers SQLite is a good fit and is very easy
## to configure. Uncomment this when you have SQL configured:
db_type: sql
assume_mam_usage: true
default: always
```
On my other server with ejabberd and mariadb everything works perfect for me.
#### ejabberd version
ejabberd 19.9.0
#### Mariadb version
+----------------------------------------+
| @@version |
+----------------------------------------+
| 10.4.11-MariaDB-1:10.4.11+maria~bionic |
+----------------------------------------+
Thx
",
313,https://api.github.com/repos/processone/ejabberd/issues/3370,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3370/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3370/comments,https://api.github.com/repos/processone/ejabberd/issues/3370/events,https://github.com/processone/ejabberd/issues/3370,687581703,MDU6SXNzdWU2ODc1ODE3MDM=,3370,MUC: Unescape disco info identity name attribute,"{'login': 'lovetox', 'id': 8661218, 'node_id': 'MDQ6VXNlcjg2NjEyMTg=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/8661218?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/lovetox', 'html_url': 'https://github.com/lovetox', 'followers_url': 'https://api.github.com/users/lovetox/followers', 'following_url': 'https://api.github.com/users/lovetox/following{/other_user}', 'gists_url': 'https://api.github.com/users/lovetox/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/lovetox/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/lovetox/subscriptions', 'organizations_url': 'https://api.github.com/users/lovetox/orgs', 'repos_url': 'https://api.github.com/users/lovetox/repos', 'events_url': 'https://api.github.com/users/lovetox/events{/privacy}', 'received_events_url': 'https://api.github.com/users/lovetox/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179040838, 'node_id': 'MDU6TGFiZWwxNzkwNDA4Mzg=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:MUC', 'name': 'Component:MUC', 'color': 'fad8c7', 'default': False, 'description': None}, {'id': 179053016, 'node_id': 'MDU6TGFiZWwxNzkwNTMwMTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Enhancement', 'name': 'Kind:Enhancement', 'color': '009800', 'default': False, 'description': None}]",closed,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/11', 'html_url': 'https://github.com/processone/ejabberd/milestone/11', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/11/labels', 'id': 1437111, 'node_id': 'MDk6TWlsZXN0b25lMTQzNzExMQ==', 'number': 11, 'title': 'ejabberd 20.xx', 'description': '', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 35, 'closed_issues': 4, 'state': 'open', 'created_at': '2015-12-01T10:25:26Z', 'updated_at': '2020-09-03T18:38:17Z', 'due_on': None, 'closed_at': None}",4,2020-08-27T22:25:51Z,2020-08-31T08:29:40Z,2020-08-31T08:29:40Z,NONE,,,"Create a MUC with a JID: `friends&family@chat.yourserver.com`
The client escapes the JID (XEP-0106) and a MUC is created: `friends\26family@chat.yourserver.com`
Ejabberd has the habbit of setting the disco info identity name attribute to the localpart of the room jid
hence the muc name is `friends\26family`
muc identity name is a user exposed field, hence this string should be properly unescaped to `firends&family`
the second solution which would also be ok is to simply not set this attribute at all.
Clients can do that themself if they want to
before you get panic to dive into escaping JIDs, let me show that unescaping JIDs is rather trivial
here my python impl
```python
_localpart_escape_chars = ' ""&\'/:<>@'
def unescape_localpart(localpart):
if localpart.startswith('\\20') or localpart.endswith('\\20'):
# Escaped localparts are not allowed to start or end with \20
# so this localpart must be already unescaped
return localpart
for char in _localpart_escape_chars:
seq = ""\\{:02x}"".format(ord(char))
localpart = localpart.replace(seq, char)
for char in _localpart_escape_chars + ""\\"":
seq = ""\\5c{:02x}"".format(ord(char))
localpart = localpart.replace(seq, ""\\{:02x}"".format(ord(char)))
return localpart
```",
314,https://api.github.com/repos/processone/ejabberd/issues/3369,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3369/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3369/comments,https://api.github.com/repos/processone/ejabberd/issues/3369/events,https://github.com/processone/ejabberd/pull/3369,687381022,MDExOlB1bGxSZXF1ZXN0NDc0ODE3MDA2,3369,Use include_lib() to include headers from dependencies,"{'login': 'nosnilmot', 'id': 29980186, 'node_id': 'MDQ6VXNlcjI5OTgwMTg2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/29980186?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/nosnilmot', 'html_url': 'https://github.com/nosnilmot', 'followers_url': 'https://api.github.com/users/nosnilmot/followers', 'following_url': 'https://api.github.com/users/nosnilmot/following{/other_user}', 'gists_url': 'https://api.github.com/users/nosnilmot/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/nosnilmot/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/nosnilmot/subscriptions', 'organizations_url': 'https://api.github.com/users/nosnilmot/orgs', 'repos_url': 'https://api.github.com/users/nosnilmot/repos', 'events_url': 'https://api.github.com/users/nosnilmot/events{/privacy}', 'received_events_url': 'https://api.github.com/users/nosnilmot/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-27T16:31:25Z,2020-09-03T11:45:58Z,2020-09-03T11:45:58Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3369', 'html_url': 'https://github.com/processone/ejabberd/pull/3369', 'diff_url': 'https://github.com/processone/ejabberd/pull/3369.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3369.patch'}","Similar to pull request #1446 but also cleans up rebar.config (and I have signed CLA).
Depends on xmpp library with https://github.com/processone/xmpp/pull/51 included
Fixes #2788
",
315,https://api.github.com/repos/processone/ejabberd/issues/3368,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3368/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3368/comments,https://api.github.com/repos/processone/ejabberd/issues/3368/events,https://github.com/processone/ejabberd/pull/3368,687218282,MDExOlB1bGxSZXF1ZXN0NDc0Njc5NzUw,3368,Update base64url dep for rebar3,"{'login': 'nosnilmot', 'id': 29980186, 'node_id': 'MDQ6VXNlcjI5OTgwMTg2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/29980186?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/nosnilmot', 'html_url': 'https://github.com/nosnilmot', 'followers_url': 'https://api.github.com/users/nosnilmot/followers', 'following_url': 'https://api.github.com/users/nosnilmot/following{/other_user}', 'gists_url': 'https://api.github.com/users/nosnilmot/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/nosnilmot/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/nosnilmot/subscriptions', 'organizations_url': 'https://api.github.com/users/nosnilmot/orgs', 'repos_url': 'https://api.github.com/users/nosnilmot/repos', 'events_url': 'https://api.github.com/users/nosnilmot/events{/privacy}', 'received_events_url': 'https://api.github.com/users/nosnilmot/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-27T12:52:19Z,2020-09-03T11:40:04Z,2020-09-03T11:40:04Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3368', 'html_url': 'https://github.com/processone/ejabberd/pull/3368', 'diff_url': 'https://github.com/processone/ejabberd/pull/3368.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3368.patch'}","Update base64url version to match available hex package to support
compilation with rebar3",
316,https://api.github.com/repos/processone/ejabberd/issues/3367,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3367/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3367/comments,https://api.github.com/repos/processone/ejabberd/issues/3367/events,https://github.com/processone/ejabberd/issues/3367,687191073,MDU6SXNzdWU2ODcxOTEwNzM=,3367,LDAP authentication failed,"{'login': 'nadeerck2020', 'id': 65544497, 'node_id': 'MDQ6VXNlcjY1NTQ0NDk3', 'avatar_url': 'https://avatars3.githubusercontent.com/u/65544497?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/nadeerck2020', 'html_url': 'https://github.com/nadeerck2020', 'followers_url': 'https://api.github.com/users/nadeerck2020/followers', 'following_url': 'https://api.github.com/users/nadeerck2020/following{/other_user}', 'gists_url': 'https://api.github.com/users/nadeerck2020/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/nadeerck2020/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/nadeerck2020/subscriptions', 'organizations_url': 'https://api.github.com/users/nadeerck2020/orgs', 'repos_url': 'https://api.github.com/users/nadeerck2020/repos', 'events_url': 'https://api.github.com/users/nadeerck2020/events{/privacy}', 'received_events_url': 'https://api.github.com/users/nadeerck2020/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-08-27T12:10:01Z,2020-09-01T14:29:17Z,2020-09-01T14:29:17Z,NONE,,,"## Environment
- ejabberd version: 18.09
- Erlang version: `erl +V`
- OS: Linux (CentOS)
- Installed from: source | distro package | official deb/rpm | official binary installer | other
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
xxx.xxx:
auth_method: [ldap]
ldap_servers: [xxx.xxx.xx.xxx] # List of LDAP servers
ldap_base: ""DC=xxx,DC=xxx"" # Search base of LDAP directory
ldap_rootdn: ""CN=xxxxx,OU=xxx xx,DC=xxx,DC=xxx"" # LDAP manager
ldap_password: ""password"" # Password to LDAP manager
ldap_uids: [sAMAccountName]
ldap_filter: ""(objectClass=user)""
```yaml
loglevel: 4
...
```
## Errors from error.log/crash.log
crasher:
initial call: ejabberd_auth_ldap:init/1
pid: <0.786.0>
registered_name: []
exception error: undefined function pg:start_link/0
in function eldap_pool:start_link/7 (src/eldap_pool.erl, line 69)
in call from ejabberd_auth_ldap:init/1 (src/ejabberd_auth_ldap.erl, line 103)
in call from gen_server:init_it/2 (gen_server.erl, line 374)
in call from gen_server:init_it/6 (gen_server.erl, line 342)
ancestors: [ejabberd_backend_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.474.0>]
dictionary: []
trap_exit: true
status: running
heap_size: 610
stack_size: 27
reductions: 16452
neighbours:
## Bug description
One week ago it is working. suddenly it stops working. internal authentication is working fine. when trying to login using ldap authentication it shows error like this.
Failed c2s PLAIN authentication for abcd@xxx.xxfrom ::ffff:192.168.34.56: Invalid username or password
Please, give us a precise description (what does not work, what is expected, etc.)
",
317,https://api.github.com/repos/processone/ejabberd/issues/3366,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3366/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3366/comments,https://api.github.com/repos/processone/ejabberd/issues/3366/events,https://github.com/processone/ejabberd/issues/3366,686321098,MDU6SXNzdWU2ODYzMjEwOTg=,3366,while running it shows an error like this. Ldap authentication also failing.,"{'login': 'nadeerck2020', 'id': 65544497, 'node_id': 'MDQ6VXNlcjY1NTQ0NDk3', 'avatar_url': 'https://avatars3.githubusercontent.com/u/65544497?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/nadeerck2020', 'html_url': 'https://github.com/nadeerck2020', 'followers_url': 'https://api.github.com/users/nadeerck2020/followers', 'following_url': 'https://api.github.com/users/nadeerck2020/following{/other_user}', 'gists_url': 'https://api.github.com/users/nadeerck2020/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/nadeerck2020/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/nadeerck2020/subscriptions', 'organizations_url': 'https://api.github.com/users/nadeerck2020/orgs', 'repos_url': 'https://api.github.com/users/nadeerck2020/repos', 'events_url': 'https://api.github.com/users/nadeerck2020/events{/privacy}', 'received_events_url': 'https://api.github.com/users/nadeerck2020/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-08-26T13:28:19Z,2020-08-27T11:49:43Z,2020-08-27T11:49:43Z,NONE,,,"## Environment
- ejabberd version: 18.09
- Erlang version: `erl +V`
- OS: Linux (CentOS)
- Installed from: source | distro package | official deb/rpm | official binary installer | other
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
loglevel: 4
...
```
## Errors from error.log/crash.log
crasher:
initial call: ejabberd_auth_ldap:init/1
pid: <0.787.0>
registered_name: []
exception error: undefined function pg:start_link/0
in function eldap_pool:start_link/7 (src/eldap_pool.erl, line 69)
in call from ejabberd_auth_ldap:init/1 (src/ejabberd_auth_ldap.erl, line 103)
in call from gen_server:init_it/2 (gen_server.erl, line 374)
in call from gen_server:init_it/6 (gen_server.erl, line 342)
ancestors: [ejabberd_backend_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.475.0>]
dictionary: []
trap_exit: true
status: running
heap_size: 610
stack_size: 27
reductions: 16452
neighbours:
## Bug description
i can't able to login using LDAP authentication. it always shows an error like this. internal authentication is works fine
Failed c2s PLAIN authentication for xxxxxxx@xxxx.xxxx from ::ffff:192.168.34.56: Invalid username or password
Please, give us a precise description (what does not work, what is expected, etc.)
",
318,https://api.github.com/repos/processone/ejabberd/issues/3365,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3365/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3365/comments,https://api.github.com/repos/processone/ejabberd/issues/3365/events,https://github.com/processone/ejabberd/issues/3365,685257407,MDU6SXNzdWU2ODUyNTc0MDc=,3365,Missing default values cause mysql errors,"{'login': '4i-helpynet', 'id': 20337770, 'node_id': 'MDQ6VXNlcjIwMzM3Nzcw', 'avatar_url': 'https://avatars2.githubusercontent.com/u/20337770?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/4i-helpynet', 'html_url': 'https://github.com/4i-helpynet', 'followers_url': 'https://api.github.com/users/4i-helpynet/followers', 'following_url': 'https://api.github.com/users/4i-helpynet/following{/other_user}', 'gists_url': 'https://api.github.com/users/4i-helpynet/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/4i-helpynet/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/4i-helpynet/subscriptions', 'organizations_url': 'https://api.github.com/users/4i-helpynet/orgs', 'repos_url': 'https://api.github.com/users/4i-helpynet/repos', 'events_url': 'https://api.github.com/users/4i-helpynet/events{/privacy}', 'received_events_url': 'https://api.github.com/users/4i-helpynet/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,1,2020-08-25T07:48:01Z,2020-08-25T07:51:42Z,,NONE,,,"## Environment
- ejabberd version: 20.07
- Erlang version: `erl +V`
- OS: Linux (Debian) Ubuntu 16.04
- Installed from: official deb/rpm
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
loglevel: 4
...
```
## Bug description
Register user with
./ejabberdctl register ""test"" ""example.com"" ""123Abc""
run error of 'No default value of server_host, and cannot be null', the user isn't inserted.
After add default value, the user inserted as normal.
",
319,https://api.github.com/repos/processone/ejabberd/issues/3364,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3364/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3364/comments,https://api.github.com/repos/processone/ejabberd/issues/3364/events,https://github.com/processone/ejabberd/issues/3364,684515931,MDU6SXNzdWU2ODQ1MTU5MzE=,3364,Logging for ejabberd_service,"{'login': 'siccegge', 'id': 405064, 'node_id': 'MDQ6VXNlcjQwNTA2NA==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/405064?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/siccegge', 'html_url': 'https://github.com/siccegge', 'followers_url': 'https://api.github.com/users/siccegge/followers', 'following_url': 'https://api.github.com/users/siccegge/following{/other_user}', 'gists_url': 'https://api.github.com/users/siccegge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/siccegge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/siccegge/subscriptions', 'organizations_url': 'https://api.github.com/users/siccegge/orgs', 'repos_url': 'https://api.github.com/users/siccegge/repos', 'events_url': 'https://api.github.com/users/siccegge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/siccegge/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",open,False,,[],,3,2020-08-24T09:28:19Z,2020-08-24T11:15:55Z,,NONE,,,"Configuring `ejabberd_service` (with tls) is next to impossible with the current version of ejabberd.
Problem is, there is basically no logging at all:
```
# gnutls-cli conference.example.org -p 5347
Processed 128 CA certificate(s).
Resolving 'conference.example.org:5347'...
Connecting to '...:5347'...
*** Fatal error: Error in the pull function.
```
But all I get in ejabberd.log (with loglevel 5) is
```
2020-08-24 09:19:11.266 [info] <0.362.0>@ejabberd_listener:accept:273 (<0.717.0>) Accepted connection [...]:58556 -> [...]:5347
```
and no indication at all that something even went wrong. Now I managed to puzzle the concrete (certificate related) problem together last time but after certificate renewal I'm totally lost again. Would be great if there was any sort of helpful logging
",
320,https://api.github.com/repos/processone/ejabberd/issues/3363,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3363/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3363/comments,https://api.github.com/repos/processone/ejabberd/issues/3363/events,https://github.com/processone/ejabberd/issues/3363,684428604,MDU6SXNzdWU2ODQ0Mjg2MDQ=,3363,web-admin: Mark dangerous actions as such,"{'login': 'htgoebel', 'id': 784161, 'node_id': 'MDQ6VXNlcjc4NDE2MQ==', 'avatar_url': 'https://avatars1.githubusercontent.com/u/784161?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/htgoebel', 'html_url': 'https://github.com/htgoebel', 'followers_url': 'https://api.github.com/users/htgoebel/followers', 'following_url': 'https://api.github.com/users/htgoebel/following{/other_user}', 'gists_url': 'https://api.github.com/users/htgoebel/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/htgoebel/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/htgoebel/subscriptions', 'organizations_url': 'https://api.github.com/users/htgoebel/orgs', 'repos_url': 'https://api.github.com/users/htgoebel/repos', 'events_url': 'https://api.github.com/users/htgoebel/events{/privacy}', 'received_events_url': 'https://api.github.com/users/htgoebel/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179679118, 'node_id': 'MDU6TGFiZWwxNzk2NzkxMTg=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Admin%20Tools', 'name': 'Component:Admin Tools', 'color': 'f7c6c7', 'default': False, 'description': None}, {'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",open,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]",,1,2020-08-24T07:14:42Z,2020-08-24T16:32:28Z,,NONE,,,"Again and again I find myself removing users, when In just wanted to see their roster. The reason is that the ""Remove user"" button is in no way offset from the other buttons. Related: For Offlline Messages the Link to get to the messages is small (only the few characters of the number), while the ""Remove all offlice messages"" beside is big.
I propose enhancing the Web UI as follows
* All dangerous actions will become button (if they are not already)
* Elements beside the dangerous action will be resized to be up to par with the dangerous action
* All dangerous buttons are visually marked as such
* Adopting from github UI, they get a red text, and when hovering over, they become red
* Best would be to collect all dangerous actions in a ""danger zone"" (again adopted from github)
This is how it can look like:
![grafik](https://user-images.githubusercontent.com/784161/91013263-b1b72f80-e5e7-11ea-88fd-8fcba4a0bc06.png)
* Link for Offline Messages has become a Button too. (Here the number of messages in part of the button text, this might be done differently)
* ""!Remove offline messages"" has become ""dangerous""
* Roster has become a headline plus a button - instead of just being a clickable headline
* ""Remove user"" has been put into the ""danger zone""
* Even if other dangerous buttons are not moved to the danger zone for now, I strongly suggest esp. emphasizing on Remove user being danger.
Implementation notes:
* All dangerous buttons get CSS class ""btn-danger""
* Add a view lines to the web-uis's style sheet
Here is the example from the screenshot:
```html
User jane@doe.com
```",
321,https://api.github.com/repos/processone/ejabberd/issues/3362,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3362/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3362/comments,https://api.github.com/repos/processone/ejabberd/issues/3362/events,https://github.com/processone/ejabberd/issues/3362,683627416,MDU6SXNzdWU2ODM2Mjc0MTY=,3362,I lose all contacts on roster when use internal and LDAP auth method at same time.,"{'login': 'JCAK1967', 'id': 13694423, 'node_id': 'MDQ6VXNlcjEzNjk0NDIz', 'avatar_url': 'https://avatars0.githubusercontent.com/u/13694423?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JCAK1967', 'html_url': 'https://github.com/JCAK1967', 'followers_url': 'https://api.github.com/users/JCAK1967/followers', 'following_url': 'https://api.github.com/users/JCAK1967/following{/other_user}', 'gists_url': 'https://api.github.com/users/JCAK1967/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JCAK1967/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JCAK1967/subscriptions', 'organizations_url': 'https://api.github.com/users/JCAK1967/orgs', 'repos_url': 'https://api.github.com/users/JCAK1967/repos', 'events_url': 'https://api.github.com/users/JCAK1967/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JCAK1967/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,1,2020-08-21T15:04:58Z,2020-08-21T16:06:51Z,,NONE,,,"## Environment
- ejabberd version: 20.04 with Mnesia Database
- OS: Windows Server 2019
## Errors from error.log/crash.log
No errors
## Bug description
We are using Internal and LDAP as authentication metohd. Some users initially created as Internal actually use LDAP has auth method. Both JID names with different passwords.
## The Problem
1) eJabberd force both JID with same name to sharing the same roster, but when I delete one of this JID names, ejabberd no ask if I whant preserve the roster for use with the remain JID and lost all contacts on both JID accounts.
2) When I search on the ejabberd list of users I see two JID with the same name and both look as connected when only LDAP was used to connect. Both JID names have different passwords.
",
322,https://api.github.com/repos/processone/ejabberd/issues/3361,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3361/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3361/comments,https://api.github.com/repos/processone/ejabberd/issues/3361/events,https://github.com/processone/ejabberd/issues/3361,682603336,MDU6SXNzdWU2ODI2MDMzMzY=,3361,RFE: Add specific domains support to Letsencrypt renewal configuration,"{'login': 'adriangibanelbtactic', 'id': 1331363, 'node_id': 'MDQ6VXNlcjEzMzEzNjM=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1331363?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/adriangibanelbtactic', 'html_url': 'https://github.com/adriangibanelbtactic', 'followers_url': 'https://api.github.com/users/adriangibanelbtactic/followers', 'following_url': 'https://api.github.com/users/adriangibanelbtactic/following{/other_user}', 'gists_url': 'https://api.github.com/users/adriangibanelbtactic/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/adriangibanelbtactic/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/adriangibanelbtactic/subscriptions', 'organizations_url': 'https://api.github.com/users/adriangibanelbtactic/orgs', 'repos_url': 'https://api.github.com/users/adriangibanelbtactic/repos', 'events_url': 'https://api.github.com/users/adriangibanelbtactic/events{/privacy}', 'received_events_url': 'https://api.github.com/users/adriangibanelbtactic/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",open,False,,[],,1,2020-08-20T10:27:34Z,2020-08-20T10:55:22Z,,NONE,,,"**Is your feature request related to a problem? Please describe.**
The problem is to make work LetsEncrypt default renewal with custom domains when they are not publicy exposed.
If we define in ejabberd.xml the following stanza:
```
hosts:
- chat.example.net
- example.com
```
then, ejabberd assumes the domains that are going to be associated in a public manner to the server are:
- chat.example.net
- pubsub.chat.example.net
- conference.chat.example.net
- example.com
- pubsub.example.com
- conference.example.com
.
Despite the former making sense or not in an ejabberd environment I'm not going to point example.com to the ejabberd server so that the Letsencrypt automatic renewal works even if I'm entering it with only chat.example.net url.
**Describe the solution you'd like**
I want the acme stanza from ejabberd.yml file to support custom domains so that they are the only ones to be renewed with the auto acme feature.
If no custom domains are set then do the default behaviour (try to renew everything).
Example:
```
acme:
ca_url: https://acme-v02.api.letsencrypt.org/directory
contact:
- mailto:certificate@example.net
domains:
- chat.example.net
- pubsub.chat.example.net
- conference.chat.example.net
auto: true
cert_type: rsa
```
**Describe alternatives you've considered**
I think that this should be easier to fix if ejabberd would allow us to define virtual hosts associated to domains (what ejabberd names as hosts) as it happens in webservers.
Then, you know, ejabberd would only try to renew certificates associated to every defined virtual hosts.
**Additional context**
An old stanza example without domains support would be:
```
acme:
ca_url: https://acme-v02.api.letsencrypt.org/directory
contact:
- mailto:certificate@example.net
auto: true
cert_type: rsa
```",
323,https://api.github.com/repos/processone/ejabberd/issues/3360,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3360/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3360/comments,https://api.github.com/repos/processone/ejabberd/issues/3360/events,https://github.com/processone/ejabberd/issues/3360,682488984,MDU6SXNzdWU2ODI0ODg5ODQ=,3360,/close as duplicate of #2550 ?,"{'login': 'kamalakkannan1984', 'id': 5610920, 'node_id': 'MDQ6VXNlcjU2MTA5MjA=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5610920?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/kamalakkannan1984', 'html_url': 'https://github.com/kamalakkannan1984', 'followers_url': 'https://api.github.com/users/kamalakkannan1984/followers', 'following_url': 'https://api.github.com/users/kamalakkannan1984/following{/other_user}', 'gists_url': 'https://api.github.com/users/kamalakkannan1984/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/kamalakkannan1984/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/kamalakkannan1984/subscriptions', 'organizations_url': 'https://api.github.com/users/kamalakkannan1984/orgs', 'repos_url': 'https://api.github.com/users/kamalakkannan1984/repos', 'events_url': 'https://api.github.com/users/kamalakkannan1984/events{/privacy}', 'received_events_url': 'https://api.github.com/users/kamalakkannan1984/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-20T07:24:51Z,2020-08-20T07:26:41Z,2020-08-20T07:26:41Z,NONE,,,"/close as duplicate of #2550 ?
_Originally posted by @licaon-kter in https://github.com/processone/ejabberd/issues/2562#issuecomment-411381362_",
324,https://api.github.com/repos/processone/ejabberd/issues/3359,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3359/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3359/comments,https://api.github.com/repos/processone/ejabberd/issues/3359/events,https://github.com/processone/ejabberd/issues/3359,681812299,MDU6SXNzdWU2ODE4MTIyOTk=,3359,Ejabberd Cluster file / images send not working for one node to second node,"{'login': 'kamalakkannan1984', 'id': 5610920, 'node_id': 'MDQ6VXNlcjU2MTA5MjA=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5610920?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/kamalakkannan1984', 'html_url': 'https://github.com/kamalakkannan1984', 'followers_url': 'https://api.github.com/users/kamalakkannan1984/followers', 'following_url': 'https://api.github.com/users/kamalakkannan1984/following{/other_user}', 'gists_url': 'https://api.github.com/users/kamalakkannan1984/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/kamalakkannan1984/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/kamalakkannan1984/subscriptions', 'organizations_url': 'https://api.github.com/users/kamalakkannan1984/orgs', 'repos_url': 'https://api.github.com/users/kamalakkannan1984/repos', 'events_url': 'https://api.github.com/users/kamalakkannan1984/events{/privacy}', 'received_events_url': 'https://api.github.com/users/kamalakkannan1984/received_events', 'type': 'User', 'site_admin': False}",[],open,False,"{'login': 'weiss', 'id': 71850, 'node_id': 'MDQ6VXNlcjcxODUw', 'avatar_url': 'https://avatars1.githubusercontent.com/u/71850?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/weiss', 'html_url': 'https://github.com/weiss', 'followers_url': 'https://api.github.com/users/weiss/followers', 'following_url': 'https://api.github.com/users/weiss/following{/other_user}', 'gists_url': 'https://api.github.com/users/weiss/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/weiss/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/weiss/subscriptions', 'organizations_url': 'https://api.github.com/users/weiss/orgs', 'repos_url': 'https://api.github.com/users/weiss/repos', 'events_url': 'https://api.github.com/users/weiss/events{/privacy}', 'received_events_url': 'https://api.github.com/users/weiss/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'weiss', 'id': 71850, 'node_id': 'MDQ6VXNlcjcxODUw', 'avatar_url': 'https://avatars1.githubusercontent.com/u/71850?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/weiss', 'html_url': 'https://github.com/weiss', 'followers_url': 'https://api.github.com/users/weiss/followers', 'following_url': 'https://api.github.com/users/weiss/following{/other_user}', 'gists_url': 'https://api.github.com/users/weiss/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/weiss/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/weiss/subscriptions', 'organizations_url': 'https://api.github.com/users/weiss/orgs', 'repos_url': 'https://api.github.com/users/weiss/repos', 'events_url': 'https://api.github.com/users/weiss/events{/privacy}', 'received_events_url': 'https://api.github.com/users/weiss/received_events', 'type': 'User', 'site_admin': False}]",,5,2020-08-19T12:47:17Z,2020-08-20T13:06:43Z,,NONE,,,"## Environment
- ejabberd version: 20.04
- Erlang version: `erl +V`
- OS: Linux (Debian)
- Installed from: source | distro package | official deb/rpm | official binary installer | other
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
loglevel: 4
...
```
## Errors from error.log/crash.log
2020-08-19 10:57:54.010 [warning] <0.1997.0>@mod_http_upload:process:563 Rejecting file ca427369-3812-4459-8162-ba4694f831fd.jpg from ::ffff:127.0.0.1 for 7049.xxxx.yyyyy.com: Invalid slot
Ejabberd Clustor file sharing not working for one node to second node
## Bug description
The Ejabberd cluster setup via HAProxy load balancer. In the cluster setup I have Node1(Ejabberd server 1) and Node2(Ejabberd server 2). When I upload file some time get rejected regarding invalid slot.
Our setup is HAProxy connect with two nodes(Node1 and Node2)
Note: Single Node(Ejabberd server) working fine.
Please any one share your ideas and feedback.
",
325,https://api.github.com/repos/processone/ejabberd/issues/3358,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3358/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3358/comments,https://api.github.com/repos/processone/ejabberd/issues/3358/events,https://github.com/processone/ejabberd/issues/3358,679541983,MDU6SXNzdWU2Nzk1NDE5ODM=,3358,sudden error,"{'login': 'shazvan275', 'id': 24987484, 'node_id': 'MDQ6VXNlcjI0OTg3NDg0', 'avatar_url': 'https://avatars0.githubusercontent.com/u/24987484?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/shazvan275', 'html_url': 'https://github.com/shazvan275', 'followers_url': 'https://api.github.com/users/shazvan275/followers', 'following_url': 'https://api.github.com/users/shazvan275/following{/other_user}', 'gists_url': 'https://api.github.com/users/shazvan275/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/shazvan275/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/shazvan275/subscriptions', 'organizations_url': 'https://api.github.com/users/shazvan275/orgs', 'repos_url': 'https://api.github.com/users/shazvan275/repos', 'events_url': 'https://api.github.com/users/shazvan275/events{/privacy}', 'received_events_url': 'https://api.github.com/users/shazvan275/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,4,2020-08-15T10:29:06Z,2020-08-18T16:56:57Z,,NONE,,,"```
Error in process <0.455.0> on node ejabberd@localhost with exit value:
{{case_clause,255},
[{p1_mysql_conn,greeting,2,[{file,""src/p1_mysql_conn.erl""},{line,518}]},
{p1_mysql_conn,mysql_init,6,[{file,""src/p1_mysql_conn.erl""},{line,440}]},
{p1_mysql_conn,init,9,[{file,""src/p1_mysql_conn.erl""},{line,335}]}]}
```
i got this error.. ",
326,https://api.github.com/repos/processone/ejabberd/issues/3357,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3357/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3357/comments,https://api.github.com/repos/processone/ejabberd/issues/3357/events,https://github.com/processone/ejabberd/issues/3357,678492958,MDU6SXNzdWU2Nzg0OTI5NTg=,3357,Pubsub: Implement #expire_item,"{'login': 'lovetox', 'id': 8661218, 'node_id': 'MDQ6VXNlcjg2NjEyMTg=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/8661218?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/lovetox', 'html_url': 'https://github.com/lovetox', 'followers_url': 'https://api.github.com/users/lovetox/followers', 'following_url': 'https://api.github.com/users/lovetox/following{/other_user}', 'gists_url': 'https://api.github.com/users/lovetox/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/lovetox/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/lovetox/subscriptions', 'organizations_url': 'https://api.github.com/users/lovetox/orgs', 'repos_url': 'https://api.github.com/users/lovetox/repos', 'events_url': 'https://api.github.com/users/lovetox/events{/privacy}', 'received_events_url': 'https://api.github.com/users/lovetox/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179040816, 'node_id': 'MDU6TGFiZWwxNzkwNDA4MTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Pubsub', 'name': 'Component:Pubsub', 'color': 'fad8c7', 'default': False, 'description': None}, {'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",open,False,,[],,0,2020-08-13T14:41:56Z,2020-08-13T16:53:33Z,,NONE,,,"Feature:
Let client set a time in seconds when a pubsub item should expire
see XEP-0060
Motivation:
This is nice for user data like User Activity / User Mood / User Tune, or even in the future a Status Message XEP via PEP.
If the user sets his Activity or Mood, the client wants to expire it after some time. Right now we remove the items when going offline. But thats not optimal as there could be other clients online.
Its considerable work to check if an item in a multi client setup with various connection disruptions is still valid or current, a simple ""This expires in 24 hours"" would be perfect.
",
327,https://api.github.com/repos/processone/ejabberd/issues/3356,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3356/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3356/comments,https://api.github.com/repos/processone/ejabberd/issues/3356/events,https://github.com/processone/ejabberd/pull/3356,677050715,MDExOlB1bGxSZXF1ZXN0NDY2MjQxNTM2,3356,avoid preparing statements for pgsql,"{'login': 'oxpa', 'id': 1932978, 'node_id': 'MDQ6VXNlcjE5MzI5Nzg=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1932978?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/oxpa', 'html_url': 'https://github.com/oxpa', 'followers_url': 'https://api.github.com/users/oxpa/followers', 'following_url': 'https://api.github.com/users/oxpa/following{/other_user}', 'gists_url': 'https://api.github.com/users/oxpa/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/oxpa/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/oxpa/subscriptions', 'organizations_url': 'https://api.github.com/users/oxpa/orgs', 'repos_url': 'https://api.github.com/users/oxpa/repos', 'events_url': 'https://api.github.com/users/oxpa/events{/privacy}', 'received_events_url': 'https://api.github.com/users/oxpa/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,2,2020-08-11T17:15:57Z,2020-08-11T17:37:03Z,,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3356', 'html_url': 'https://github.com/processone/ejabberd/pull/3356', 'diff_url': 'https://github.com/processone/ejabberd/pull/3356.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3356.patch'}","When using with pgbouncer or other Postgresql balancer ejabberd doesn't behave well as it uses anonymous prepared statements which are valid for a single connection only.
The proposed change removes prepared statements from ejabberd and instead relies on p1_pgsql to prepare and execute statement (see p1_pgsql/pull/5).
This change also requires new pq_pgsql version, but I can't change rebar config as my pull request to pgsql is not yet accepted (at the time of me writing this message).
I'm not 100% sure if this will work properly in all cases, but I'm willing to fix any mistakes I left behind.",
328,https://api.github.com/repos/processone/ejabberd/issues/3355,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3355/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3355/comments,https://api.github.com/repos/processone/ejabberd/issues/3355/events,https://github.com/processone/ejabberd/issues/3355,675515198,MDU6SXNzdWU2NzU1MTUxOTg=,3355,Can't grant privilages to access webadmin for just one virtual host,"{'login': 'JuniorJPDJ', 'id': 7334549, 'node_id': 'MDQ6VXNlcjczMzQ1NDk=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/7334549?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JuniorJPDJ', 'html_url': 'https://github.com/JuniorJPDJ', 'followers_url': 'https://api.github.com/users/JuniorJPDJ/followers', 'following_url': 'https://api.github.com/users/JuniorJPDJ/following{/other_user}', 'gists_url': 'https://api.github.com/users/JuniorJPDJ/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JuniorJPDJ/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JuniorJPDJ/subscriptions', 'organizations_url': 'https://api.github.com/users/JuniorJPDJ/orgs', 'repos_url': 'https://api.github.com/users/JuniorJPDJ/repos', 'events_url': 'https://api.github.com/users/JuniorJPDJ/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JuniorJPDJ/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179679118, 'node_id': 'MDU6TGFiZWwxNzk2NzkxMTg=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Admin%20Tools', 'name': 'Component:Admin Tools', 'color': 'f7c6c7', 'default': False, 'description': None}]",closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/11', 'html_url': 'https://github.com/processone/ejabberd/milestone/11', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/11/labels', 'id': 1437111, 'node_id': 'MDk6TWlsZXN0b25lMTQzNzExMQ==', 'number': 11, 'title': 'ejabberd 20.xx', 'description': '', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 35, 'closed_issues': 4, 'state': 'open', 'created_at': '2015-12-01T10:25:26Z', 'updated_at': '2020-09-03T18:38:17Z', 'due_on': None, 'closed_at': None}",2,2020-08-08T12:04:49Z,2020-08-11T05:20:02Z,2020-08-10T19:19:45Z,NONE,,,"## Environment
- ejabberd version: 20.07 tag
- Installed from: official docker image
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
acl:
local:
user_regexp: """"
loopback:
ip:
- 127.0.0.0/8
- ::1/128
- ::FFFF:127.0.0.1/128
admin:
user:
- juniorjpdj@juniorjpdj.pl
# - marcin@marcin.co
append_host_config:
# same for host_config: but it breaks also other things
""marcin.co"":
acl:
admin:
user:
- marcin@marcin.co
access_rules:
local:
allow: local
c2s:
deny: blocked
allow: all
announce:
allow: admin
configure:
allow: admin
muc_create:
allow: local
pubsub_createnode:
allow: local
trusted_network:
allow: loopback
```
## Bug description
I want to give my friend webadmin access for his virtualhost.
When I add him just for his virtualhost (like in config above) he has his vhost on list of vhosts but his webadmin is blank when he clicks on it and he lacks left menu.
His web panel:
![image](https://user-images.githubusercontent.com/7334549/89710018-eb4d3100-d97f-11ea-9c66-836c77b735be.png)
![image](https://user-images.githubusercontent.com/7334549/89710021-f011e500-d97f-11ea-828e-7acbf5db6e16.png)
My web panel:
![image](https://user-images.githubusercontent.com/7334549/89710032-0455e200-d980-11ea-84ac-6c05cb28711f.png)
![image](https://user-images.githubusercontent.com/7334549/89710036-0881ff80-d980-11ea-8482-768585fe6391.png)
",
329,https://api.github.com/repos/processone/ejabberd/issues/3354,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3354/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3354/comments,https://api.github.com/repos/processone/ejabberd/issues/3354/events,https://github.com/processone/ejabberd/issues/3354,675394957,MDU6SXNzdWU2NzUzOTQ5NTc=,3354,Unable to build ejabberd as a project dependency,"{'login': 'slezakattack', 'id': 1261638, 'node_id': 'MDQ6VXNlcjEyNjE2Mzg=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1261638?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/slezakattack', 'html_url': 'https://github.com/slezakattack', 'followers_url': 'https://api.github.com/users/slezakattack/followers', 'following_url': 'https://api.github.com/users/slezakattack/following{/other_user}', 'gists_url': 'https://api.github.com/users/slezakattack/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/slezakattack/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/slezakattack/subscriptions', 'organizations_url': 'https://api.github.com/users/slezakattack/orgs', 'repos_url': 'https://api.github.com/users/slezakattack/repos', 'events_url': 'https://api.github.com/users/slezakattack/events{/privacy}', 'received_events_url': 'https://api.github.com/users/slezakattack/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-08-08T01:46:23Z,2020-08-11T08:11:09Z,2020-08-11T08:11:09Z,NONE,,,"## Environment
- ejabberd version: 20.07
- Erlang version: OTP 21 `Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.3.5.13`
- OS: Mac OSX
- Installed from: declared as dependency in erlang project.
## Bug description
My Erlang project is using rebar3 and pulling ejabberd as a dependency (I've tried both as a hex package and a git dependency). The hex package seems to only be available for Elixir. Is there any planned work to support this for Erlang?
Pulling it as a git dependency instead gives this error:
`===> Error building application ejabberd:
No project builder is configured for type mix`
",
330,https://api.github.com/repos/processone/ejabberd/issues/3353,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3353/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3353/comments,https://api.github.com/repos/processone/ejabberd/issues/3353/events,https://github.com/processone/ejabberd/issues/3353,674121329,MDU6SXNzdWU2NzQxMjEzMjk=,3353,create_room hook isn't triggered when a room is created by an available presence,"{'login': 'Freyskeyd', 'id': 1394604, 'node_id': 'MDQ6VXNlcjEzOTQ2MDQ=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1394604?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Freyskeyd', 'html_url': 'https://github.com/Freyskeyd', 'followers_url': 'https://api.github.com/users/Freyskeyd/followers', 'following_url': 'https://api.github.com/users/Freyskeyd/following{/other_user}', 'gists_url': 'https://api.github.com/users/Freyskeyd/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Freyskeyd/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Freyskeyd/subscriptions', 'organizations_url': 'https://api.github.com/users/Freyskeyd/orgs', 'repos_url': 'https://api.github.com/users/Freyskeyd/repos', 'events_url': 'https://api.github.com/users/Freyskeyd/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Freyskeyd/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,5,2020-08-06T08:21:09Z,2020-08-28T12:54:42Z,,NONE,,,"## Environment
- ejabberd version: 20.04
- Erlang version: `10.3 otp 21`
- OS: Linux (Debian)
- Installed from: source
## Bug description
The `create_room` hook isn't triggered when a room is created by an `available` presence received.
It seems that this hook is only available when creating room from ctl, not when people are actually joining the room.
The hook is triggered here: https://github.com/processone/ejabberd/blob/master/src/mod_muc.erl#L392
The room creation by presence is triggered here: https://github.com/processone/ejabberd/blob/master/src/mod_muc.erl#L549
I tagged it as bug but maybe it's done by pupose.
Let me know if you want more context!",
331,https://api.github.com/repos/processone/ejabberd/issues/3352,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3352/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3352/comments,https://api.github.com/repos/processone/ejabberd/issues/3352/events,https://github.com/processone/ejabberd/issues/3352,674080574,MDU6SXNzdWU2NzQwODA1NzQ=,3352,Ejabberd cluster going down,"{'login': 'biddwan09', 'id': 21155410, 'node_id': 'MDQ6VXNlcjIxMTU1NDEw', 'avatar_url': 'https://avatars0.githubusercontent.com/u/21155410?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/biddwan09', 'html_url': 'https://github.com/biddwan09', 'followers_url': 'https://api.github.com/users/biddwan09/followers', 'following_url': 'https://api.github.com/users/biddwan09/following{/other_user}', 'gists_url': 'https://api.github.com/users/biddwan09/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/biddwan09/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/biddwan09/subscriptions', 'organizations_url': 'https://api.github.com/users/biddwan09/orgs', 'repos_url': 'https://api.github.com/users/biddwan09/repos', 'events_url': 'https://api.github.com/users/biddwan09/events{/privacy}', 'received_events_url': 'https://api.github.com/users/biddwan09/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,4,2020-08-06T07:15:50Z,2020-08-18T15:13:09Z,,NONE,,,"We run ejabberd 19.05 in our cluster and it is going down frequently throwing the below error continuously. We have been restarting the server lately to fix this error. Any solution to this would be highly appreciated.
```
020-08-06 06:34:35 =SUPERVISOR REPORT====
Supervisor: {local,ejabberd_http_sup}
Context: child_terminated
Reason: killed
Offender: [{pid,<0.27515.1575>},{id,undefined},{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},{shutdown,1000},{child_type,worker}]
2020-08-06 06:34:57 =SUPERVISOR REPORT====
Supervisor: {local,ejabberd_http_sup}
Context: child_terminated
Reason: killed
Offender: [{pid,<0.22434.1548>},{id,undefined},{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},{shutdown,1000},{child_type,worker}]
```",
332,https://api.github.com/repos/processone/ejabberd/issues/3381,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3381/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3381/comments,https://api.github.com/repos/processone/ejabberd/issues/3381/events,https://github.com/processone/ejabberd/pull/3381,693214770,MDExOlB1bGxSZXF1ZXN0NDc5NzI1NTc4,3381,Allow for filtering outgoing s2s stanzas,"{'login': 'weiss', 'id': 71850, 'node_id': 'MDQ6VXNlcjcxODUw', 'avatar_url': 'https://avatars1.githubusercontent.com/u/71850?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/weiss', 'html_url': 'https://github.com/weiss', 'followers_url': 'https://api.github.com/users/weiss/followers', 'following_url': 'https://api.github.com/users/weiss/following{/other_user}', 'gists_url': 'https://api.github.com/users/weiss/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/weiss/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/weiss/subscriptions', 'organizations_url': 'https://api.github.com/users/weiss/orgs', 'repos_url': 'https://api.github.com/users/weiss/repos', 'events_url': 'https://api.github.com/users/weiss/events{/privacy}', 'received_events_url': 'https://api.github.com/users/weiss/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,0,2020-09-04T14:14:35Z,2020-09-04T14:14:35Z,,MEMBER,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3381', 'html_url': 'https://github.com/processone/ejabberd/pull/3381', 'diff_url': 'https://github.com/processone/ejabberd/pull/3381.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3381.patch'}","Let `s2s_send_packet` hook callbacks filter/drop stanzas, analogous to [the `s2s_receive_packet` hook][1].
[1]: https://github.com/processone/ejabberd/blob/20.07/src/ejabberd_s2s_in.erl#L221-L226",
333,https://api.github.com/repos/processone/ejabberd/issues/3380,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3380/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3380/comments,https://api.github.com/repos/processone/ejabberd/issues/3380/events,https://github.com/processone/ejabberd/issues/3380,693149972,MDU6SXNzdWU2OTMxNDk5NzI=,3380,MUC Message does not work from Rest API,"{'login': 'AtifShahzed', 'id': 54445953, 'node_id': 'MDQ6VXNlcjU0NDQ1OTUz', 'avatar_url': 'https://avatars0.githubusercontent.com/u/54445953?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/AtifShahzed', 'html_url': 'https://github.com/AtifShahzed', 'followers_url': 'https://api.github.com/users/AtifShahzed/followers', 'following_url': 'https://api.github.com/users/AtifShahzed/following{/other_user}', 'gists_url': 'https://api.github.com/users/AtifShahzed/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/AtifShahzed/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/AtifShahzed/subscriptions', 'organizations_url': 'https://api.github.com/users/AtifShahzed/orgs', 'repos_url': 'https://api.github.com/users/AtifShahzed/repos', 'events_url': 'https://api.github.com/users/AtifShahzed/events{/privacy}', 'received_events_url': 'https://api.github.com/users/AtifShahzed/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,1,2020-09-04T13:07:15Z,2020-09-04T15:46:51Z,,NONE,,,"HI,
I have configure MUC with Rest Api working fine. I am able to create room through Rest Api and send invitation to the user to join the room and when user receive request they can join the MUC room
Whole workflow is working fine.
The only problem is when I use send message api and use MUC room JID to send room message so it does not work although I receive 200 status code with 0 in response which means success but message does not deliver to the MUC room.
Is there any special settings are required to make it working.
Thanks",
334,https://api.github.com/repos/processone/ejabberd/issues/3379,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3379/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3379/comments,https://api.github.com/repos/processone/ejabberd/issues/3379/events,https://github.com/processone/ejabberd/pull/3379,691917913,MDExOlB1bGxSZXF1ZXN0NDc4NTg4MDk3,3379,Fix syntax for lager dependency version,"{'login': 'nosnilmot', 'id': 29980186, 'node_id': 'MDQ6VXNlcjI5OTgwMTg2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/29980186?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/nosnilmot', 'html_url': 'https://github.com/nosnilmot', 'followers_url': 'https://api.github.com/users/nosnilmot/followers', 'following_url': 'https://api.github.com/users/nosnilmot/following{/other_user}', 'gists_url': 'https://api.github.com/users/nosnilmot/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/nosnilmot/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/nosnilmot/subscriptions', 'organizations_url': 'https://api.github.com/users/nosnilmot/orgs', 'repos_url': 'https://api.github.com/users/nosnilmot/repos', 'events_url': 'https://api.github.com/users/nosnilmot/events{/privacy}', 'received_events_url': 'https://api.github.com/users/nosnilmot/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-09-03T12:14:21Z,2020-09-03T13:35:35Z,2020-09-03T13:35:35Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3379', 'html_url': 'https://github.com/processone/ejabberd/pull/3379', 'diff_url': 'https://github.com/processone/ejabberd/pull/3379.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3379.patch'}","Add 'tag' to lager dependency so that build with rebar3 will pull from
hex package instead of git checkout matching other dependencies",
335,https://api.github.com/repos/processone/ejabberd/issues/3378,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3378/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3378/comments,https://api.github.com/repos/processone/ejabberd/issues/3378/events,https://github.com/processone/ejabberd/issues/3378,691435320,MDU6SXNzdWU2OTE0MzUzMjA=,3378,Send POST Http request If user offline,"{'login': 'AtifShahzed', 'id': 54445953, 'node_id': 'MDQ6VXNlcjU0NDQ1OTUz', 'avatar_url': 'https://avatars0.githubusercontent.com/u/54445953?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/AtifShahzed', 'html_url': 'https://github.com/AtifShahzed', 'followers_url': 'https://api.github.com/users/AtifShahzed/followers', 'following_url': 'https://api.github.com/users/AtifShahzed/following{/other_user}', 'gists_url': 'https://api.github.com/users/AtifShahzed/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/AtifShahzed/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/AtifShahzed/subscriptions', 'organizations_url': 'https://api.github.com/users/AtifShahzed/orgs', 'repos_url': 'https://api.github.com/users/AtifShahzed/repos', 'events_url': 'https://api.github.com/users/AtifShahzed/events{/privacy}', 'received_events_url': 'https://api.github.com/users/AtifShahzed/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,3,2020-09-02T21:31:19Z,2020-09-04T09:48:21Z,,NONE,,,"Hi,
I am looking to the solution where I wanted to send the message as a PUSH Notification if receiving user is offline.
I don't need to configure PUSH Notification right on jabbered, I have another server which handles all the plumbing of iOS/Android PUSH Notification. What I am looking to send the message as a plain POST REQUEST to my server .
Looking forward for the suggestions and guidance.
Thanks
",
336,https://api.github.com/repos/processone/ejabberd/issues/3377,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3377/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3377/comments,https://api.github.com/repos/processone/ejabberd/issues/3377/events,https://github.com/processone/ejabberd/issues/3377,691255655,MDU6SXNzdWU2OTEyNTU2NTU=,3377,Outcoming chat messages are not always stored in archive,"{'login': 'gsohn', 'id': 10253280, 'node_id': 'MDQ6VXNlcjEwMjUzMjgw', 'avatar_url': 'https://avatars2.githubusercontent.com/u/10253280?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/gsohn', 'html_url': 'https://github.com/gsohn', 'followers_url': 'https://api.github.com/users/gsohn/followers', 'following_url': 'https://api.github.com/users/gsohn/following{/other_user}', 'gists_url': 'https://api.github.com/users/gsohn/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/gsohn/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/gsohn/subscriptions', 'organizations_url': 'https://api.github.com/users/gsohn/orgs', 'repos_url': 'https://api.github.com/users/gsohn/repos', 'events_url': 'https://api.github.com/users/gsohn/events{/privacy}', 'received_events_url': 'https://api.github.com/users/gsohn/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/11', 'html_url': 'https://github.com/processone/ejabberd/milestone/11', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/11/labels', 'id': 1437111, 'node_id': 'MDk6TWlsZXN0b25lMTQzNzExMQ==', 'number': 11, 'title': 'ejabberd 20.xx', 'description': '', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 35, 'closed_issues': 4, 'state': 'open', 'created_at': '2015-12-01T10:25:26Z', 'updated_at': '2020-09-03T18:38:17Z', 'due_on': None, 'closed_at': None}",14,2020-09-02T17:34:01Z,2020-09-04T09:45:20Z,,NONE,,,"## Environment
- ejabberd version: 20.07
## Configuration
```
mod_mam:
db_type: sql
assume_mam_usage: true
default: always
user_mucsub_from_muc_archive: true
request_activates_archiving: false
```
Only incoming chat messages are stored in archive table when we send messages with ejabberd send_message command and/or send_message API endpoint.
The outcoming chat messages are only stored when the from user has an active session.
",
337,https://api.github.com/repos/processone/ejabberd/issues/3376,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3376/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3376/comments,https://api.github.com/repos/processone/ejabberd/issues/3376/events,https://github.com/processone/ejabberd/issues/3376,691116680,MDU6SXNzdWU2OTExMTY2ODA=,3376,MUC Room from Rest API,"{'login': 'AtifShahzed', 'id': 54445953, 'node_id': 'MDQ6VXNlcjU0NDQ1OTUz', 'avatar_url': 'https://avatars0.githubusercontent.com/u/54445953?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/AtifShahzed', 'html_url': 'https://github.com/AtifShahzed', 'followers_url': 'https://api.github.com/users/AtifShahzed/followers', 'following_url': 'https://api.github.com/users/AtifShahzed/following{/other_user}', 'gists_url': 'https://api.github.com/users/AtifShahzed/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/AtifShahzed/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/AtifShahzed/subscriptions', 'organizations_url': 'https://api.github.com/users/AtifShahzed/orgs', 'repos_url': 'https://api.github.com/users/AtifShahzed/repos', 'events_url': 'https://api.github.com/users/AtifShahzed/events{/privacy}', 'received_events_url': 'https://api.github.com/users/AtifShahzed/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-09-02T15:26:25Z,2020-09-02T21:32:13Z,2020-09-02T21:32:13Z,NONE,,,"Hi,
I am facing following error when I try to create a MUC from rest api.
My post request is following along with error log.
```
POST /api/create_room
{
""name"": ""room1"",
""service"": ""muc.blabla.com"",
""host"": ""blabla.com""
}
```
**Error log details are given below when I rung the above api.**
```2020-09-02 08:15:56.850 [error] <0.541.0>@mod_http_api:handle:258 REST API Error:
create_room([{<<""name"">>,<<""room1"">>},{<<""service"">>,<<""muc.blabla"">>},{<<""host"">>,<<""blabla"">>}]) ->
error:{unregistered_route,<<""muc.blabla"">>}
[{ejabberd_router,host_of_route,1,[{file,""src/ejabberd_router.erl""},{line,280}]},
{mod_muc,find_online_room,2,[{file,""src/mod_muc.erl""},{line,325}]},
{mod_muc_admin,create_room_with_opts,4,[{file,""src/mod_muc_admin.erl""},{line,661}]},
{mod_http_api,handle2,4,[{file,""src/mod_http_api.erl""},{line,268}]},
{mod_http_api,handle,4,[{file,""src/mod_http_api.erl""},{line,229}]},
{mod_http_api,perform_call,4,[{file,""src/mod_http_api.erl""},{line,189}]},
{mod_http_api,process,2,[{file,""src/mod_http_api.erl""},{line,142}]},
{ejabberd_http,process,2,[{file,""src/ejabberd_http.erl""},{line,370}]}]
```
**MUC Configuration**
```
mod_muc:
access:
- allow
access_admin:
- allow: admin
access_create: muc_create
access_persistent: muc_create
access_mam:
- allow
default_room_options:
persistent: true
public: false
members_only: true
mod_muc_admin: {}
```
**Command line error**
```
ejabberdctl create_room ""DEMO"" ""muc.BLAH.com"" ""BLAH.com""
Unhandled exception occurred executing the command:
** exception error: {unregistered_route,<<""muc.BLAH.com"">>}
in function ejabberd_router:host_of_route/1 (src/ejabberd_router.erl, line 280)
in call from mod_muc:find_online_room/2 (src/mod_muc.erl, line 325)
in call from mod_muc_admin:create_room_with_opts/4 (src/mod_muc_admin.erl, line 661)
in call from ejabberd_ctl:call_command/4 (src/ejabberd_ctl.erl, line 315)
in call from ejabberd_ctl:try_call_command/4 (src/ejabberd_ctl.erl, line 280)
in call from ejabberd_ctl:process2/4 (src/ejabberd_ctl.erl, line 233)
in call from ejabberd_ctl:process/2 (src/ejabberd_ctl.erl, line 211)
in call from rpc:'-handle_call_call/6-fun-0-'/5 (rpc.erl, line 197)
```",
338,https://api.github.com/repos/processone/ejabberd/issues/3375,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3375/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3375/comments,https://api.github.com/repos/processone/ejabberd/issues/3375/events,https://github.com/processone/ejabberd/issues/3375,690937198,MDU6SXNzdWU2OTA5MzcxOTg=,3375,Unable to create admin user,"{'login': 'aamir-github', 'id': 11234464, 'node_id': 'MDQ6VXNlcjExMjM0NDY0', 'avatar_url': 'https://avatars3.githubusercontent.com/u/11234464?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aamir-github', 'html_url': 'https://github.com/aamir-github', 'followers_url': 'https://api.github.com/users/aamir-github/followers', 'following_url': 'https://api.github.com/users/aamir-github/following{/other_user}', 'gists_url': 'https://api.github.com/users/aamir-github/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aamir-github/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aamir-github/subscriptions', 'organizations_url': 'https://api.github.com/users/aamir-github/orgs', 'repos_url': 'https://api.github.com/users/aamir-github/repos', 'events_url': 'https://api.github.com/users/aamir-github/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aamir-github/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,5,2020-09-02T11:19:24Z,2020-09-03T20:33:54Z,,NONE,,,"## Environment
- ejabberd version: 18.09
- Erlang version:
- OS: Windows 10 (docker image)
- Installed from: official binary installer
After configuring ejabberd on windows 10 through docker and following the [documentation](https://hub.docker.com/r/ejabberd/ecs/) I am trying to create an admin user, but whenever I try the command
`PS C:\Users\user_name> docker exec -it ejabberd bin/ejabberdapi register --endpoint=http://127.0.0.1:5280/ --jid=admin@localhost --password=passw0rd`
it shows the following error
`ejabberdapi: error: user registration error for admin@localhost: Error 99: invalid character '<' looking for beginning of value`",
339,https://api.github.com/repos/processone/ejabberd/issues/3374,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3374/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3374/comments,https://api.github.com/repos/processone/ejabberd/issues/3374/events,https://github.com/processone/ejabberd/issues/3374,689933725,MDU6SXNzdWU2ODk5MzM3MjU=,3374,Create user PEP nodes using admin account,"{'login': 'gsohn', 'id': 10253280, 'node_id': 'MDQ6VXNlcjEwMjUzMjgw', 'avatar_url': 'https://avatars2.githubusercontent.com/u/10253280?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/gsohn', 'html_url': 'https://github.com/gsohn', 'followers_url': 'https://api.github.com/users/gsohn/followers', 'following_url': 'https://api.github.com/users/gsohn/following{/other_user}', 'gists_url': 'https://api.github.com/users/gsohn/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/gsohn/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/gsohn/subscriptions', 'organizations_url': 'https://api.github.com/users/gsohn/orgs', 'repos_url': 'https://api.github.com/users/gsohn/repos', 'events_url': 'https://api.github.com/users/gsohn/events{/privacy}', 'received_events_url': 'https://api.github.com/users/gsohn/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179680325, 'node_id': 'MDU6TGFiZWwxNzk2ODAzMjU=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:PEP', 'name': 'Component:PEP', 'color': 'fad8c7', 'default': False, 'description': None}]",closed,False,,[],,2,2020-09-01T08:22:03Z,2020-09-02T10:33:40Z,2020-09-01T22:50:48Z,NONE,,,"## Environment
- ejabberd version: 20.04
- users are authenticated with jwt
We are trying to create pep nodes for users using a client connected with an admin account. Theses nodes have to be created when a user is added in our system, and can't be created by the xmpp client itself. We have no issue when we create nodes using our pubsub service domain as host.
We have this error and don't figured out how to deal with that... :/
```
{
""status"" : 422,
""code"" : ""error.nodeOperationException"",
""message"" : ""org.jivesoftware.smack.XMPPException$XMPPErrorException: XMPP error reply received from gziqfxxswbcia4.1577630572043@im.XXX.XXX: XMPPError: subscription-required - auth [Not subscribed]""
}
```
Thanks
",
340,https://api.github.com/repos/processone/ejabberd/issues/3373,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3373/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3373/comments,https://api.github.com/repos/processone/ejabberd/issues/3373/events,https://github.com/processone/ejabberd/issues/3373,688237146,MDU6SXNzdWU2ODgyMzcxNDY=,3373,max_users is not set correctly,"{'login': 'gsohn', 'id': 10253280, 'node_id': 'MDQ6VXNlcjEwMjUzMjgw', 'avatar_url': 'https://avatars2.githubusercontent.com/u/10253280?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/gsohn', 'html_url': 'https://github.com/gsohn', 'followers_url': 'https://api.github.com/users/gsohn/followers', 'following_url': 'https://api.github.com/users/gsohn/following{/other_user}', 'gists_url': 'https://api.github.com/users/gsohn/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/gsohn/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/gsohn/subscriptions', 'organizations_url': 'https://api.github.com/users/gsohn/orgs', 'repos_url': 'https://api.github.com/users/gsohn/repos', 'events_url': 'https://api.github.com/users/gsohn/events{/privacy}', 'received_events_url': 'https://api.github.com/users/gsohn/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-08-28T17:27:06Z,2020-08-31T08:40:46Z,2020-08-31T08:40:46Z,NONE,,,"ejabberd 20.3.0
I configured mod_muc maximum nb of user with following config:
````
mod_muc:
max_users: 500
````
When I create a room with the REST API, without max_uses option, max users is set as 200 in room options.",
341,https://api.github.com/repos/processone/ejabberd/issues/3372,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3372/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3372/comments,https://api.github.com/repos/processone/ejabberd/issues/3372/events,https://github.com/processone/ejabberd/issues/3372,688224373,MDU6SXNzdWU2ODgyMjQzNzM=,3372,How to restrict ejabberd domain signup?,"{'login': 'ModeFX22', 'id': 33901301, 'node_id': 'MDQ6VXNlcjMzOTAxMzAx', 'avatar_url': 'https://avatars0.githubusercontent.com/u/33901301?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ModeFX22', 'html_url': 'https://github.com/ModeFX22', 'followers_url': 'https://api.github.com/users/ModeFX22/followers', 'following_url': 'https://api.github.com/users/ModeFX22/following{/other_user}', 'gists_url': 'https://api.github.com/users/ModeFX22/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ModeFX22/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ModeFX22/subscriptions', 'organizations_url': 'https://api.github.com/users/ModeFX22/orgs', 'repos_url': 'https://api.github.com/users/ModeFX22/repos', 'events_url': 'https://api.github.com/users/ModeFX22/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ModeFX22/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",open,False,,[],,9,2020-08-28T17:05:04Z,2020-09-01T14:21:39Z,,NONE,,,"
Hello! I am about to make my XMPP server public but there is one problem, we use ""staff.example.com"" for server administrator accounts, I only want users to register using example.com so how could I do that?
Sincerely
ModeFX",
342,https://api.github.com/repos/processone/ejabberd/issues/3371,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3371/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3371/comments,https://api.github.com/repos/processone/ejabberd/issues/3371/events,https://github.com/processone/ejabberd/issues/3371,687902780,MDU6SXNzdWU2ODc5MDI3ODA=,3371,mod_mam is not storing messages - RPM packages ejabberd-20.07-0.x86_64.rpm on centos8,"{'login': 'wurstdog', 'id': 26695552, 'node_id': 'MDQ6VXNlcjI2Njk1NTUy', 'avatar_url': 'https://avatars0.githubusercontent.com/u/26695552?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/wurstdog', 'html_url': 'https://github.com/wurstdog', 'followers_url': 'https://api.github.com/users/wurstdog/followers', 'following_url': 'https://api.github.com/users/wurstdog/following{/other_user}', 'gists_url': 'https://api.github.com/users/wurstdog/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/wurstdog/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/wurstdog/subscriptions', 'organizations_url': 'https://api.github.com/users/wurstdog/orgs', 'repos_url': 'https://api.github.com/users/wurstdog/repos', 'events_url': 'https://api.github.com/users/wurstdog/events{/privacy}', 'received_events_url': 'https://api.github.com/users/wurstdog/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,4,2020-08-28T08:25:32Z,2020-09-01T08:16:25Z,2020-09-01T08:16:25Z,NONE,,,"Hi there,
i have just install ejabberd-20.07 as a cluster on Centos8 from package and enabled MySQL (mariadb, galeracluster).
The user authentication with sql works well but i have a problem with offlinemessages
and with messages archiving.
#### Mariadb version
+---------------------+
| @@version. |
+---------------------+
| 10.4.12-MariaDB-log |
+---------------------+
#### ejabberd packages
ejabberd-20.07-0.x86_64.rpm
#### ejabberd version
The node ejabberd@ejabberd01 is started with status: started
ejabberd 20.07 is running in that node
#### ejabberd cluster
ejabberd@ejabberd03
ejabberd@ejabberd02
ejabberd@ejabberd01
#### Galeracluster
+--------------------+-------+
| Variable_name | Value |
+--------------------+-------+
| wsrep_cluster_size | 3 |
+--------------------+-------+
```
MariaDB [ejabberd]> select * from archive;
Empty set (0.001 sec)
MariaDB [ejabberd]> select * from archive_prefs;
Empty set (0.000 sec)
```
snippset ejabberd.yml
```
default_db: sql
sql_type: mysql
```
```
mod_mam:
## Mnesia is limited to 2GB, better to use an SQL backend
## For small servers SQLite is a good fit and is very easy
## to configure. Uncomment this when you have SQL configured:
db_type: sql
assume_mam_usage: true
default: always
```
On my other server with ejabberd and mariadb everything works perfect for me.
#### ejabberd version
ejabberd 19.9.0
#### Mariadb version
+----------------------------------------+
| @@version |
+----------------------------------------+
| 10.4.11-MariaDB-1:10.4.11+maria~bionic |
+----------------------------------------+
Thx
",
343,https://api.github.com/repos/processone/ejabberd/issues/3370,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3370/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3370/comments,https://api.github.com/repos/processone/ejabberd/issues/3370/events,https://github.com/processone/ejabberd/issues/3370,687581703,MDU6SXNzdWU2ODc1ODE3MDM=,3370,MUC: Unescape disco info identity name attribute,"{'login': 'lovetox', 'id': 8661218, 'node_id': 'MDQ6VXNlcjg2NjEyMTg=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/8661218?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/lovetox', 'html_url': 'https://github.com/lovetox', 'followers_url': 'https://api.github.com/users/lovetox/followers', 'following_url': 'https://api.github.com/users/lovetox/following{/other_user}', 'gists_url': 'https://api.github.com/users/lovetox/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/lovetox/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/lovetox/subscriptions', 'organizations_url': 'https://api.github.com/users/lovetox/orgs', 'repos_url': 'https://api.github.com/users/lovetox/repos', 'events_url': 'https://api.github.com/users/lovetox/events{/privacy}', 'received_events_url': 'https://api.github.com/users/lovetox/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179040838, 'node_id': 'MDU6TGFiZWwxNzkwNDA4Mzg=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:MUC', 'name': 'Component:MUC', 'color': 'fad8c7', 'default': False, 'description': None}, {'id': 179053016, 'node_id': 'MDU6TGFiZWwxNzkwNTMwMTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Enhancement', 'name': 'Kind:Enhancement', 'color': '009800', 'default': False, 'description': None}]",closed,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/11', 'html_url': 'https://github.com/processone/ejabberd/milestone/11', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/11/labels', 'id': 1437111, 'node_id': 'MDk6TWlsZXN0b25lMTQzNzExMQ==', 'number': 11, 'title': 'ejabberd 20.xx', 'description': '', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 35, 'closed_issues': 4, 'state': 'open', 'created_at': '2015-12-01T10:25:26Z', 'updated_at': '2020-09-03T18:38:17Z', 'due_on': None, 'closed_at': None}",4,2020-08-27T22:25:51Z,2020-08-31T08:29:40Z,2020-08-31T08:29:40Z,NONE,,,"Create a MUC with a JID: `friends&family@chat.yourserver.com`
The client escapes the JID (XEP-0106) and a MUC is created: `friends\26family@chat.yourserver.com`
Ejabberd has the habbit of setting the disco info identity name attribute to the localpart of the room jid
hence the muc name is `friends\26family`
muc identity name is a user exposed field, hence this string should be properly unescaped to `firends&family`
the second solution which would also be ok is to simply not set this attribute at all.
Clients can do that themself if they want to
before you get panic to dive into escaping JIDs, let me show that unescaping JIDs is rather trivial
here my python impl
```python
_localpart_escape_chars = ' ""&\'/:<>@'
def unescape_localpart(localpart):
if localpart.startswith('\\20') or localpart.endswith('\\20'):
# Escaped localparts are not allowed to start or end with \20
# so this localpart must be already unescaped
return localpart
for char in _localpart_escape_chars:
seq = ""\\{:02x}"".format(ord(char))
localpart = localpart.replace(seq, char)
for char in _localpart_escape_chars + ""\\"":
seq = ""\\5c{:02x}"".format(ord(char))
localpart = localpart.replace(seq, ""\\{:02x}"".format(ord(char)))
return localpart
```",
344,https://api.github.com/repos/processone/ejabberd/issues/3369,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3369/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3369/comments,https://api.github.com/repos/processone/ejabberd/issues/3369/events,https://github.com/processone/ejabberd/pull/3369,687381022,MDExOlB1bGxSZXF1ZXN0NDc0ODE3MDA2,3369,Use include_lib() to include headers from dependencies,"{'login': 'nosnilmot', 'id': 29980186, 'node_id': 'MDQ6VXNlcjI5OTgwMTg2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/29980186?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/nosnilmot', 'html_url': 'https://github.com/nosnilmot', 'followers_url': 'https://api.github.com/users/nosnilmot/followers', 'following_url': 'https://api.github.com/users/nosnilmot/following{/other_user}', 'gists_url': 'https://api.github.com/users/nosnilmot/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/nosnilmot/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/nosnilmot/subscriptions', 'organizations_url': 'https://api.github.com/users/nosnilmot/orgs', 'repos_url': 'https://api.github.com/users/nosnilmot/repos', 'events_url': 'https://api.github.com/users/nosnilmot/events{/privacy}', 'received_events_url': 'https://api.github.com/users/nosnilmot/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-27T16:31:25Z,2020-09-03T11:45:58Z,2020-09-03T11:45:58Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3369', 'html_url': 'https://github.com/processone/ejabberd/pull/3369', 'diff_url': 'https://github.com/processone/ejabberd/pull/3369.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3369.patch'}","Similar to pull request #1446 but also cleans up rebar.config (and I have signed CLA).
Depends on xmpp library with https://github.com/processone/xmpp/pull/51 included
Fixes #2788
",
345,https://api.github.com/repos/processone/ejabberd/issues/3368,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3368/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3368/comments,https://api.github.com/repos/processone/ejabberd/issues/3368/events,https://github.com/processone/ejabberd/pull/3368,687218282,MDExOlB1bGxSZXF1ZXN0NDc0Njc5NzUw,3368,Update base64url dep for rebar3,"{'login': 'nosnilmot', 'id': 29980186, 'node_id': 'MDQ6VXNlcjI5OTgwMTg2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/29980186?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/nosnilmot', 'html_url': 'https://github.com/nosnilmot', 'followers_url': 'https://api.github.com/users/nosnilmot/followers', 'following_url': 'https://api.github.com/users/nosnilmot/following{/other_user}', 'gists_url': 'https://api.github.com/users/nosnilmot/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/nosnilmot/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/nosnilmot/subscriptions', 'organizations_url': 'https://api.github.com/users/nosnilmot/orgs', 'repos_url': 'https://api.github.com/users/nosnilmot/repos', 'events_url': 'https://api.github.com/users/nosnilmot/events{/privacy}', 'received_events_url': 'https://api.github.com/users/nosnilmot/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-27T12:52:19Z,2020-09-03T11:40:04Z,2020-09-03T11:40:04Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3368', 'html_url': 'https://github.com/processone/ejabberd/pull/3368', 'diff_url': 'https://github.com/processone/ejabberd/pull/3368.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3368.patch'}","Update base64url version to match available hex package to support
compilation with rebar3",
346,https://api.github.com/repos/processone/ejabberd/issues/3367,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3367/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3367/comments,https://api.github.com/repos/processone/ejabberd/issues/3367/events,https://github.com/processone/ejabberd/issues/3367,687191073,MDU6SXNzdWU2ODcxOTEwNzM=,3367,LDAP authentication failed,"{'login': 'nadeerck2020', 'id': 65544497, 'node_id': 'MDQ6VXNlcjY1NTQ0NDk3', 'avatar_url': 'https://avatars3.githubusercontent.com/u/65544497?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/nadeerck2020', 'html_url': 'https://github.com/nadeerck2020', 'followers_url': 'https://api.github.com/users/nadeerck2020/followers', 'following_url': 'https://api.github.com/users/nadeerck2020/following{/other_user}', 'gists_url': 'https://api.github.com/users/nadeerck2020/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/nadeerck2020/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/nadeerck2020/subscriptions', 'organizations_url': 'https://api.github.com/users/nadeerck2020/orgs', 'repos_url': 'https://api.github.com/users/nadeerck2020/repos', 'events_url': 'https://api.github.com/users/nadeerck2020/events{/privacy}', 'received_events_url': 'https://api.github.com/users/nadeerck2020/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-08-27T12:10:01Z,2020-09-01T14:29:17Z,2020-09-01T14:29:17Z,NONE,,,"## Environment
- ejabberd version: 18.09
- Erlang version: `erl +V`
- OS: Linux (CentOS)
- Installed from: source | distro package | official deb/rpm | official binary installer | other
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
xxx.xxx:
auth_method: [ldap]
ldap_servers: [xxx.xxx.xx.xxx] # List of LDAP servers
ldap_base: ""DC=xxx,DC=xxx"" # Search base of LDAP directory
ldap_rootdn: ""CN=xxxxx,OU=xxx xx,DC=xxx,DC=xxx"" # LDAP manager
ldap_password: ""password"" # Password to LDAP manager
ldap_uids: [sAMAccountName]
ldap_filter: ""(objectClass=user)""
```yaml
loglevel: 4
...
```
## Errors from error.log/crash.log
crasher:
initial call: ejabberd_auth_ldap:init/1
pid: <0.786.0>
registered_name: []
exception error: undefined function pg:start_link/0
in function eldap_pool:start_link/7 (src/eldap_pool.erl, line 69)
in call from ejabberd_auth_ldap:init/1 (src/ejabberd_auth_ldap.erl, line 103)
in call from gen_server:init_it/2 (gen_server.erl, line 374)
in call from gen_server:init_it/6 (gen_server.erl, line 342)
ancestors: [ejabberd_backend_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.474.0>]
dictionary: []
trap_exit: true
status: running
heap_size: 610
stack_size: 27
reductions: 16452
neighbours:
## Bug description
One week ago it is working. suddenly it stops working. internal authentication is working fine. when trying to login using ldap authentication it shows error like this.
Failed c2s PLAIN authentication for abcd@xxx.xxfrom ::ffff:192.168.34.56: Invalid username or password
Please, give us a precise description (what does not work, what is expected, etc.)
",
347,https://api.github.com/repos/processone/ejabberd/issues/3366,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3366/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3366/comments,https://api.github.com/repos/processone/ejabberd/issues/3366/events,https://github.com/processone/ejabberd/issues/3366,686321098,MDU6SXNzdWU2ODYzMjEwOTg=,3366,while running it shows an error like this. Ldap authentication also failing.,"{'login': 'nadeerck2020', 'id': 65544497, 'node_id': 'MDQ6VXNlcjY1NTQ0NDk3', 'avatar_url': 'https://avatars3.githubusercontent.com/u/65544497?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/nadeerck2020', 'html_url': 'https://github.com/nadeerck2020', 'followers_url': 'https://api.github.com/users/nadeerck2020/followers', 'following_url': 'https://api.github.com/users/nadeerck2020/following{/other_user}', 'gists_url': 'https://api.github.com/users/nadeerck2020/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/nadeerck2020/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/nadeerck2020/subscriptions', 'organizations_url': 'https://api.github.com/users/nadeerck2020/orgs', 'repos_url': 'https://api.github.com/users/nadeerck2020/repos', 'events_url': 'https://api.github.com/users/nadeerck2020/events{/privacy}', 'received_events_url': 'https://api.github.com/users/nadeerck2020/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-08-26T13:28:19Z,2020-08-27T11:49:43Z,2020-08-27T11:49:43Z,NONE,,,"## Environment
- ejabberd version: 18.09
- Erlang version: `erl +V`
- OS: Linux (CentOS)
- Installed from: source | distro package | official deb/rpm | official binary installer | other
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
loglevel: 4
...
```
## Errors from error.log/crash.log
crasher:
initial call: ejabberd_auth_ldap:init/1
pid: <0.787.0>
registered_name: []
exception error: undefined function pg:start_link/0
in function eldap_pool:start_link/7 (src/eldap_pool.erl, line 69)
in call from ejabberd_auth_ldap:init/1 (src/ejabberd_auth_ldap.erl, line 103)
in call from gen_server:init_it/2 (gen_server.erl, line 374)
in call from gen_server:init_it/6 (gen_server.erl, line 342)
ancestors: [ejabberd_backend_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.475.0>]
dictionary: []
trap_exit: true
status: running
heap_size: 610
stack_size: 27
reductions: 16452
neighbours:
## Bug description
i can't able to login using LDAP authentication. it always shows an error like this. internal authentication is works fine
Failed c2s PLAIN authentication for xxxxxxx@xxxx.xxxx from ::ffff:192.168.34.56: Invalid username or password
Please, give us a precise description (what does not work, what is expected, etc.)
",
348,https://api.github.com/repos/processone/ejabberd/issues/3365,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3365/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3365/comments,https://api.github.com/repos/processone/ejabberd/issues/3365/events,https://github.com/processone/ejabberd/issues/3365,685257407,MDU6SXNzdWU2ODUyNTc0MDc=,3365,Missing default values cause mysql errors,"{'login': '4i-helpynet', 'id': 20337770, 'node_id': 'MDQ6VXNlcjIwMzM3Nzcw', 'avatar_url': 'https://avatars2.githubusercontent.com/u/20337770?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/4i-helpynet', 'html_url': 'https://github.com/4i-helpynet', 'followers_url': 'https://api.github.com/users/4i-helpynet/followers', 'following_url': 'https://api.github.com/users/4i-helpynet/following{/other_user}', 'gists_url': 'https://api.github.com/users/4i-helpynet/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/4i-helpynet/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/4i-helpynet/subscriptions', 'organizations_url': 'https://api.github.com/users/4i-helpynet/orgs', 'repos_url': 'https://api.github.com/users/4i-helpynet/repos', 'events_url': 'https://api.github.com/users/4i-helpynet/events{/privacy}', 'received_events_url': 'https://api.github.com/users/4i-helpynet/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,1,2020-08-25T07:48:01Z,2020-08-25T07:51:42Z,,NONE,,,"## Environment
- ejabberd version: 20.07
- Erlang version: `erl +V`
- OS: Linux (Debian) Ubuntu 16.04
- Installed from: official deb/rpm
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
loglevel: 4
...
```
## Bug description
Register user with
./ejabberdctl register ""test"" ""example.com"" ""123Abc""
run error of 'No default value of server_host, and cannot be null', the user isn't inserted.
After add default value, the user inserted as normal.
",
349,https://api.github.com/repos/processone/ejabberd/issues/3364,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3364/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3364/comments,https://api.github.com/repos/processone/ejabberd/issues/3364/events,https://github.com/processone/ejabberd/issues/3364,684515931,MDU6SXNzdWU2ODQ1MTU5MzE=,3364,Logging for ejabberd_service,"{'login': 'siccegge', 'id': 405064, 'node_id': 'MDQ6VXNlcjQwNTA2NA==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/405064?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/siccegge', 'html_url': 'https://github.com/siccegge', 'followers_url': 'https://api.github.com/users/siccegge/followers', 'following_url': 'https://api.github.com/users/siccegge/following{/other_user}', 'gists_url': 'https://api.github.com/users/siccegge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/siccegge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/siccegge/subscriptions', 'organizations_url': 'https://api.github.com/users/siccegge/orgs', 'repos_url': 'https://api.github.com/users/siccegge/repos', 'events_url': 'https://api.github.com/users/siccegge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/siccegge/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",open,False,,[],,3,2020-08-24T09:28:19Z,2020-08-24T11:15:55Z,,NONE,,,"Configuring `ejabberd_service` (with tls) is next to impossible with the current version of ejabberd.
Problem is, there is basically no logging at all:
```
# gnutls-cli conference.example.org -p 5347
Processed 128 CA certificate(s).
Resolving 'conference.example.org:5347'...
Connecting to '...:5347'...
*** Fatal error: Error in the pull function.
```
But all I get in ejabberd.log (with loglevel 5) is
```
2020-08-24 09:19:11.266 [info] <0.362.0>@ejabberd_listener:accept:273 (<0.717.0>) Accepted connection [...]:58556 -> [...]:5347
```
and no indication at all that something even went wrong. Now I managed to puzzle the concrete (certificate related) problem together last time but after certificate renewal I'm totally lost again. Would be great if there was any sort of helpful logging
",
350,https://api.github.com/repos/processone/ejabberd/issues/3363,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3363/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3363/comments,https://api.github.com/repos/processone/ejabberd/issues/3363/events,https://github.com/processone/ejabberd/issues/3363,684428604,MDU6SXNzdWU2ODQ0Mjg2MDQ=,3363,web-admin: Mark dangerous actions as such,"{'login': 'htgoebel', 'id': 784161, 'node_id': 'MDQ6VXNlcjc4NDE2MQ==', 'avatar_url': 'https://avatars1.githubusercontent.com/u/784161?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/htgoebel', 'html_url': 'https://github.com/htgoebel', 'followers_url': 'https://api.github.com/users/htgoebel/followers', 'following_url': 'https://api.github.com/users/htgoebel/following{/other_user}', 'gists_url': 'https://api.github.com/users/htgoebel/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/htgoebel/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/htgoebel/subscriptions', 'organizations_url': 'https://api.github.com/users/htgoebel/orgs', 'repos_url': 'https://api.github.com/users/htgoebel/repos', 'events_url': 'https://api.github.com/users/htgoebel/events{/privacy}', 'received_events_url': 'https://api.github.com/users/htgoebel/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179679118, 'node_id': 'MDU6TGFiZWwxNzk2NzkxMTg=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Admin%20Tools', 'name': 'Component:Admin Tools', 'color': 'f7c6c7', 'default': False, 'description': None}, {'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",open,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]",,1,2020-08-24T07:14:42Z,2020-08-24T16:32:28Z,,NONE,,,"Again and again I find myself removing users, when In just wanted to see their roster. The reason is that the ""Remove user"" button is in no way offset from the other buttons. Related: For Offlline Messages the Link to get to the messages is small (only the few characters of the number), while the ""Remove all offlice messages"" beside is big.
I propose enhancing the Web UI as follows
* All dangerous actions will become button (if they are not already)
* Elements beside the dangerous action will be resized to be up to par with the dangerous action
* All dangerous buttons are visually marked as such
* Adopting from github UI, they get a red text, and when hovering over, they become red
* Best would be to collect all dangerous actions in a ""danger zone"" (again adopted from github)
This is how it can look like:
![grafik](https://user-images.githubusercontent.com/784161/91013263-b1b72f80-e5e7-11ea-88fd-8fcba4a0bc06.png)
* Link for Offline Messages has become a Button too. (Here the number of messages in part of the button text, this might be done differently)
* ""!Remove offline messages"" has become ""dangerous""
* Roster has become a headline plus a button - instead of just being a clickable headline
* ""Remove user"" has been put into the ""danger zone""
* Even if other dangerous buttons are not moved to the danger zone for now, I strongly suggest esp. emphasizing on Remove user being danger.
Implementation notes:
* All dangerous buttons get CSS class ""btn-danger""
* Add a view lines to the web-uis's style sheet
Here is the example from the screenshot:
```html
User jane@doe.com
```",
351,https://api.github.com/repos/processone/ejabberd/issues/3362,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3362/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3362/comments,https://api.github.com/repos/processone/ejabberd/issues/3362/events,https://github.com/processone/ejabberd/issues/3362,683627416,MDU6SXNzdWU2ODM2Mjc0MTY=,3362,I lose all contacts on roster when use internal and LDAP auth method at same time.,"{'login': 'JCAK1967', 'id': 13694423, 'node_id': 'MDQ6VXNlcjEzNjk0NDIz', 'avatar_url': 'https://avatars0.githubusercontent.com/u/13694423?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JCAK1967', 'html_url': 'https://github.com/JCAK1967', 'followers_url': 'https://api.github.com/users/JCAK1967/followers', 'following_url': 'https://api.github.com/users/JCAK1967/following{/other_user}', 'gists_url': 'https://api.github.com/users/JCAK1967/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JCAK1967/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JCAK1967/subscriptions', 'organizations_url': 'https://api.github.com/users/JCAK1967/orgs', 'repos_url': 'https://api.github.com/users/JCAK1967/repos', 'events_url': 'https://api.github.com/users/JCAK1967/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JCAK1967/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,1,2020-08-21T15:04:58Z,2020-08-21T16:06:51Z,,NONE,,,"## Environment
- ejabberd version: 20.04 with Mnesia Database
- OS: Windows Server 2019
## Errors from error.log/crash.log
No errors
## Bug description
We are using Internal and LDAP as authentication metohd. Some users initially created as Internal actually use LDAP has auth method. Both JID names with different passwords.
## The Problem
1) eJabberd force both JID with same name to sharing the same roster, but when I delete one of this JID names, ejabberd no ask if I whant preserve the roster for use with the remain JID and lost all contacts on both JID accounts.
2) When I search on the ejabberd list of users I see two JID with the same name and both look as connected when only LDAP was used to connect. Both JID names have different passwords.
",
352,https://api.github.com/repos/processone/ejabberd/issues/3361,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3361/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3361/comments,https://api.github.com/repos/processone/ejabberd/issues/3361/events,https://github.com/processone/ejabberd/issues/3361,682603336,MDU6SXNzdWU2ODI2MDMzMzY=,3361,RFE: Add specific domains support to Letsencrypt renewal configuration,"{'login': 'adriangibanelbtactic', 'id': 1331363, 'node_id': 'MDQ6VXNlcjEzMzEzNjM=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1331363?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/adriangibanelbtactic', 'html_url': 'https://github.com/adriangibanelbtactic', 'followers_url': 'https://api.github.com/users/adriangibanelbtactic/followers', 'following_url': 'https://api.github.com/users/adriangibanelbtactic/following{/other_user}', 'gists_url': 'https://api.github.com/users/adriangibanelbtactic/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/adriangibanelbtactic/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/adriangibanelbtactic/subscriptions', 'organizations_url': 'https://api.github.com/users/adriangibanelbtactic/orgs', 'repos_url': 'https://api.github.com/users/adriangibanelbtactic/repos', 'events_url': 'https://api.github.com/users/adriangibanelbtactic/events{/privacy}', 'received_events_url': 'https://api.github.com/users/adriangibanelbtactic/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",open,False,,[],,1,2020-08-20T10:27:34Z,2020-08-20T10:55:22Z,,NONE,,,"**Is your feature request related to a problem? Please describe.**
The problem is to make work LetsEncrypt default renewal with custom domains when they are not publicy exposed.
If we define in ejabberd.xml the following stanza:
```
hosts:
- chat.example.net
- example.com
```
then, ejabberd assumes the domains that are going to be associated in a public manner to the server are:
- chat.example.net
- pubsub.chat.example.net
- conference.chat.example.net
- example.com
- pubsub.example.com
- conference.example.com
.
Despite the former making sense or not in an ejabberd environment I'm not going to point example.com to the ejabberd server so that the Letsencrypt automatic renewal works even if I'm entering it with only chat.example.net url.
**Describe the solution you'd like**
I want the acme stanza from ejabberd.yml file to support custom domains so that they are the only ones to be renewed with the auto acme feature.
If no custom domains are set then do the default behaviour (try to renew everything).
Example:
```
acme:
ca_url: https://acme-v02.api.letsencrypt.org/directory
contact:
- mailto:certificate@example.net
domains:
- chat.example.net
- pubsub.chat.example.net
- conference.chat.example.net
auto: true
cert_type: rsa
```
**Describe alternatives you've considered**
I think that this should be easier to fix if ejabberd would allow us to define virtual hosts associated to domains (what ejabberd names as hosts) as it happens in webservers.
Then, you know, ejabberd would only try to renew certificates associated to every defined virtual hosts.
**Additional context**
An old stanza example without domains support would be:
```
acme:
ca_url: https://acme-v02.api.letsencrypt.org/directory
contact:
- mailto:certificate@example.net
auto: true
cert_type: rsa
```",
353,https://api.github.com/repos/processone/ejabberd/issues/3360,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3360/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3360/comments,https://api.github.com/repos/processone/ejabberd/issues/3360/events,https://github.com/processone/ejabberd/issues/3360,682488984,MDU6SXNzdWU2ODI0ODg5ODQ=,3360,/close as duplicate of #2550 ?,"{'login': 'kamalakkannan1984', 'id': 5610920, 'node_id': 'MDQ6VXNlcjU2MTA5MjA=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5610920?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/kamalakkannan1984', 'html_url': 'https://github.com/kamalakkannan1984', 'followers_url': 'https://api.github.com/users/kamalakkannan1984/followers', 'following_url': 'https://api.github.com/users/kamalakkannan1984/following{/other_user}', 'gists_url': 'https://api.github.com/users/kamalakkannan1984/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/kamalakkannan1984/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/kamalakkannan1984/subscriptions', 'organizations_url': 'https://api.github.com/users/kamalakkannan1984/orgs', 'repos_url': 'https://api.github.com/users/kamalakkannan1984/repos', 'events_url': 'https://api.github.com/users/kamalakkannan1984/events{/privacy}', 'received_events_url': 'https://api.github.com/users/kamalakkannan1984/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-20T07:24:51Z,2020-08-20T07:26:41Z,2020-08-20T07:26:41Z,NONE,,,"/close as duplicate of #2550 ?
_Originally posted by @licaon-kter in https://github.com/processone/ejabberd/issues/2562#issuecomment-411381362_",
354,https://api.github.com/repos/processone/ejabberd/issues/3359,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3359/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3359/comments,https://api.github.com/repos/processone/ejabberd/issues/3359/events,https://github.com/processone/ejabberd/issues/3359,681812299,MDU6SXNzdWU2ODE4MTIyOTk=,3359,Ejabberd Cluster file / images send not working for one node to second node,"{'login': 'kamalakkannan1984', 'id': 5610920, 'node_id': 'MDQ6VXNlcjU2MTA5MjA=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5610920?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/kamalakkannan1984', 'html_url': 'https://github.com/kamalakkannan1984', 'followers_url': 'https://api.github.com/users/kamalakkannan1984/followers', 'following_url': 'https://api.github.com/users/kamalakkannan1984/following{/other_user}', 'gists_url': 'https://api.github.com/users/kamalakkannan1984/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/kamalakkannan1984/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/kamalakkannan1984/subscriptions', 'organizations_url': 'https://api.github.com/users/kamalakkannan1984/orgs', 'repos_url': 'https://api.github.com/users/kamalakkannan1984/repos', 'events_url': 'https://api.github.com/users/kamalakkannan1984/events{/privacy}', 'received_events_url': 'https://api.github.com/users/kamalakkannan1984/received_events', 'type': 'User', 'site_admin': False}",[],open,False,"{'login': 'weiss', 'id': 71850, 'node_id': 'MDQ6VXNlcjcxODUw', 'avatar_url': 'https://avatars1.githubusercontent.com/u/71850?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/weiss', 'html_url': 'https://github.com/weiss', 'followers_url': 'https://api.github.com/users/weiss/followers', 'following_url': 'https://api.github.com/users/weiss/following{/other_user}', 'gists_url': 'https://api.github.com/users/weiss/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/weiss/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/weiss/subscriptions', 'organizations_url': 'https://api.github.com/users/weiss/orgs', 'repos_url': 'https://api.github.com/users/weiss/repos', 'events_url': 'https://api.github.com/users/weiss/events{/privacy}', 'received_events_url': 'https://api.github.com/users/weiss/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'weiss', 'id': 71850, 'node_id': 'MDQ6VXNlcjcxODUw', 'avatar_url': 'https://avatars1.githubusercontent.com/u/71850?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/weiss', 'html_url': 'https://github.com/weiss', 'followers_url': 'https://api.github.com/users/weiss/followers', 'following_url': 'https://api.github.com/users/weiss/following{/other_user}', 'gists_url': 'https://api.github.com/users/weiss/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/weiss/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/weiss/subscriptions', 'organizations_url': 'https://api.github.com/users/weiss/orgs', 'repos_url': 'https://api.github.com/users/weiss/repos', 'events_url': 'https://api.github.com/users/weiss/events{/privacy}', 'received_events_url': 'https://api.github.com/users/weiss/received_events', 'type': 'User', 'site_admin': False}]",,5,2020-08-19T12:47:17Z,2020-08-20T13:06:43Z,,NONE,,,"## Environment
- ejabberd version: 20.04
- Erlang version: `erl +V`
- OS: Linux (Debian)
- Installed from: source | distro package | official deb/rpm | official binary installer | other
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
loglevel: 4
...
```
## Errors from error.log/crash.log
2020-08-19 10:57:54.010 [warning] <0.1997.0>@mod_http_upload:process:563 Rejecting file ca427369-3812-4459-8162-ba4694f831fd.jpg from ::ffff:127.0.0.1 for 7049.xxxx.yyyyy.com: Invalid slot
Ejabberd Clustor file sharing not working for one node to second node
## Bug description
The Ejabberd cluster setup via HAProxy load balancer. In the cluster setup I have Node1(Ejabberd server 1) and Node2(Ejabberd server 2). When I upload file some time get rejected regarding invalid slot.
Our setup is HAProxy connect with two nodes(Node1 and Node2)
Note: Single Node(Ejabberd server) working fine.
Please any one share your ideas and feedback.
",
355,https://api.github.com/repos/processone/ejabberd/issues/3358,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3358/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3358/comments,https://api.github.com/repos/processone/ejabberd/issues/3358/events,https://github.com/processone/ejabberd/issues/3358,679541983,MDU6SXNzdWU2Nzk1NDE5ODM=,3358,sudden error,"{'login': 'shazvan275', 'id': 24987484, 'node_id': 'MDQ6VXNlcjI0OTg3NDg0', 'avatar_url': 'https://avatars0.githubusercontent.com/u/24987484?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/shazvan275', 'html_url': 'https://github.com/shazvan275', 'followers_url': 'https://api.github.com/users/shazvan275/followers', 'following_url': 'https://api.github.com/users/shazvan275/following{/other_user}', 'gists_url': 'https://api.github.com/users/shazvan275/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/shazvan275/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/shazvan275/subscriptions', 'organizations_url': 'https://api.github.com/users/shazvan275/orgs', 'repos_url': 'https://api.github.com/users/shazvan275/repos', 'events_url': 'https://api.github.com/users/shazvan275/events{/privacy}', 'received_events_url': 'https://api.github.com/users/shazvan275/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,4,2020-08-15T10:29:06Z,2020-08-18T16:56:57Z,,NONE,,,"```
Error in process <0.455.0> on node ejabberd@localhost with exit value:
{{case_clause,255},
[{p1_mysql_conn,greeting,2,[{file,""src/p1_mysql_conn.erl""},{line,518}]},
{p1_mysql_conn,mysql_init,6,[{file,""src/p1_mysql_conn.erl""},{line,440}]},
{p1_mysql_conn,init,9,[{file,""src/p1_mysql_conn.erl""},{line,335}]}]}
```
i got this error.. ",
356,https://api.github.com/repos/processone/ejabberd/issues/3357,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3357/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3357/comments,https://api.github.com/repos/processone/ejabberd/issues/3357/events,https://github.com/processone/ejabberd/issues/3357,678492958,MDU6SXNzdWU2Nzg0OTI5NTg=,3357,Pubsub: Implement #expire_item,"{'login': 'lovetox', 'id': 8661218, 'node_id': 'MDQ6VXNlcjg2NjEyMTg=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/8661218?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/lovetox', 'html_url': 'https://github.com/lovetox', 'followers_url': 'https://api.github.com/users/lovetox/followers', 'following_url': 'https://api.github.com/users/lovetox/following{/other_user}', 'gists_url': 'https://api.github.com/users/lovetox/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/lovetox/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/lovetox/subscriptions', 'organizations_url': 'https://api.github.com/users/lovetox/orgs', 'repos_url': 'https://api.github.com/users/lovetox/repos', 'events_url': 'https://api.github.com/users/lovetox/events{/privacy}', 'received_events_url': 'https://api.github.com/users/lovetox/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179040816, 'node_id': 'MDU6TGFiZWwxNzkwNDA4MTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Pubsub', 'name': 'Component:Pubsub', 'color': 'fad8c7', 'default': False, 'description': None}, {'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",open,False,,[],,0,2020-08-13T14:41:56Z,2020-08-13T16:53:33Z,,NONE,,,"Feature:
Let client set a time in seconds when a pubsub item should expire
see XEP-0060
Motivation:
This is nice for user data like User Activity / User Mood / User Tune, or even in the future a Status Message XEP via PEP.
If the user sets his Activity or Mood, the client wants to expire it after some time. Right now we remove the items when going offline. But thats not optimal as there could be other clients online.
Its considerable work to check if an item in a multi client setup with various connection disruptions is still valid or current, a simple ""This expires in 24 hours"" would be perfect.
",
357,https://api.github.com/repos/processone/ejabberd/issues/3356,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3356/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3356/comments,https://api.github.com/repos/processone/ejabberd/issues/3356/events,https://github.com/processone/ejabberd/pull/3356,677050715,MDExOlB1bGxSZXF1ZXN0NDY2MjQxNTM2,3356,avoid preparing statements for pgsql,"{'login': 'oxpa', 'id': 1932978, 'node_id': 'MDQ6VXNlcjE5MzI5Nzg=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1932978?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/oxpa', 'html_url': 'https://github.com/oxpa', 'followers_url': 'https://api.github.com/users/oxpa/followers', 'following_url': 'https://api.github.com/users/oxpa/following{/other_user}', 'gists_url': 'https://api.github.com/users/oxpa/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/oxpa/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/oxpa/subscriptions', 'organizations_url': 'https://api.github.com/users/oxpa/orgs', 'repos_url': 'https://api.github.com/users/oxpa/repos', 'events_url': 'https://api.github.com/users/oxpa/events{/privacy}', 'received_events_url': 'https://api.github.com/users/oxpa/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,2,2020-08-11T17:15:57Z,2020-08-11T17:37:03Z,,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3356', 'html_url': 'https://github.com/processone/ejabberd/pull/3356', 'diff_url': 'https://github.com/processone/ejabberd/pull/3356.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3356.patch'}","When using with pgbouncer or other Postgresql balancer ejabberd doesn't behave well as it uses anonymous prepared statements which are valid for a single connection only.
The proposed change removes prepared statements from ejabberd and instead relies on p1_pgsql to prepare and execute statement (see p1_pgsql/pull/5).
This change also requires new pq_pgsql version, but I can't change rebar config as my pull request to pgsql is not yet accepted (at the time of me writing this message).
I'm not 100% sure if this will work properly in all cases, but I'm willing to fix any mistakes I left behind.",
358,https://api.github.com/repos/processone/ejabberd/issues/3355,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3355/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3355/comments,https://api.github.com/repos/processone/ejabberd/issues/3355/events,https://github.com/processone/ejabberd/issues/3355,675515198,MDU6SXNzdWU2NzU1MTUxOTg=,3355,Can't grant privilages to access webadmin for just one virtual host,"{'login': 'JuniorJPDJ', 'id': 7334549, 'node_id': 'MDQ6VXNlcjczMzQ1NDk=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/7334549?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JuniorJPDJ', 'html_url': 'https://github.com/JuniorJPDJ', 'followers_url': 'https://api.github.com/users/JuniorJPDJ/followers', 'following_url': 'https://api.github.com/users/JuniorJPDJ/following{/other_user}', 'gists_url': 'https://api.github.com/users/JuniorJPDJ/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JuniorJPDJ/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JuniorJPDJ/subscriptions', 'organizations_url': 'https://api.github.com/users/JuniorJPDJ/orgs', 'repos_url': 'https://api.github.com/users/JuniorJPDJ/repos', 'events_url': 'https://api.github.com/users/JuniorJPDJ/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JuniorJPDJ/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179679118, 'node_id': 'MDU6TGFiZWwxNzk2NzkxMTg=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Admin%20Tools', 'name': 'Component:Admin Tools', 'color': 'f7c6c7', 'default': False, 'description': None}]",closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/11', 'html_url': 'https://github.com/processone/ejabberd/milestone/11', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/11/labels', 'id': 1437111, 'node_id': 'MDk6TWlsZXN0b25lMTQzNzExMQ==', 'number': 11, 'title': 'ejabberd 20.xx', 'description': '', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 35, 'closed_issues': 4, 'state': 'open', 'created_at': '2015-12-01T10:25:26Z', 'updated_at': '2020-09-03T18:38:17Z', 'due_on': None, 'closed_at': None}",2,2020-08-08T12:04:49Z,2020-08-11T05:20:02Z,2020-08-10T19:19:45Z,NONE,,,"## Environment
- ejabberd version: 20.07 tag
- Installed from: official docker image
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
acl:
local:
user_regexp: """"
loopback:
ip:
- 127.0.0.0/8
- ::1/128
- ::FFFF:127.0.0.1/128
admin:
user:
- juniorjpdj@juniorjpdj.pl
# - marcin@marcin.co
append_host_config:
# same for host_config: but it breaks also other things
""marcin.co"":
acl:
admin:
user:
- marcin@marcin.co
access_rules:
local:
allow: local
c2s:
deny: blocked
allow: all
announce:
allow: admin
configure:
allow: admin
muc_create:
allow: local
pubsub_createnode:
allow: local
trusted_network:
allow: loopback
```
## Bug description
I want to give my friend webadmin access for his virtualhost.
When I add him just for his virtualhost (like in config above) he has his vhost on list of vhosts but his webadmin is blank when he clicks on it and he lacks left menu.
His web panel:
![image](https://user-images.githubusercontent.com/7334549/89710018-eb4d3100-d97f-11ea-9c66-836c77b735be.png)
![image](https://user-images.githubusercontent.com/7334549/89710021-f011e500-d97f-11ea-828e-7acbf5db6e16.png)
My web panel:
![image](https://user-images.githubusercontent.com/7334549/89710032-0455e200-d980-11ea-84ac-6c05cb28711f.png)
![image](https://user-images.githubusercontent.com/7334549/89710036-0881ff80-d980-11ea-8482-768585fe6391.png)
",
359,https://api.github.com/repos/processone/ejabberd/issues/3354,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3354/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3354/comments,https://api.github.com/repos/processone/ejabberd/issues/3354/events,https://github.com/processone/ejabberd/issues/3354,675394957,MDU6SXNzdWU2NzUzOTQ5NTc=,3354,Unable to build ejabberd as a project dependency,"{'login': 'slezakattack', 'id': 1261638, 'node_id': 'MDQ6VXNlcjEyNjE2Mzg=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1261638?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/slezakattack', 'html_url': 'https://github.com/slezakattack', 'followers_url': 'https://api.github.com/users/slezakattack/followers', 'following_url': 'https://api.github.com/users/slezakattack/following{/other_user}', 'gists_url': 'https://api.github.com/users/slezakattack/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/slezakattack/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/slezakattack/subscriptions', 'organizations_url': 'https://api.github.com/users/slezakattack/orgs', 'repos_url': 'https://api.github.com/users/slezakattack/repos', 'events_url': 'https://api.github.com/users/slezakattack/events{/privacy}', 'received_events_url': 'https://api.github.com/users/slezakattack/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-08-08T01:46:23Z,2020-08-11T08:11:09Z,2020-08-11T08:11:09Z,NONE,,,"## Environment
- ejabberd version: 20.07
- Erlang version: OTP 21 `Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.3.5.13`
- OS: Mac OSX
- Installed from: declared as dependency in erlang project.
## Bug description
My Erlang project is using rebar3 and pulling ejabberd as a dependency (I've tried both as a hex package and a git dependency). The hex package seems to only be available for Elixir. Is there any planned work to support this for Erlang?
Pulling it as a git dependency instead gives this error:
`===> Error building application ejabberd:
No project builder is configured for type mix`
",
360,https://api.github.com/repos/processone/ejabberd/issues/3353,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3353/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3353/comments,https://api.github.com/repos/processone/ejabberd/issues/3353/events,https://github.com/processone/ejabberd/issues/3353,674121329,MDU6SXNzdWU2NzQxMjEzMjk=,3353,create_room hook isn't triggered when a room is created by an available presence,"{'login': 'Freyskeyd', 'id': 1394604, 'node_id': 'MDQ6VXNlcjEzOTQ2MDQ=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1394604?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Freyskeyd', 'html_url': 'https://github.com/Freyskeyd', 'followers_url': 'https://api.github.com/users/Freyskeyd/followers', 'following_url': 'https://api.github.com/users/Freyskeyd/following{/other_user}', 'gists_url': 'https://api.github.com/users/Freyskeyd/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Freyskeyd/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Freyskeyd/subscriptions', 'organizations_url': 'https://api.github.com/users/Freyskeyd/orgs', 'repos_url': 'https://api.github.com/users/Freyskeyd/repos', 'events_url': 'https://api.github.com/users/Freyskeyd/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Freyskeyd/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,5,2020-08-06T08:21:09Z,2020-08-28T12:54:42Z,,NONE,,,"## Environment
- ejabberd version: 20.04
- Erlang version: `10.3 otp 21`
- OS: Linux (Debian)
- Installed from: source
## Bug description
The `create_room` hook isn't triggered when a room is created by an `available` presence received.
It seems that this hook is only available when creating room from ctl, not when people are actually joining the room.
The hook is triggered here: https://github.com/processone/ejabberd/blob/master/src/mod_muc.erl#L392
The room creation by presence is triggered here: https://github.com/processone/ejabberd/blob/master/src/mod_muc.erl#L549
I tagged it as bug but maybe it's done by pupose.
Let me know if you want more context!",
361,https://api.github.com/repos/processone/ejabberd/issues/3352,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3352/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3352/comments,https://api.github.com/repos/processone/ejabberd/issues/3352/events,https://github.com/processone/ejabberd/issues/3352,674080574,MDU6SXNzdWU2NzQwODA1NzQ=,3352,Ejabberd cluster going down,"{'login': 'biddwan09', 'id': 21155410, 'node_id': 'MDQ6VXNlcjIxMTU1NDEw', 'avatar_url': 'https://avatars0.githubusercontent.com/u/21155410?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/biddwan09', 'html_url': 'https://github.com/biddwan09', 'followers_url': 'https://api.github.com/users/biddwan09/followers', 'following_url': 'https://api.github.com/users/biddwan09/following{/other_user}', 'gists_url': 'https://api.github.com/users/biddwan09/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/biddwan09/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/biddwan09/subscriptions', 'organizations_url': 'https://api.github.com/users/biddwan09/orgs', 'repos_url': 'https://api.github.com/users/biddwan09/repos', 'events_url': 'https://api.github.com/users/biddwan09/events{/privacy}', 'received_events_url': 'https://api.github.com/users/biddwan09/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,4,2020-08-06T07:15:50Z,2020-08-18T15:13:09Z,,NONE,,,"We run ejabberd 19.05 in our cluster and it is going down frequently throwing the below error continuously. We have been restarting the server lately to fix this error. Any solution to this would be highly appreciated.
```
020-08-06 06:34:35 =SUPERVISOR REPORT====
Supervisor: {local,ejabberd_http_sup}
Context: child_terminated
Reason: killed
Offender: [{pid,<0.27515.1575>},{id,undefined},{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},{shutdown,1000},{child_type,worker}]
2020-08-06 06:34:57 =SUPERVISOR REPORT====
Supervisor: {local,ejabberd_http_sup}
Context: child_terminated
Reason: killed
Offender: [{pid,<0.22434.1548>},{id,undefined},{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},{shutdown,1000},{child_type,worker}]
```",
362,https://api.github.com/repos/processone/ejabberd/issues/3351,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3351/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3351/comments,https://api.github.com/repos/processone/ejabberd/issues/3351/events,https://github.com/processone/ejabberd/issues/3351,671912742,MDU6SXNzdWU2NzE5MTI3NDI=,3351,Some Rooms crash but still PID in menisa,"{'login': 'suf4dev', 'id': 18487951, 'node_id': 'MDQ6VXNlcjE4NDg3OTUx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/18487951?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/suf4dev', 'html_url': 'https://github.com/suf4dev', 'followers_url': 'https://api.github.com/users/suf4dev/followers', 'following_url': 'https://api.github.com/users/suf4dev/following{/other_user}', 'gists_url': 'https://api.github.com/users/suf4dev/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/suf4dev/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/suf4dev/subscriptions', 'organizations_url': 'https://api.github.com/users/suf4dev/orgs', 'repos_url': 'https://api.github.com/users/suf4dev/repos', 'events_url': 'https://api.github.com/users/suf4dev/events{/privacy}', 'received_events_url': 'https://api.github.com/users/suf4dev/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,3,2020-08-03T08:51:20Z,2020-08-05T14:18:35Z,,NONE,,,"## Environment
- ejabberd version: 20.04 , 20.07
- Erlang version: `OTP 21.2.7 - 23.0.3`
- OS: Linux (Centos8)
- Installed from: source
## Errors from error.log/crash.log
2020-08-03 02:23:24 =SUPERVISOR REPORT====
Supervisor: {local,'mod_muc_room_sup_chat-server1.net'}
Context: child_terminated
Reason: killed
Offender: [{pid,<0.1148.0>},{id,undefined},{mfargs,{mod_muc_room,start_link,undefined}},{restart_type,temporary},{shutdown,5000},{child_type,worker}]
2020-08-03 02:27:25 =SUPERVISOR REPORT====
Supervisor: {local,'mod_muc_room_sup_chat-server1.net'}
Context: child_terminated
Reason: killed
Offender: [{pid,<0.656.0>},{id,undefined},{mfargs,{mod_muc_room,start_link,undefined}},{restart_type,temporary},{shutdown,5000},{child_type,worker}]
2020-08-03 02:28:55 =SUPERVISOR REPORT====
Supervisor: {local,'mod_muc_room_sup_chat-server1.net'}
Context: child_terminated
Reason: killed
Offender: [{pid,<0.658.0>},{id,undefined},{mfargs,{mod_muc_room,start_link,undefined}},{restart_type,temporary},{shutdown,5000},{child_type,worker}]
2020-08-03 02:32:26 =SUPERVISOR REPORT====
Supervisor: {local,'mod_muc_room_sup_chat-server1.net'}
Context: child_terminated
Reason: killed
Offender: [{pid,<0.659.0>},{id,undefined},{mfargs,{mod_muc_room,start_link,undefined}},{restart_type,temporary},{shutdown,5000},{child_type,worker}]
2020-08-03 02:40:58 =SUPERVISOR REPORT====
Supervisor: {local,'mod_muc_room_sup_chat-server1.net'}
Context: child_terminated
Reason: killed
Offender: [{pid,<0.959.0>},{id,undefined},{mfargs,{mod_muc_room,start_link,undefined}},{restart_type,temporary},{shutdown,5000},{child_type,worker}]
2020-08-03 02:42:29 =SUPERVISOR REPORT====
Supervisor: {local,'mod_muc_room_sup_chat-server1.net'}
Context: child_terminated
Reason: killed
Offender: [{pid,<0.709.0>},{id,undefined},{mfargs,{mod_muc_room,start_link,undefined}},{restart_type,temporary},{shutdown,5000},{child_type,worker}]
2020-08-03 02:54:02 =SUPERVISOR REPORT====
Supervisor: {local,'mod_muc_room_sup_chat-server1.net'}
Context: child_terminated
Reason: killed
Offender: [{pid,<0.667.0>},{id,undefined},{mfargs,{mod_muc_room,start_link,undefined}},{restart_type,temporary},{shutdown,5000},{child_type,worker}]
2020-08-03 03:27:40 =SUPERVISOR REPORT====
Supervisor: {local,'mod_muc_room_sup_chat-server1.net'}
Context: child_terminated
Reason: killed
Offender: [{pid,<0.1238.0>},{id,undefined},{mfargs,{mod_muc_room,start_link,undefined}},{restart_type,temporary},{shutdown,5000},{child_type,worker}]
2020-08-03 04:05:48 =SUPERVISOR REPORT====
Supervisor: {local,'mod_muc_room_sup_chat-server1.net'}
Context: child_terminated
Reason: killed
Offender: [{pid,<0.1428.0>},{id,undefined},{mfargs,{mod_muc_room,start_link,undefined}},{restart_type,temporary},{shutdown,5000},{child_type,worker}]
2020-08-03 04:14:20 =SUPERVISOR REPORT====
Supervisor: {local,'mod_muc_room_sup_chat-server1.net'}
Context: child_terminated
Reason: killed
Offender: [{pid,<0.1459.0>},{id,undefined},{mfargs,{mod_muc_room,start_link,undefined}},{restart_type,temporary},{shutdown,5000},{child_type,worker}]
2020-08-03 06:04:49 =SUPERVISOR REPORT====
Supervisor: {local,'mod_muc_room_sup_chat-server1.net'}
Context: child_terminated
Reason: killed
Offender: [{pid,<0.1077.0>},{id,undefined},{mfargs,{mod_muc_room,start_link,undefined}},{restart_type,temporary},{shutdown,5000},{child_type,worker}]
2020-08-03 06:04:49 =SUPERVISOR REPORT====
Supervisor: {local,'mod_muc_room_sup_chat-server1.net'}
Context: child_terminated
Reason: killed
Offender: [{pid,<0.1306.0>},{id,undefined},{mfargs,{mod_muc_room,start_link,undefined}},{restart_type,temporary},{shutdown,5000},{child_type,worker}]
2020-08-03 06:35:28 =SUPERVISOR REPORT====
Supervisor: {local,'mod_muc_room_sup_chat-server1.net'}
Context: child_terminated
Reason: killed
Offender: [{pid,<0.679.0>},{id,undefined},{mfargs,{mod_muc_room,start_link,undefined}},{restart_type,temporary},{shutdown,5000},{child_type,worker}]
2020-08-03 06:50:32 =SUPERVISOR REPORT====
Supervisor: {local,'mod_muc_room_sup_chat-server1.net'}
Context: child_terminated
Reason: killed
Offender: [{pid,<0.663.0>},{id,undefined},{mfargs,{mod_muc_room,start_link,undefined}},{restart_type,temporary},{shutdown,5000},{child_type,worker}]
2020-08-03 07:05:36 =SUPERVISOR REPORT====
Supervisor: {local,'mod_muc_room_sup_chat-server1.net'}
Context: child_terminated
Reason: killed
Offender: [{pid,<0.666.0>},{id,undefined},{mfargs,{mod_muc_room,start_link,undefined}},{restart_type,temporary},{shutdown,5000},{child_type,worker}]
2020-08-03 07:13:09 =SUPERVISOR REPORT====
Supervisor: {local,'mod_muc_room_sup_chat-server1.net'}
Context: child_terminated
Reason: killed
Offender: [{pid,<0.705.0>},{id,undefined},{mfargs,{mod_muc_room,start_link,undefined}},{restart_type,temporary},{shutdown,5000},{child_type,worker}]
## Bug description
Hello,
When trying to get Config of the room it returns {error,not_found} but the room PID stills in Menisa . The problem occurs at some point when some flooders make the room crash. I have been struggling from a week but I did not find any solution. I have tried OTP 21.2.7 and OTP 23.0.3 . Now most of Rooms dissapeard from list but stills in Mysql database. I have to restart the whole server for rooms to show again but after sometime crashes some rooms again",
363,https://api.github.com/repos/processone/ejabberd/issues/3350,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3350/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3350/comments,https://api.github.com/repos/processone/ejabberd/issues/3350/events,https://github.com/processone/ejabberd/issues/3350,671053592,MDU6SXNzdWU2NzEwNTM1OTI=,3350,LDAP auth no longer working after upgrade to Ejabberd Docker 20.07 ,"{'login': 'budbay', 'id': 25737221, 'node_id': 'MDQ6VXNlcjI1NzM3MjIx', 'avatar_url': 'https://avatars2.githubusercontent.com/u/25737221?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/budbay', 'html_url': 'https://github.com/budbay', 'followers_url': 'https://api.github.com/users/budbay/followers', 'following_url': 'https://api.github.com/users/budbay/following{/other_user}', 'gists_url': 'https://api.github.com/users/budbay/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/budbay/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/budbay/subscriptions', 'organizations_url': 'https://api.github.com/users/budbay/orgs', 'repos_url': 'https://api.github.com/users/budbay/repos', 'events_url': 'https://api.github.com/users/budbay/events{/privacy}', 'received_events_url': 'https://api.github.com/users/budbay/received_events', 'type': 'User', 'site_admin': False}","[{'id': 1854749288, 'node_id': 'MDU6TGFiZWwxODU0NzQ5Mjg4', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Packaging:Docker', 'name': 'Packaging:Docker', 'color': 'f7ef94', 'default': False, 'description': ''}]",closed,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/11', 'html_url': 'https://github.com/processone/ejabberd/milestone/11', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/11/labels', 'id': 1437111, 'node_id': 'MDk6TWlsZXN0b25lMTQzNzExMQ==', 'number': 11, 'title': 'ejabberd 20.xx', 'description': '', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 35, 'closed_issues': 4, 'state': 'open', 'created_at': '2015-12-01T10:25:26Z', 'updated_at': '2020-09-03T18:38:17Z', 'due_on': None, 'closed_at': None}",5,2020-08-01T17:38:28Z,2020-08-10T10:41:39Z,2020-08-10T10:41:39Z,NONE,,,"### Issue
After upgrading Ejabberd Docker container from 20.04 to 20.07 LDAP has completely stopped working, reverting back to 20.04 everything works normally. No changes have been made to configuration, and no other errors or warnings show up in logs other than below. Have been running and upgrading Ejabberd docker since 19.xx version without issues.
### Environment
- Ejabberd 20.07 Docker Container (using tag: latest)
- OS: Ubuntu 18.04
- Docker installed from repos and up to date
### LDAP Config
auth_method: [ldap]
ldap_servers: [IP]
ldap_encrypt: none
ldap_port: 389
ldap_base: ""dc=example,dc=com""
### Error from log
crasher:
initial call: ejabberd_auth_ldap:init/1
pid: <0.645.0>
registered_name: []
exception error: undefined function pg:start_link/0
in function eldap_pool:start_link/7 (src/eldap_pool.erl, line 69)
in call from ejabberd_auth_ldap:init/1 (src/ejabberd_auth_ldap.erl, line 103)
in call from gen_server:init_it/2 (gen_server.erl, line 374)
in call from gen_server:init_it/6 (gen_server.erl, line 342)
ancestors: [ejabberd_backend_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.537.0>]
dictionary: []
trap_exit: true
status: running
heap_size: 610
stack_size: 27
reductions: 16544
neighbours:
",
364,https://api.github.com/repos/processone/ejabberd/issues/3349,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3349/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3349/comments,https://api.github.com/repos/processone/ejabberd/issues/3349/events,https://github.com/processone/ejabberd/issues/3349,670366822,MDU6SXNzdWU2NzAzNjY4MjI=,3349,Failed to open socket at :7777 for mod_proxy65_stream: can't assign requested address,"{'login': 'xdnroot', 'id': 47464217, 'node_id': 'MDQ6VXNlcjQ3NDY0MjE3', 'avatar_url': 'https://avatars2.githubusercontent.com/u/47464217?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/xdnroot', 'html_url': 'https://github.com/xdnroot', 'followers_url': 'https://api.github.com/users/xdnroot/followers', 'following_url': 'https://api.github.com/users/xdnroot/following{/other_user}', 'gists_url': 'https://api.github.com/users/xdnroot/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/xdnroot/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/xdnroot/subscriptions', 'organizations_url': 'https://api.github.com/users/xdnroot/orgs', 'repos_url': 'https://api.github.com/users/xdnroot/repos', 'events_url': 'https://api.github.com/users/xdnroot/events{/privacy}', 'received_events_url': 'https://api.github.com/users/xdnroot/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,4,2020-08-01T00:16:36Z,2020-08-02T00:36:28Z,2020-08-02T00:36:28Z,NONE,,,"## Environment
- ejabberd version: 20.07
- Erlang version: `erl +V`
- OS: Linux (Centos 8.2)
- Installed from: official binary installer
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
hosts:
- ""mydomain.com""
host_config:
mydomain.com:
auth_method: sql
default_db: sql
auth_password_format: scram
sql_type: mysql
sql_server: ""localhost""
sql_database: ""database""
sql_username: ""user""
sql_password: ""password""
sql_port: 3306
loglevel: 4
log_rotate_size: 10485760
log_rotate_count: 1
certfiles:
- ""/home/admin/ejabberd-20.07/conf/server.pem""
ca_file: ""/home/admin/ejabberd-20.07/conf/cacert.pem""
listen:
-
port: 5222
ip: ""0.0.0.0""
module: ejabberd_c2s
max_stanza_size: 262144
shaper: c2s_shaper
access: c2s
starttls_required: true
-
port: 5269
ip: ""0.0.0.0""
module: ejabberd_s2s_in
max_stanza_size: 524288
-
port: 11443
ip: ""0.0.0.0""
module: ejabberd_http
tls: true
request_handlers:
""/admin"": ejabberd_web_admin
-
port: 18080
ip: ""127.0.0.1""
module: ejabberd_http
request_handlers:
""/admin"": ejabberd_web_admin
-
port: 1883
ip: ""0.0.0.0""
module: mod_mqtt
backlog: 1000
s2s_use_starttls: required
acl:
local:
user_regexp: """"
loopback:
ip:
- 127.0.0.0/8
- ::1/128
- ::FFFF:127.0.0.1/128
admin:
user:
- ""admin@mydomain.com""
access_rules:
local:
allow: local
c2s:
deny: blocked
allow: all
announce:
allow: admin
configure:
allow: admin
muc_create:
allow: local
pubsub_createnode:
allow: local
trusted_network:
allow: loopback
api_permissions:
""console commands"":
from:
- ejabberd_ctl
who: all
what: ""*""
""admin access"":
who:
access:
allow:
acl: loopback
acl: admin
oauth:
scope: ""ejabberd:admin""
access:
allow:
acl: loopback
acl: admin
what:
- ""*""
- ""!stop""
- ""!start""
""public commands"":
who:
ip: 127.0.0.1/8
what:
- status
- connected_users_number
shaper:
normal: 1000
fast: 50000
shaper_rules:
max_user_sessions: 10
max_user_offline_messages:
5000: admin
100: all
c2s_shaper:
none: admin
normal: all
s2s_shaper: fast
max_fsm_queue: 10000
acme:
contact: ""mailto:admin@mydomain.com""
ca_url: ""https://acme-v01.api.letsencrypt.org""
modules:
mod_adhoc: {}
mod_admin_extra: {}
mod_announce:
access: announce
mod_avatar: {}
mod_blocking: {}
mod_bosh: {}
mod_caps: {}
mod_carboncopy: {}
mod_client_state: {}
mod_configure: {}
mod_disco: {}
mod_fail2ban: {}
mod_http_api: {}
mod_http_upload:
put_url: https://@HOST@:5443/upload
mod_last: {}
mod_mam:
assume_mam_usage: true
default: never
mod_mqtt: {}
mod_muc:
access:
- allow
access_admin:
- allow: admin
access_create: muc_create
access_persistent: muc_create
access_mam:
- allow
default_room_options:
allow_subscription: true # enable MucSub
mam: false
mod_muc_admin: {}
mod_offline:
access_max_user_messages: max_user_offline_messages
mod_ping: {}
mod_privacy: {}
mod_private: {}
mod_proxy65:
access: local
max_connections: 5
mod_pubsub:
access_createnode: pubsub_createnode
plugins:
- flat
- pep
force_node_config:
storage:bookmarks:
access_model: whitelist
mod_push: {}
mod_push_keepalive: {}
mod_register:
ip_access: trusted_network
mod_roster:
versioning: true
mod_s2s_dialback: {}
mod_shared_roster: {}
mod_stream_mgmt:
resend_on_timeout: if_offline
mod_vcard: {}
mod_vcard_xupdate: {}
mod_version:
show_os: false
...
```
## Errors from error.log
```
2020-08-01 07:56:01.963 [error] <0.568.0> gen_server <0.568.0> terminated with reason: timeout
2020-08-01 07:56:01.963 [error] <0.568.0> CRASH REPORT Process <0.568.0> with 0 neighbours exited with reason: timeout in gen_server:handle_msg/6 line 704
2020-08-01 07:56:01.963 [error] <0.547.0> Supervisor odbc_sup had child [] started with {odbc,start_link_sup,undefined} at <0.568.0> exit with reason timeout in context child_terminated
2020-08-01 08:01:53.222 [error] <0.516.0>@ejabberd_listener:report_socket_error:470 Failed to open socket at 149.129.255.241:7777 for mod_proxy65_stream: can't assign requested address
2020-08-01 08:01:53.223 [critical] <0.355.0>@gen_mod:start_module:169 Failed to start module mod_proxy65:
{error,
{eaddrnotavail,
{child,undefined,
{7777,{10.10.10.10},tcp},
{ejabberd_listener,start,
[{7777,{10.10.10.10},tcp},
mod_proxy65_stream,
#{accept_interval => 0,access => all,auth_type => anonymous,
backlog => 5,host => <<""proxy.mydomain.com"">>,
hostname => undefined,hosts => [],
ip => {10,10,10,10},
max_connections => infinity,
name => <<""File Transfer Proxy"">>,port => 7777,
ram_db_type => mnesia,recbuf => 65536,
server_host => <<""mydomain.com"">>,shaper => none,
sndbuf => 65536,supervisor => true,transport => tcp,
use_proxy_protocol => false,vcard => undefined}]},
transient,brutal_kill,worker,
[ejabberd_listener]}}}
2020-08-01 08:01:53.223 [critical] <0.355.0>@gen_mod:maybe_halt_ejabberd:256 ejabberd initialization was aborted because a module start failed.
```
## Problem description
I don't know this is a bug or error configuration. I just installed a new ejabberd 20.0 on Centos 8. Previously, I installed version 20.04 with the same configuration and there were no errors. I don't know why mod_proxy65 could not started? Even there is no firewall (selinux, firewall, iptables are disabled).
",
365,https://api.github.com/repos/processone/ejabberd/issues/3348,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3348/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3348/comments,https://api.github.com/repos/processone/ejabberd/issues/3348/events,https://github.com/processone/ejabberd/issues/3348,669769804,MDU6SXNzdWU2Njk3Njk4MDQ=,3348,Connection between LDAP server and ejabberd can't be established,"{'login': 'adcpcat', 'id': 69035571, 'node_id': 'MDQ6VXNlcjY5MDM1NTcx', 'avatar_url': 'https://avatars3.githubusercontent.com/u/69035571?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/adcpcat', 'html_url': 'https://github.com/adcpcat', 'followers_url': 'https://api.github.com/users/adcpcat/followers', 'following_url': 'https://api.github.com/users/adcpcat/following{/other_user}', 'gists_url': 'https://api.github.com/users/adcpcat/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/adcpcat/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/adcpcat/subscriptions', 'organizations_url': 'https://api.github.com/users/adcpcat/orgs', 'repos_url': 'https://api.github.com/users/adcpcat/repos', 'events_url': 'https://api.github.com/users/adcpcat/events{/privacy}', 'received_events_url': 'https://api.github.com/users/adcpcat/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,3,2020-07-31T12:33:18Z,2020-08-03T14:02:39Z,,NONE,,,"## Environment
- ejabberd version: 18.12.1-2
- Erlang version: Erlang (SMP,ASYNC_THREADS) (BEAM) emulator version 10.2.4
- OS: Debian 10.4
- Installed from: distro package
- OpenSSL: OpenSSL 1.1.1d
## Configuration
```yaml
auth_method: [ldap]
ldap_servers:
- ""[redacted]""
ldap_port: 636
ldap_encrypt: tls
ldap_base: ""[redacted]""
ldap_tls_verify: false
```
## Errors from error.log/crash.log
```
2020-07-22 14:01:19 =ERROR REPORT====
** State machine 'eldap_#Ref<0.4073649347.1289224194.14161>' terminating
** Last event in was timeout
** When State == connecting
** Data == {eldap,3,[<<""[ldap-server]"">>],undefined,636,gen_tcp,tls,[],undefined,<<>>,<<>>,0,#Ref<0.4073649347.1289224194.14164>,{dict,0,16,16,8,80,48,{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]},{{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]}}},{[],[]}}
** Reason for termination =
** {function_clause,[{tls_record,protocol_version,['tls1.2'],[{file,""tls_record.erl""},{line,222}]},{lists,map,2,[{file,""lists.erl""},{line,1239}]},{lists,map,2,[{file,""lists.erl""},{line,1239}]},{tls_record,supported_protocol_versions,0,[{file,""tls_record.erl""},{line,321}]},{ssl,handle_options,3,[{file,""ssl.erl""},{line,906}]},{ssl,connect,4,[{file,""ssl.erl""},{line,122}]},{eldap,do_connect,5,[{file,""src/eldap.erl""},{line,1141}]},{eldap,connect_bind,1,[{file,""src/eldap.erl""},{line,1058}]}]}
2020-07-22 14:01:19 =ERROR REPORT====
** State machine 'eldap_#Ref<0.4073649347.1289224194.14181>' terminating
** Last event in was timeout
** When State == connecting
** Data == {eldap,3,[<<""[ldap-server]"">>],undefined,636,gen_tcp,tls,[],undefined,<<>>,<<>>,0,#Ref<0.4073649347.1289224194.14182>,{dict,0,16,16,8,80,48,{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]},{{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]}}},{[],[]}}
** Reason for termination =
** {function_clause,[{tls_record,protocol_version,['tls1.2'],[{file,""tls_record.erl""},{line,222}]},{lists,map,2,[{file,""lists.erl""},{line,1239}]},{lists,map,2,[{file,""lists.erl""},{line,1239}]},{tls_record,supported_protocol_versions,0,[{file,""tls_record.erl""},{line,321}]},{ssl,handle_options,3,[{file,""ssl.erl""},{line,906}]},{ssl,connect,4,[{file,""ssl.erl""},{line,122}]},{eldap,do_connect,5,[{file,""src/eldap.erl""},{line,1141}]},{eldap,connect_bind,1,[{file,""src/eldap.erl""},{line,1058}]}]}
2020-07-22 14:01:19 =CRASH REPORT====
crasher:
initial call: eldap:init/1
pid: <0.470.0>
registered_name: 'eldap_#Ref<0.4073649347.1289224194.14161>'
exception exit: {{function_clause,[{tls_record,protocol_version,['tls1.2'],[{file,""tls_record.erl""},{line,222}]},{lists,map,2,[{file,""lists.erl""},{line,1239}]},{lists,map,2,[{file,""lists.erl""},{line,1239}]},{tls_record,supported_protocol_versions,0,[{file,""tls_record.erl""},{line,321}]},{ssl,handle_options,3,[{file,""ssl.erl""},{line,906}]},{ssl,connect,4,[{file,""ssl.erl""},{line,122}]},{eldap,do_connect,5,[{file,""src/eldap.erl""},{line,1141}]},{eldap,connect_bind,1,[{file,""src/eldap.erl""},{line,1058}]}]},[{p1_fsm,terminate,8,[{file,""src/p1_fsm.erl""},{line,760}]},{proc_lib,init_p_do_apply,3,[{file,""proc_lib.erl""},{line,249}]}]}
ancestors: ['ejabberd_auth_ldap_[redacted]',ejabberd_backend_sup,ejabberd_sup,<0.82.0>]
message_queue_len: 0
messages: []
links: [<0.469.0>]
dictionary: [{'$internal_queue_len',0}]
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 2827
neighbours:
2020-07-22 14:01:19 =CRASH REPORT====
crasher:
initial call: eldap:init/1
pid: <0.471.0>
registered_name: 'eldap_#Ref<0.4073649347.1289224194.14181>'
exception exit: {{function_clause,[{tls_record,protocol_version,['tls1.2'],[{file,""tls_record.erl""},{line,222}]},{lists,map,2,[{file,""lists.erl""},{line,1239}]},{lists,map,2,[{file,""lists.erl""},{line,1239}]},{tls_record,supported_protocol_versions,0,[{file,""tls_record.erl""},{line,321}]},{ssl,handle_options,3,[{file,""ssl.erl""},{line,906}]},{ssl,connect,4,[{file,""ssl.erl""},{line,122}]},{eldap,do_connect,5,[{file,""src/eldap.erl""},{line,1141}]},{eldap,connect_bind,1,[{file,""src/eldap.erl""},{line,1058}]}]},[{p1_fsm,terminate,8,[{file,""src/p1_fsm.erl""},{line,760}]},{proc_lib,init_p_do_apply,3,[{file,""proc_lib.erl""},{line,249}]}]}
ancestors: ['ejabberd_auth_ldap_[redacted]',ejabberd_backend_sup,ejabberd_sup,<0.82.0>]
message_queue_len: 0
messages: []
links: [<0.469.0>]
dictionary: [{'$internal_queue_len',0}]
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 2810
neighbours:
```
## Issue description
Hello,
I am trying to use LDAP authentication with ejabberd. Unfortunately the connection between the LDAP server itself and ejabberd cannot be established. I see the following lines in the error log:
```
2020-07-22 15:01:01.146 [debug] <0.474.0>@eldap:connect_bind:1051 Connecting to LDAP server at [ldap-server]:636 with options [{packet,asn1},{active,true},{keepalive,true},binary]
2020-07-22 15:01:01.147 [error] <0.474.0>@eldap:connect_bind:1073 LDAP connection to [ldap-server]:636 failed: TLS connection is closed
```
I am not sure why the TLS connection was closed.
After debugging the issue I found out that the LDAP server doesn't respond when using a cipher version newer than sslv3, in which case it will respond and provide a certificate but ejabberd then seems to refuse the selected protocol version (sslv3).
I set the ssl protocol_version in the ERL_OPTIONS variable to sslv3 by editing ejabberdctl.cfg, adding sslv3 and removing all of the other available versions. I read about that in another github issue: #3151
It didn't bring me closer to functioning LDAP authentication though.
Using LDAP without TLS works.
If I use ""openssl s_client -connect [ldap-server]:636"" to test the connection I can successfully connect:
```
SSL handshake has read 5099 bytes and written 667 bytes
Verification: OK
---
New, TLSv1.2, Cipher is AES128-SHA256
Server public key is 2048 bit
Secure Renegotiation IS supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
SSL-Session:
Protocol : TLSv1.2
Cipher : AES128-SHA256
```",
366,https://api.github.com/repos/processone/ejabberd/issues/3347,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3347/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3347/comments,https://api.github.com/repos/processone/ejabberd/issues/3347/events,https://github.com/processone/ejabberd/issues/3347,669592852,MDU6SXNzdWU2Njk1OTI4NTI=,3347,Bad value of attribute 'to' in tag qualified by namespace 'jabber:client',"{'login': 'relbraun', 'id': 6196995, 'node_id': 'MDQ6VXNlcjYxOTY5OTU=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/6196995?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/relbraun', 'html_url': 'https://github.com/relbraun', 'followers_url': 'https://api.github.com/users/relbraun/followers', 'following_url': 'https://api.github.com/users/relbraun/following{/other_user}', 'gists_url': 'https://api.github.com/users/relbraun/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/relbraun/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/relbraun/subscriptions', 'organizations_url': 'https://api.github.com/users/relbraun/orgs', 'repos_url': 'https://api.github.com/users/relbraun/repos', 'events_url': 'https://api.github.com/users/relbraun/events{/privacy}', 'received_events_url': 'https://api.github.com/users/relbraun/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-07-31T09:05:17Z,2020-07-31T14:34:45Z,2020-07-31T14:34:45Z,NONE,,,"## Environment
- ejabberd version: 19.09.1
- Erlang version: 19
- OS: Linux (Debian)
- Installed from: source
No errors
## Bug description
When I try to be occupied in MUC room and the ""nick"" that I send is combination of latin and Hebrew letters I get a 400 error response:
This is the stanza I sent:
```
```
and this is the response:
```
Bad value of attribute 'to' in tag <presence/> qualified by namespace 'jabber:client'
```
",
367,https://api.github.com/repos/processone/ejabberd/issues/3346,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3346/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3346/comments,https://api.github.com/repos/processone/ejabberd/issues/3346/events,https://github.com/processone/ejabberd/pull/3346,667941539,MDExOlB1bGxSZXF1ZXN0NDU4NTIwMDM0,3346,Allow passing Erlang VM args through vm.args config file,"{'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-29T15:37:54Z,2020-07-30T08:31:44Z,2020-07-30T08:31:14Z,MEMBER,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3346', 'html_url': 'https://github.com/processone/ejabberd/pull/3346', 'diff_url': 'https://github.com/processone/ejabberd/pull/3346.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3346.patch'}","This can be used to define the Erlang cookie in a place that feels less foreign to
non Erlang users.
It will work with the upcoming Homebrew recipes, as the Homebrew recipes will generate that cookie at install time.
Fixes #3343
Drawback: Cookie will be visible in process list (`ps -aux`). It should not be a big deal as listing process requires local access already. It can be hidden from other users by using a security enhanced Linux kernel like SELinux.
Example usage: Add a file vm.args in your config dir (close to your ejabberd.yml and ejabberdctl.cfg file) and add the following line:
```
-setcookie SomeLongAndRandomSecureString
```",
368,https://api.github.com/repos/processone/ejabberd/issues/3345,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3345/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3345/comments,https://api.github.com/repos/processone/ejabberd/issues/3345/events,https://github.com/processone/ejabberd/issues/3345,667309414,MDU6SXNzdWU2NjczMDk0MTQ=,3345,Creating dynamic vhost fails,"{'login': 'haimomesi', 'id': 32476571, 'node_id': 'MDQ6VXNlcjMyNDc2NTcx', 'avatar_url': 'https://avatars2.githubusercontent.com/u/32476571?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/haimomesi', 'html_url': 'https://github.com/haimomesi', 'followers_url': 'https://api.github.com/users/haimomesi/followers', 'following_url': 'https://api.github.com/users/haimomesi/following{/other_user}', 'gists_url': 'https://api.github.com/users/haimomesi/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/haimomesi/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/haimomesi/subscriptions', 'organizations_url': 'https://api.github.com/users/haimomesi/orgs', 'repos_url': 'https://api.github.com/users/haimomesi/repos', 'events_url': 'https://api.github.com/users/haimomesi/events{/privacy}', 'received_events_url': 'https://api.github.com/users/haimomesi/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,4,2020-07-28T19:19:01Z,2020-07-29T17:49:43Z,2020-07-29T17:49:43Z,NONE,,,"## Environment
- ejabberd version: 20.04
- Erlang version: OTP 22
- Elixir version: 1.10.3
- OS: Mac OSX
- Installed from: source
## Configuration: ejabberd.yml
```yaml
include_config_file: ./config/hosts.yml
# hosts:
# - localhost
...
new_sql_schema: true
```
## Errors from error.log/crash.log
```
21:47:54.759 [error] Failed to start Erlang application 'odbc': no such file or directory: odbc.app. This usually means that ejabberd or Erlang was compiled/installed incorrectly.
21:47:54.784 [error] Hook :host_up crashed when running :ejabberd_sql_sup::start/1:
** exception error: application_start_failed
in function ejabberd:exit_or_halt/2 (src/ejabberd.erl, line 150)
in call from ejabberd_sql_sup:start/1 (src/ejabberd_sql_sup.erl, line 46)
in call from ejabberd_hooks:safe_apply/4 (src/ejabberd_hooks.erl, line 236)
in call from ejabberd_hooks:run1/3 (src/ejabberd_hooks.erl, line 203)
in call from lists:foreach/2 (lists.erl, line 1338)
in call from ejabberd_config:reload/0 (src/ejabberd_config.erl, line 104)
in call from mod_http_api:handle2/4 (src/mod_http_api.erl, line 268)
in call from mod_http_api:handle/4 (src/mod_http_api.erl, line 229)
** Arg 1 = ""localhost3""
```
## Bug description
I've implemented Ejabberd over Elixir.
My solution includes adding vhosts dynamically. I know it's not according to the cookbook, but it's a must for me.
I have an **ejabberd_command** to add a vhost, then, I override `hosts.yml` file with the new vhost and call ejabberd_config:reload(), and get error above.
Here is my code...
```
oldHosts = :ejabberd_config.get_option(:hosts) _// yields [""localhost"", ""localhost2""]_
addedHosts = [""localhost"", ""localhost2"", ""localhost3""]
File.write!(""config/hosts.yml"", addedHosts)
:ejabberd_config.reload()
```
Thank you in advance,
Haim",
369,https://api.github.com/repos/processone/ejabberd/issues/3344,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3344/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3344/comments,https://api.github.com/repos/processone/ejabberd/issues/3344/events,https://github.com/processone/ejabberd/issues/3344,666706632,MDU6SXNzdWU2NjY3MDY2MzI=,3344,Failed when use ejabberdctl get_room_occupants,"{'login': '519790441', 'id': 58975525, 'node_id': 'MDQ6VXNlcjU4OTc1NTI1', 'avatar_url': 'https://avatars2.githubusercontent.com/u/58975525?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/519790441', 'html_url': 'https://github.com/519790441', 'followers_url': 'https://api.github.com/users/519790441/followers', 'following_url': 'https://api.github.com/users/519790441/following{/other_user}', 'gists_url': 'https://api.github.com/users/519790441/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/519790441/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/519790441/subscriptions', 'organizations_url': 'https://api.github.com/users/519790441/orgs', 'repos_url': 'https://api.github.com/users/519790441/repos', 'events_url': 'https://api.github.com/users/519790441/events{/privacy}', 'received_events_url': 'https://api.github.com/users/519790441/received_events', 'type': 'User', 'site_admin': False}",[],open,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]",,3,2020-07-28T02:36:35Z,2020-07-29T03:47:58Z,,NONE,,,"```
/opt/ejabberd-19.05/bin/ejabberdctl get_room_occupants xxxxx conference.xxxxx
Problem 'exit {noproc,{p1_fsm,sync_send_all_state_event,
[<0.1073.308>,get_state]}}' occurred executing the command.
Stacktrace: [{p1_fsm,sync_send_all_state_event,2,
[{file,""src/p1_fsm.erl""},{line,253}]},
{mod_muc_admin,get_room_state,1,
[{file,""src/mod_muc_admin.erl""},{line,801}]},
{mod_muc_admin,get_room_occupants,1,
[{file,""src/mod_muc_admin.erl""},{line,906}]},
{ejabberd_ctl,call_command,4,
[{file,""src/ejabberd_ctl.erl""},{line,360}]},
{ejabberd_ctl,try_call_command,4,
[{file,""src/ejabberd_ctl.erl""},{line,324}]},
{ejabberd_ctl,process2,4,
[{file,""src/ejabberd_ctl.erl""},{line,274}]},
{ejabberd_ctl,process,2,
[{file,""src/ejabberd_ctl.erl""},{line,252}]},
{rpc,'-handle_call_call/6-fun-0-',5,
[{file,""rpc.erl""},{line,197}]}]
```
## Environment
- ejabberd version: 19.05
- Erlang version: `erl +V`
- OS: Centos7.4
- Installed from: official binary installer
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
loglevel: 4
...
```
## Errors from error.log/crash.log
No errors
## Bug description
Please, give us a precise description (what does not work, what is expected, etc.)
",
370,https://api.github.com/repos/processone/ejabberd/issues/3343,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3343/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3343/comments,https://api.github.com/repos/processone/ejabberd/issues/3343/events,https://github.com/processone/ejabberd/issues/3343,666377855,MDU6SXNzdWU2NjYzNzc4NTU=,3343,Running ejabberd through homebrew services,"{'login': 'mull', 'id': 646665, 'node_id': 'MDQ6VXNlcjY0NjY2NQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/646665?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mull', 'html_url': 'https://github.com/mull', 'followers_url': 'https://api.github.com/users/mull/followers', 'following_url': 'https://api.github.com/users/mull/following{/other_user}', 'gists_url': 'https://api.github.com/users/mull/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mull/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mull/subscriptions', 'organizations_url': 'https://api.github.com/users/mull/orgs', 'repos_url': 'https://api.github.com/users/mull/repos', 'events_url': 'https://api.github.com/users/mull/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mull/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,"{'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/42', 'html_url': 'https://github.com/processone/ejabberd/milestone/42', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/42/labels', 'id': 5706346, 'node_id': 'MDk6TWlsZXN0b25lNTcwNjM0Ng==', 'number': 42, 'title': 'ejabberd 20.07', 'description': 'https://www.process-one.net/blog/ejabberd-20-07/', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 20, 'state': 'closed', 'created_at': '2020-07-28T07:56:43Z', 'updated_at': '2020-07-31T14:08:13Z', 'due_on': '2020-07-30T07:00:00Z', 'closed_at': '2020-07-31T14:05:45Z'}",13,2020-07-27T15:20:23Z,2020-08-03T13:22:21Z,2020-07-30T08:31:13Z,NONE,,,"## UPDATE
Short term workaround (from https://github.com/processone/ejabberd/issues/3343#issuecomment-665691972):
```
brew services stop ejabberd
cd ~
# You might need to confirm that this is really what you want to do
rm .erlang.cookie
cp /usr/local/var/lib/ejabberd/.erlang.cookie .
brew services start ejabberd
# The following should now work
ejabberdctl start
```
## Environment
- ejabberd version: `ejabberd: stable 20.04 (bottled), HEAD`
- Erlang version: `Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.7.2.2`
- OS: MacOS 10.15.6 (Catalina)
- Installed from: homebrew
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
hosts:
- localhost
loglevel: info
listen:
-
port: 5222
ip: ""::""
module: ejabberd_c2s
max_stanza_size: 262144
shaper: c2s_shaper
access: c2s
starttls_required: true
-
port: 5269
ip: ""::""
module: ejabberd_s2s_in
max_stanza_size: 524288
-
port: 5443
ip: ""::""
module: ejabberd_http
tls: true
request_handlers:
/admin: ejabberd_web_admin
/api: mod_http_api
/bosh: mod_bosh
/captcha: ejabberd_captcha
/upload: mod_http_upload
/ws: ejabberd_http_ws
-
port: 5280
ip: ""::""
module: ejabberd_http
request_handlers:
/admin: ejabberd_web_admin
/.well-known/acme-challenge: ejabberd_acme
-
port: 3478
transport: udp
module: ejabberd_stun
use_turn: true
-
port: 1883
ip: ""::""
module: mod_mqtt
backlog: 1000
s2s_use_starttls: optional
acl:
local:
user_regexp: """"
loopback:
ip:
- 127.0.0.0/8
- ::1/128
access_rules:
local:
allow: local
c2s:
deny: blocked
allow: all
announce:
allow: admin
configure:
allow: admin
muc_create:
allow: local
pubsub_createnode:
allow: local
trusted_network:
allow: loopback
api_permissions:
""console commands"":
from:
- ejabberd_ctl
who: all
what: ""*""
""admin access"":
who:
access:
allow:
acl: loopback
acl: admin
oauth:
scope: ""ejabberd:admin""
access:
allow:
acl: loopback
acl: admin
what:
- ""*""
- ""!stop""
- ""!start""
""public commands"":
who:
ip: 127.0.0.1/8
what:
- status
- connected_users_number
shaper:
normal: 1000
fast: 50000
shaper_rules:
max_user_sessions: 10
max_user_offline_messages:
5000: admin
100: all
c2s_shaper:
none: admin
normal: all
s2s_shaper: fast
modules:
mod_adhoc: {}
mod_admin_extra: {}
mod_announce:
access: announce
mod_avatar: {}
mod_blocking: {}
mod_bosh: {}
mod_caps: {}
mod_carboncopy: {}
mod_client_state: {}
mod_configure: {}
mod_disco: {}
mod_fail2ban: {}
mod_http_api: {}
mod_http_upload:
put_url: https://@HOST@:5443/upload
mod_last: {}
mod_mam:
assume_mam_usage: true
default: always
mod_mqtt: {}
mod_muc:
access:
- allow
access_admin:
- allow: admin
access_create: muc_create
access_persistent: muc_create
access_mam:
- allow
default_room_options:
mam: true
mod_muc_admin: {}
mod_offline:
access_max_user_messages: max_user_offline_messages
mod_ping: {}
mod_privacy: {}
mod_private: {}
mod_proxy65:
access: local
max_connections: 5
mod_pubsub:
access_createnode: pubsub_createnode
plugins:
- flat
- pep
force_node_config:
storage:bookmarks:
access_model: whitelist
mod_push: {}
mod_push_keepalive: {}
mod_register:
ip_access: trusted_network
mod_roster:
versioning: true
mod_s2s_dialback: {}
mod_shared_roster: {}
mod_stream_mgmt:
resend_on_timeout: if_offline
mod_stun_disco: {}
mod_vcard: {}
mod_vcard_xupdate: {}
mod_version:
show_os: false
```
## Errors from error.log/crash.log
```
emil@Emils-MacBook-Pro ejabberd % cat error.log
2020-07-27 17:10:26.299074+02:00 [error] <0.556.0> ** Connection attempt from disallowed node '487-ctl-ejabberd@localhost' **
```
## Bug description
Using `brew services start ejabberd` followed by `ejabberctl status` gives me the following output:
```
Failed RPC connection to the node ejabberd@localhost: nodedown
```
I've added my hostname (`Emils-MacBook-Pro.local`) in /private/etc/hosts as described in the formula:
```
127.0.0.1 localhost Emils-MacBook-Pro.local
::1 localhost Emils-MacBook-Pro.local
```
I can run ejabberd by using `ejabberdctl`, but not through the brew services. Since homebrew seems to be the official recommendation for installation, perhaps we can figure out what's going on here and fix it (or mention it) in the formula?
The documentation seems to (?) recommend using `ejabberdctl` for running the server, but when you install it from homebrew you get the impression that I can be managed by brew services. Is there a technical reason why that can't be done, or is it just a bug that we can fix?
`ejabberdctl live` gives a hint at the problem, possibly? It might be related to the hostname resolution... I've silenced that by setting `turn_ip` to `127.0.0.1`, but it doesn't seem to be helping. I just loose the warning in the live output, but the same connection problem (nodedown) appears.
```
Erlang/OTP 22 [erts-10.7.2.2] [source] [64-bit] [smp:12:12] [ds:12:12:10] [async-threads:1] [hipe] [dtrace]
Eshell V10.7.2.2 (abort with ^G)
(ejabberd@localhost)1> 2020-07-27 17:18:39.941821+02:00 [info] Loading configuration from /usr/local/etc/ejabberd/ejabberd.yml
2020-07-27 17:18:40.143680+02:00 [info] Configuration loaded successfully
2020-07-27 17:18:40.369435+02:00 [info] Loading modules for localhost
2020-07-27 17:18:40.384235+02:00 [warning] Mnesia backend for mod_mam is not recommended: it's limited to 2GB and often gets corrupted when reaching this limit. SQL backend is recommended. Namely, for small servers SQLite is a preferred choice because it's very easy to configure.
2020-07-27 17:18:40.425696+02:00 [info] Won't auto-announce STUN/TURN service with loopback address: 127.0.0.1:3478 (udp), please specify a public 'turn_ip'
2020-07-27 17:18:40.526822+02:00 [info] Building MQTT cache for localhost, this may take a while
2020-07-27 17:18:40.567646+02:00 [info] Waiting for Mnesia synchronization to complete
2020-07-27 17:18:40.711212+02:00 [warning] No certificate found matching localhost
2020-07-27 17:18:40.711381+02:00 [warning] No certificate found matching conference.localhost
2020-07-27 17:18:40.711544+02:00 [warning] No certificate found matching upload.localhost
2020-07-27 17:18:40.711673+02:00 [warning] No certificate found matching proxy.localhost
2020-07-27 17:18:40.711803+02:00 [warning] No certificate found matching pubsub.localhost
2020-07-27 17:18:40.711907+02:00 [info] ejabberd 20.04 is started in the node ejabberd@localhost in 0.82s
2020-07-27 17:18:40.712103+02:00 [info] Start accepting UDP connections at 0.0.0.0:3478 for ejabberd_stun
2020-07-27 17:18:40.712401+02:00 [info] Start accepting TCP connections at [::]:5222 for ejabberd_c2s
2020-07-27 17:18:40.712439+02:00 [info] Start accepting TCP connections at [::]:5269 for ejabberd_s2s_in
2020-07-27 17:18:40.712665+02:00 [info] Start accepting TCP connections at [::]:5280 for ejabberd_http
2020-07-27 17:18:40.712656+02:00 [info] Start accepting TLS connections at [::]:5443 for ejabberd_http
2020-07-27 17:18:40.712786+02:00 [info] Start accepting TCP connections at [::]:1883 for mod_mqtt
2020-07-27 17:18:40.712793+02:00 [info] Start accepting TCP connections at 127.0.0.1:7777 for mod_proxy65_stream
2020-07-27 17:18:40.762404+02:00 [warning] Option 'turn_ip' is undefined and the server's hostname doesn't resolve to a public IPv4 address, most likely the TURN relay won't be working properly
```",
371,https://api.github.com/repos/processone/ejabberd/issues/3342,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3342/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3342/comments,https://api.github.com/repos/processone/ejabberd/issues/3342/events,https://github.com/processone/ejabberd/issues/3342,665546588,MDU6SXNzdWU2NjU1NDY1ODg=,3342,Why mod_mam does not return all history message ?,"{'login': 'jackey', 'id': 522090, 'node_id': 'MDQ6VXNlcjUyMjA5MA==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/522090?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jackey', 'html_url': 'https://github.com/jackey', 'followers_url': 'https://api.github.com/users/jackey/followers', 'following_url': 'https://api.github.com/users/jackey/following{/other_user}', 'gists_url': 'https://api.github.com/users/jackey/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jackey/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jackey/subscriptions', 'organizations_url': 'https://api.github.com/users/jackey/orgs', 'repos_url': 'https://api.github.com/users/jackey/repos', 'events_url': 'https://api.github.com/users/jackey/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jackey/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,2,2020-07-25T08:49:36Z,2020-07-28T07:55:30Z,,NONE,,,"## Environment
- ejabberd version: ejabberd-19.09
- OS: Linux (Red Hat 8.0)
- Installed from: distro package
Here's the iq XML:
```xml
urn:xmpp:mam:2en_1@dev-chat.bitpush.news
```
and i can see the last message that sent to user in the database by SQL.
```sql
select * from archive order by timestamp DESC LIMIT 2
username: en_1
timestamp: 1595665573430551
peer: en_294@dev-chat.bitpush.news/1084078956567967897825299
bare_peer: en_294@dev-chat.bitpush.news
xml: aha
txt: aha
id: 686
kind: chat
nick:
created_at: 2020-07-25 08:26:13
*************************** 2. row ***************************
username: en_294
timestamp: 1595665573424783
peer: en_1@dev-chat.bitpush.news
bare_peer: en_1@dev-chat.bitpush.news
xml: aha
txt: aha
id: 685
kind: chat
nick:
created_at: 2020-07-25 08:26:13
```
but i can not see the last messages that sent from the ejabberd server response.
Anything i lost or i need a special IQ attribute to fetch all messages ?
",
372,https://api.github.com/repos/processone/ejabberd/issues/3341,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3341/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3341/comments,https://api.github.com/repos/processone/ejabberd/issues/3341/events,https://github.com/processone/ejabberd/issues/3341,665524800,MDU6SXNzdWU2NjU1MjQ4MDA=,3341,Set TLS ciphers for ejabberd_http ,"{'login': 'oksjd', 'id': 54463160, 'node_id': 'MDQ6VXNlcjU0NDYzMTYw', 'avatar_url': 'https://avatars0.githubusercontent.com/u/54463160?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/oksjd', 'html_url': 'https://github.com/oksjd', 'followers_url': 'https://api.github.com/users/oksjd/followers', 'following_url': 'https://api.github.com/users/oksjd/following{/other_user}', 'gists_url': 'https://api.github.com/users/oksjd/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/oksjd/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/oksjd/subscriptions', 'organizations_url': 'https://api.github.com/users/oksjd/orgs', 'repos_url': 'https://api.github.com/users/oksjd/repos', 'events_url': 'https://api.github.com/users/oksjd/events{/privacy}', 'received_events_url': 'https://api.github.com/users/oksjd/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-07-25T06:04:40Z,2020-07-29T07:50:59Z,2020-07-29T07:50:59Z,NONE,,,"#### Version
* Debian 10.4
* ejabberd 20.04-1~bpo10+1 from buster-backports
#### Problem
Ciphers for c2s and s2s connection can be set with `c2s_ciphers` and `s2s_ciphers`. But there's currently no such option for ejabberd_http module. Consequently, when visiting webadmin or uploading files to server, an insecure cipher could be used by the client.
Is there any cipher option available for the http module? The only viable options available now is to disable TLSv1.2 altogether (breaks a lot of older clients) or configure a reverse proxy.",
373,https://api.github.com/repos/processone/ejabberd/issues/3340,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3340/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3340/comments,https://api.github.com/repos/processone/ejabberd/issues/3340/events,https://github.com/processone/ejabberd/issues/3340,665064761,MDU6SXNzdWU2NjUwNjQ3NjE=,3340,Server-side message deletion for MAM messages,"{'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",open,False,"{'login': 'prefiks', 'id': 61998, 'node_id': 'MDQ6VXNlcjYxOTk4', 'avatar_url': 'https://avatars0.githubusercontent.com/u/61998?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/prefiks', 'html_url': 'https://github.com/prefiks', 'followers_url': 'https://api.github.com/users/prefiks/followers', 'following_url': 'https://api.github.com/users/prefiks/following{/other_user}', 'gists_url': 'https://api.github.com/users/prefiks/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/prefiks/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/prefiks/subscriptions', 'organizations_url': 'https://api.github.com/users/prefiks/orgs', 'repos_url': 'https://api.github.com/users/prefiks/repos', 'events_url': 'https://api.github.com/users/prefiks/events{/privacy}', 'received_events_url': 'https://api.github.com/users/prefiks/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'prefiks', 'id': 61998, 'node_id': 'MDQ6VXNlcjYxOTk4', 'avatar_url': 'https://avatars0.githubusercontent.com/u/61998?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/prefiks', 'html_url': 'https://github.com/prefiks', 'followers_url': 'https://api.github.com/users/prefiks/followers', 'following_url': 'https://api.github.com/users/prefiks/following{/other_user}', 'gists_url': 'https://api.github.com/users/prefiks/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/prefiks/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/prefiks/subscriptions', 'organizations_url': 'https://api.github.com/users/prefiks/orgs', 'repos_url': 'https://api.github.com/users/prefiks/repos', 'events_url': 'https://api.github.com/users/prefiks/events{/privacy}', 'received_events_url': 'https://api.github.com/users/prefiks/received_events', 'type': 'User', 'site_admin': False}, {'login': 'jsautret', 'id': 568898, 'node_id': 'MDQ6VXNlcjU2ODg5OA==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/568898?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jsautret', 'html_url': 'https://github.com/jsautret', 'followers_url': 'https://api.github.com/users/jsautret/followers', 'following_url': 'https://api.github.com/users/jsautret/following{/other_user}', 'gists_url': 'https://api.github.com/users/jsautret/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jsautret/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jsautret/subscriptions', 'organizations_url': 'https://api.github.com/users/jsautret/orgs', 'repos_url': 'https://api.github.com/users/jsautret/repos', 'events_url': 'https://api.github.com/users/jsautret/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jsautret/received_events', 'type': 'User', 'site_admin': False}]",,1,2020-07-24T10:08:57Z,2020-07-30T13:34:53Z,,MEMBER,,,"[XEP-0313: Message Archive Management](https://xmpp.org/extensions/xep-0313.html) does not propose a way to delete a message.
It would be handy to propose a draft XEP and implementation to handle server-side message deletion from archive.
Things to take into account:
- Do we want to delete from only my archive or all archives ?
- What should be the link with [XEP-0424: Message Retraction](https://xmpp.org/extensions/xep-0424.html) ?
- What should be the link with [XEP-0425: Message Moderation](https://xmpp.org/extensions/xep-0425.html) ?
- Specific handling and right management in the case of MUC.
Let's discuss here draft protocol and implementation.
",
374,https://api.github.com/repos/processone/ejabberd/issues/3339,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3339/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3339/comments,https://api.github.com/repos/processone/ejabberd/issues/3339/events,https://github.com/processone/ejabberd/issues/3339,664886411,MDU6SXNzdWU2NjQ4ODY0MTE=,3339,Failed c2s EXTERNAL authentication user xyz Failed to get peer certificate,"{'login': 'onelab72', 'id': 68630419, 'node_id': 'MDQ6VXNlcjY4NjMwNDE5', 'avatar_url': 'https://avatars0.githubusercontent.com/u/68630419?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/onelab72', 'html_url': 'https://github.com/onelab72', 'followers_url': 'https://api.github.com/users/onelab72/followers', 'following_url': 'https://api.github.com/users/onelab72/following{/other_user}', 'gists_url': 'https://api.github.com/users/onelab72/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/onelab72/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/onelab72/subscriptions', 'organizations_url': 'https://api.github.com/users/onelab72/orgs', 'repos_url': 'https://api.github.com/users/onelab72/repos', 'events_url': 'https://api.github.com/users/onelab72/events{/privacy}', 'received_events_url': 'https://api.github.com/users/onelab72/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,"{'login': 'jsautret', 'id': 568898, 'node_id': 'MDQ6VXNlcjU2ODg5OA==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/568898?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jsautret', 'html_url': 'https://github.com/jsautret', 'followers_url': 'https://api.github.com/users/jsautret/followers', 'following_url': 'https://api.github.com/users/jsautret/following{/other_user}', 'gists_url': 'https://api.github.com/users/jsautret/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jsautret/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jsautret/subscriptions', 'organizations_url': 'https://api.github.com/users/jsautret/orgs', 'repos_url': 'https://api.github.com/users/jsautret/repos', 'events_url': 'https://api.github.com/users/jsautret/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jsautret/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'jsautret', 'id': 568898, 'node_id': 'MDQ6VXNlcjU2ODg5OA==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/568898?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jsautret', 'html_url': 'https://github.com/jsautret', 'followers_url': 'https://api.github.com/users/jsautret/followers', 'following_url': 'https://api.github.com/users/jsautret/following{/other_user}', 'gists_url': 'https://api.github.com/users/jsautret/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jsautret/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jsautret/subscriptions', 'organizations_url': 'https://api.github.com/users/jsautret/orgs', 'repos_url': 'https://api.github.com/users/jsautret/repos', 'events_url': 'https://api.github.com/users/jsautret/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jsautret/received_events', 'type': 'User', 'site_admin': False}]",,43,2020-07-24T03:10:18Z,2020-08-21T18:12:18Z,2020-07-24T14:59:29Z,NONE,,,"## Environment
- ejabberd version: 20.4.0
- Erlang version: `Erlang/OTP 22 [erts-10.5] [source] [64-bit]`
- OS: Linux (Alpine)
- Installed from: docker
## Configuration
```yaml
listen:
-
port: 5222
ip: ""::""
module: ejabberd_c2s
max_stanza_size: 262144
shaper: c2s_shaper
access: c2s
starttls_required: true
cafile: /home/ejabberd/conf/cafile
tls_verify: true...
# HTTP auth setting
auth_method: http
auth_opts:
host: ""http://authserver
connection_pool_size: 10
connection_opts: []
basic_auth: """"
path_prefix: ""/""
```
## Errors from error.log/crash.log
```
Failed c2s EXTERNAL authentication for abc@hosst from ::ffff:172.17.0.1: Failed to get peer certificate
```
## Bug description
I am trying to authenticate client against base on **SASL EXTERNAL with Certificates** [https://xmpp.org/extensions/xep-0178.html](url) but user try to connect even with client certificate got the above warning.
Same error if no certificate provided and also client still able able to connect.
What I am expecting is
- If no certificate provided client should not able to connect while Ejabberd just bypass the `starttls_required` and `tls_verify` flag
- Is there a way to not **allow connection if certificate is not valid**?
- Can I use just only **client certificate authentication** or should I use certificate along with **http-auth**?
Relevant commit is [https://github.com/processone/ejabberd/commit/8b29af62](url) but it does not help
",
375,https://api.github.com/repos/processone/ejabberd/issues/3338,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3338/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3338/comments,https://api.github.com/repos/processone/ejabberd/issues/3338/events,https://github.com/processone/ejabberd/issues/3338,663945778,MDU6SXNzdWU2NjM5NDU3Nzg=,3338,SQLite3 library >= 3.6.19 was not found when installed Ejabberd on Mac OS X Catalina,"{'login': 'Jeel-Shah', 'id': 4922694, 'node_id': 'MDQ6VXNlcjQ5MjI2OTQ=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/4922694?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Jeel-Shah', 'html_url': 'https://github.com/Jeel-Shah', 'followers_url': 'https://api.github.com/users/Jeel-Shah/followers', 'following_url': 'https://api.github.com/users/Jeel-Shah/following{/other_user}', 'gists_url': 'https://api.github.com/users/Jeel-Shah/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Jeel-Shah/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Jeel-Shah/subscriptions', 'organizations_url': 'https://api.github.com/users/Jeel-Shah/orgs', 'repos_url': 'https://api.github.com/users/Jeel-Shah/repos', 'events_url': 'https://api.github.com/users/Jeel-Shah/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Jeel-Shah/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-07-22T17:56:59Z,2020-07-23T12:17:22Z,2020-07-23T12:17:22Z,NONE,,,"## Environment
- ejabberd version: Not Installed
- Erlang version: `Erlang/OTP 23 [erts-11.0.2]`
- OS: Mac OS Catalina (10.15.3)
- Installed from: source (Github with `make`)
## Errors from error.log/crash.log
No errors
## Bug description
While attempting to install ejabberd, the following error comes after executing: `./configure --prefix=$HOME/my-ejabberd --enable-sqlite`
```
checking for SQLite3 library >= 3.6.19... yes
cat: /include/sqlite3.h: No such file or directory
./configure: line 4172: test: !=: unary operator expected
configure: WARNING: Cannot find SQLITE_VERSION macro in sqlite3.h header to retrieve SQLite version!
configure: error: SQLite3 library >= 3.6.19 was not found
```
I have sqlite installed via `brew`. The latest version via brew is `3.23.xx`. The latest version on sqlite shows that the latest version is `3.23.xx`. Is the error message referring to another aspect of sqlite3 that we have to install?
Thanks a lot for your time!
P.S. I ran `brew install erlang elixir openssl expat libyaml libiconv libgd sqlite rebar rebar3 automake autoconf` with success (no hiccups).",
376,https://api.github.com/repos/processone/ejabberd/issues/3337,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3337/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3337/comments,https://api.github.com/repos/processone/ejabberd/issues/3337/events,https://github.com/processone/ejabberd/issues/3337,663757034,MDU6SXNzdWU2NjM3NTcwMzQ=,3337,Web Admin missing Menu Information ,"{'login': 'jeremiasdsa', 'id': 9071775, 'node_id': 'MDQ6VXNlcjkwNzE3NzU=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/9071775?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jeremiasdsa', 'html_url': 'https://github.com/jeremiasdsa', 'followers_url': 'https://api.github.com/users/jeremiasdsa/followers', 'following_url': 'https://api.github.com/users/jeremiasdsa/following{/other_user}', 'gists_url': 'https://api.github.com/users/jeremiasdsa/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jeremiasdsa/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jeremiasdsa/subscriptions', 'organizations_url': 'https://api.github.com/users/jeremiasdsa/orgs', 'repos_url': 'https://api.github.com/users/jeremiasdsa/repos', 'events_url': 'https://api.github.com/users/jeremiasdsa/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jeremiasdsa/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179053080, 'node_id': 'MDU6TGFiZWwxNzkwNTMwODA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Documentation', 'name': 'Kind:Documentation', 'color': '006b75', 'default': False, 'description': None}]",closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]",,1,2020-07-22T13:20:12Z,2020-07-23T10:19:49Z,2020-07-23T10:19:49Z,NONE,,,"## Environment
- ejabberd version: 20.04
- OS: Linux on AWS EC2 instance
- Installed from: $wget https://www.process-one.net/downloads/downloads-action.php?file=/20.04/ejabberd-20.04-linux-x64.run
## Configuration [DEFAULT configuration]
## Errors from error.log/crash.log
No errors
## Bug description
My server is missing some information. The screen I got is different from official docs, can you help me to solve it?
",
377,https://api.github.com/repos/processone/ejabberd/issues/3336,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3336/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3336/comments,https://api.github.com/repos/processone/ejabberd/issues/3336/events,https://github.com/processone/ejabberd/issues/3336,663342135,MDU6SXNzdWU2NjMzNDIxMzU=,3336,"MOD_MAM, MOD_MAM_SQL, filter by content into MUC.","{'login': 'lucastimotiofirmino', 'id': 50211797, 'node_id': 'MDQ6VXNlcjUwMjExNzk3', 'avatar_url': 'https://avatars2.githubusercontent.com/u/50211797?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/lucastimotiofirmino', 'html_url': 'https://github.com/lucastimotiofirmino', 'followers_url': 'https://api.github.com/users/lucastimotiofirmino/followers', 'following_url': 'https://api.github.com/users/lucastimotiofirmino/following{/other_user}', 'gists_url': 'https://api.github.com/users/lucastimotiofirmino/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/lucastimotiofirmino/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/lucastimotiofirmino/subscriptions', 'organizations_url': 'https://api.github.com/users/lucastimotiofirmino/orgs', 'repos_url': 'https://api.github.com/users/lucastimotiofirmino/repos', 'events_url': 'https://api.github.com/users/lucastimotiofirmino/events{/privacy}', 'received_events_url': 'https://api.github.com/users/lucastimotiofirmino/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-07-21T22:13:36Z,2020-07-22T08:15:09Z,2020-07-22T08:14:36Z,NONE,,,"## Environment
- ejabberd version: 18.09
- Erlang version: `erl +V`
- OS: Linux (Debian)
- Installed from: source | distro package | official deb/rpm | official binary installer | other
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
loglevel: 4
...
```
## Errors from error.log/crash.log
No errors
## Bug description
I need to use the fields, specified in: [https://xmpp.org/extensions/xep-0313.html#example-14](https://xmpp.org/extensions/xep-0313.html#example-14)
```
```
However, when [consulting the server](https://xmpp.org/extensions/xep-0313.html#example-13), it does not provide support for these fields.
Taking a look at the module **mod_mam_sql**, I noticed that there are some mentions to a column called WithTextClause.
How can we make this type of filter by content?
Thanks.
",
378,https://api.github.com/repos/processone/ejabberd/issues/3335,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3335/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3335/comments,https://api.github.com/repos/processone/ejabberd/issues/3335/events,https://github.com/processone/ejabberd/issues/3335,662990876,MDU6SXNzdWU2NjI5OTA4NzY=,3335,Inconsistent pubsub behavior if `last_item_cache` is enabled,"{'login': 'di72nn', 'id': 1114779, 'node_id': 'MDQ6VXNlcjExMTQ3Nzk=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1114779?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/di72nn', 'html_url': 'https://github.com/di72nn', 'followers_url': 'https://api.github.com/users/di72nn/followers', 'following_url': 'https://api.github.com/users/di72nn/following{/other_user}', 'gists_url': 'https://api.github.com/users/di72nn/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/di72nn/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/di72nn/subscriptions', 'organizations_url': 'https://api.github.com/users/di72nn/orgs', 'repos_url': 'https://api.github.com/users/di72nn/repos', 'events_url': 'https://api.github.com/users/di72nn/events{/privacy}', 'received_events_url': 'https://api.github.com/users/di72nn/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,0,2020-07-21T12:55:55Z,2020-07-21T12:55:55Z,,NONE,,,"## Environment
- ejabberd version: 20.04
- Erlang version: Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 11.0
- OS: Linux (Arch Linux)
- Installed from: distro package
## Configuration:
```yaml
...
mod_pubsub:
db_type: sql
access_createnode: pubsub_createnode
ignore_pep_from_offline: false
last_item_cache: true
plugins:
- flat
- pep
force_node_config:
storage:bookmarks:
access_model: whitelist
...
```
## Errors from error.log/crash.log
No errors
## Bug description
Disclaimer: I'm a complete noob in XMPP. The behavior described here may be caused by some mistake in my ejabberd setup - I can't bring myself to set up a new ejabberd instance just to test it.
If `last_item_cache` is set to `true`, pubsub seem to use cached value for `headline`s, but does not update values in DB. Direct queries (as opposed to `headline` messages) return values from DB (that do not match `headline`s).
The problem was initially discovered [here](https://dev.gajim.org/gajim/gajim-plugins/-/issues/449#note_200509).
Lengthy details
Value in DB (for the particular PEP node `select * from pubsub_item where nodeid = 12;`):
itemid | publisher | creation | modification | payload
--- | --- | --- | --- | ---
`current` | `d@di72nn.com/laptop` | `001595:328942:525615` | `001595:329296:110683` | ``
1. Start ejabberd.
2. Connect using Gajim with XML Console open. Observe the expected message:
```xml
```
3. Manually send `get` request and observe the same result:
```xml
```
4. Manually publish updated value and observer updated `headline`s:
```xml
```
5. Query it again and observe outdated value:
```xml
```
6. Restart Gajim and connect, observe inconsistent results:
```xml
12020-07-21T10:55:42.525615Z2020-07-21T10:55:42.525615Z
```
7. Stop ejabberd. The value in the DB is not updated.
8. Set `last_item_cache` to `false`, start ejabberd.
9. Connect using Gajim, observe old value in `headline`:
```xml
```
10. Manually query the value, observe expected result:
```xml
```
11. Manually update the value, observe correct result:
```xml
```
12. Manually query, observe correct result:
```xml
```
The DB value is updated too:
itemid | publisher | creation | modification | payload
--- | --- | --- | --- | ---
`current` | `d@di72nn.com/desktop` | `001595:328942:525615` | `001595:335002:831753` | ``
13. Reconnect Gajim, observe correct `headline`:
```xml
```
14. Manual query:
```xml
12020-07-21T10:55:42.525615Z2020-07-21T10:55:42.525615Z
```
I also noticed that `pubsub_node_option.persist_items` in the DB is set to `false` for the particular node, but I don't know whether it is relevant.",
379,https://api.github.com/repos/processone/ejabberd/issues/3334,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3334/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3334/comments,https://api.github.com/repos/processone/ejabberd/issues/3334/events,https://github.com/processone/ejabberd/issues/3334,661922378,MDU6SXNzdWU2NjE5MjIzNzg=,3334,apple push notifications,"{'login': 'Luticus', 'id': 7807109, 'node_id': 'MDQ6VXNlcjc4MDcxMDk=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/7807109?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Luticus', 'html_url': 'https://github.com/Luticus', 'followers_url': 'https://api.github.com/users/Luticus/followers', 'following_url': 'https://api.github.com/users/Luticus/following{/other_user}', 'gists_url': 'https://api.github.com/users/Luticus/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Luticus/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Luticus/subscriptions', 'organizations_url': 'https://api.github.com/users/Luticus/orgs', 'repos_url': 'https://api.github.com/users/Luticus/repos', 'events_url': 'https://api.github.com/users/Luticus/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Luticus/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",closed,False,,[],,8,2020-07-20T14:58:55Z,2020-07-20T15:24:33Z,2020-07-20T15:06:56Z,NONE,,,"**Is your feature request related to a problem? Please describe.**
I have an ejabberd server hosted from a Debian 10 server and some of my users unfortunately have iPhones. When they use any clients on their phones, messaging works, until the messaging app is sent to the background at which point they quit receiving messages. I've read supporting apple push notifications is the solution for this, however, I've also read ejabberd business edition is the only edition of ejabberd that officially supports this. So my question is how are people dealing with this? This situation makes iphones basically unusable with ejabberd community edition. I'm not opposed to paying for ejabberd but business edition software is usually thousands of dollars and I'm not a business, I just want private chat for my friends and family, so I'm assuming it'll be out of my price range.
**Describe the solution you'd like**
I want a way for iphones to be able to participate in the xmpp chat without it being completely frustrating for those users. They basically just don't use the chat server and resort to text messages, which completely invalidates my whole reason for using ejabberd in the first place, encrypted private chat. Maybe recommendations for how to work around the problem would be nice. Would be super nice if it could be done without having to recompile ejabberd from source, because that would make keeping ejabberd up-to-date a lot more difficult.
**Describe alternatives you've considered**
Switching back to openfire? I mean I really don't want to do that, I like ejabberd WAY better, but I really need my xmpp server to support iphones properly. Really, REALLY, hoping there's a good alternative to doing that.",
380,https://api.github.com/repos/processone/ejabberd/issues/3333,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3333/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3333/comments,https://api.github.com/repos/processone/ejabberd/issues/3333/events,https://github.com/processone/ejabberd/issues/3333,661448155,MDU6SXNzdWU2NjE0NDgxNTU=,3333,mod_muc Too many users in this conference,"{'login': 'Socketsj', 'id': 30768657, 'node_id': 'MDQ6VXNlcjMwNzY4NjU3', 'avatar_url': 'https://avatars3.githubusercontent.com/u/30768657?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Socketsj', 'html_url': 'https://github.com/Socketsj', 'followers_url': 'https://api.github.com/users/Socketsj/followers', 'following_url': 'https://api.github.com/users/Socketsj/following{/other_user}', 'gists_url': 'https://api.github.com/users/Socketsj/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Socketsj/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Socketsj/subscriptions', 'organizations_url': 'https://api.github.com/users/Socketsj/orgs', 'repos_url': 'https://api.github.com/users/Socketsj/repos', 'events_url': 'https://api.github.com/users/Socketsj/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Socketsj/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-07-20T06:46:25Z,2020-07-20T08:09:24Z,2020-07-20T08:09:24Z,NONE,,,"## Environment
- ejabberd version: 20.04
- Erlang version: `erl +V`
- OS: Linux (Debian)
- Installed from: official binary installer
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
loglevel: 4
...
mod_muc:
access:
- allow
access_admin:
- allow: admin
access_create: muc_create
access_persistent: muc_create
access_mam:
- allow
default_room_options:
allow_subscription: true # enable MucSub
mam: false
max_users: 2000
max_user_conferences: 2000
max_users_presence: 2000
```
## Errors from error.log/crash.log
500 wait resource-constraint Too many users in this conference
## Bug description
I create the muc room with 500 members. when I join more than 200 members, has error
```
500 wait resource-constraint Too many users in this conference
```
But, I config it like [https://docs.ejabberd.im/admin/configuration/modules/#mod-muc](https://docs.ejabberd.im/admin/configuration/modules/#mod-muc), How can I have 500 mebers muc room
",
381,https://api.github.com/repos/processone/ejabberd/issues/3332,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3332/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3332/comments,https://api.github.com/repos/processone/ejabberd/issues/3332/events,https://github.com/processone/ejabberd/issues/3332,660675151,MDU6SXNzdWU2NjA2NzUxNTE=,3332,ejabberd 18:09 returns a non-standard SASL error per RFC6120,"{'login': 'cmeng-git', 'id': 7959606, 'node_id': 'MDQ6VXNlcjc5NTk2MDY=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/7959606?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/cmeng-git', 'html_url': 'https://github.com/cmeng-git', 'followers_url': 'https://api.github.com/users/cmeng-git/followers', 'following_url': 'https://api.github.com/users/cmeng-git/following{/other_user}', 'gists_url': 'https://api.github.com/users/cmeng-git/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/cmeng-git/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/cmeng-git/subscriptions', 'organizations_url': 'https://api.github.com/users/cmeng-git/orgs', 'repos_url': 'https://api.github.com/users/cmeng-git/repos', 'events_url': 'https://api.github.com/users/cmeng-git/events{/privacy}', 'received_events_url': 'https://api.github.com/users/cmeng-git/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/42', 'html_url': 'https://github.com/processone/ejabberd/milestone/42', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/42/labels', 'id': 5706346, 'node_id': 'MDk6TWlsZXN0b25lNTcwNjM0Ng==', 'number': 42, 'title': 'ejabberd 20.07', 'description': 'https://www.process-one.net/blog/ejabberd-20-07/', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 20, 'state': 'closed', 'created_at': '2020-07-28T07:56:43Z', 'updated_at': '2020-07-31T14:08:13Z', 'due_on': '2020-07-30T07:00:00Z', 'closed_at': '2020-07-31T14:05:45Z'}",2,2020-07-19T07:53:45Z,2020-07-28T07:57:05Z,2020-07-28T07:57:04Z,NONE,,,"## Environment
- ejabberd version: 18.09
- Erlang version:
Erlang/OTP 20 [erts-9.2] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:10] [kernel-poll:false]
Eshell V9.2 (abort with ^G)
- OS: Linux (Debian) 18.04
- Installed from: source
...
## Bug description
While performing test on aTalk, ejabberd returns a SASL error i.e. \ (see aTalk log) not defined in:
[Extensible Messaging and Presence Protocol (XMPP): Core](https://www.rfc-editor.org/rfc/rfc6120.html#section-6.5)
Please refer to the following link for more info
https://discourse.igniterealtime.org/t/smack-4-4-0-alpha-sasl-error-bad-protocol-return-by-ejabberd-is-not-listed-in-smack-enum-saslerror/88393
## aTalk debug.log
```
2020-07-17 11:26:06.530 28946-31195/org.atalk.android D/SMACK: RECV (1):
EXTERNAL
PLAIN
SCRAM-SHA-1
X-OAUTH2
2020-07-17 11:26:06.562 28946-31194/org.atalk.android D/SMACK: SENT (1):
c3dvcmRmaXNoQGF0YWxrLnN5dGVzLm5ldA==
2020-07-17 11:26:06.568 28946-31195/org.atalk.android D/SMACK: RECV (1):
Failed to get peer certificate
2020-07-17 11:26:06.575 28946-31195/org.atalk.android W/aTalk: [110665] org.jivesoftware.smack.sasl.SASLError.fromString() Could not transform string 'bad_protocol' to SASLError
java.lang.IllegalArgumentException: No enum constant org.jivesoftware.smack.sasl.SASLError.bad_protocol
at java.lang.Enum.valueOf(Enum.java:257)
at org.jivesoftware.smack.sasl.SASLError.valueOf(SASLError.java:27)
at org.jivesoftware.smack.sasl.SASLError.fromString(SASLError.java:51)
at org.jivesoftware.smack.sasl.packet.SaslNonza$SASLFailure.(SaslNonza.java:200)
at org.jivesoftware.smack.provider.SaslFailureProvider.parse(SaslFailureProvider.java:59)
at org.jivesoftware.smack.provider.SaslFailureProvider.parse(SaslFailureProvider.java:28)
at org.jivesoftware.smack.provider.Provider.parse(Provider.java:53)
at org.jivesoftware.smack.AbstractXMPPConnection.parseAndProcessNonza(AbstractXMPPConnection.java:1429)
at org.jivesoftware.smack.tcp.XMPPTCPConnection.access$1700(XMPPTCPConnection.java:130)
at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.parsePackets(XMPPTCPConnection.java:992)
at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.access$700(XMPPTCPConnection.java:898)
at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader$1.run(XMPPTCPConnection.java:921)
at java.lang.Thread.run(Thread.java:919)
2020-07-17 11:26:36.268 28946-31195/org.atalk.android D/SMACK: RECV (1):
Idle connection
2020-07-17 11:26:36.288 28946-31211/org.atalk.android W/aTalk: [110667] org.jivesoftware.smack.AbstractXMPPConnection.callConnectionClosedOnErrorListener() Connection XMPPTCPConnection[not-authenticated] (1) closed with error
org.jivesoftware.smack.XMPPException$StreamErrorException: connection-timeout You can read more about the meaning of this stream error at http://xmpp.org/rfcs/rfc6120.html#streams-error-conditions
Idle connection
at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.parsePackets(XMPPTCPConnection.java:966)
at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.access$700(XMPPTCPConnection.java:898)
at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader$1.run(XMPPTCPConnection.java:921)
at java.lang.Thread.run(Thread.java:919)
```",
382,https://api.github.com/repos/processone/ejabberd/issues/3331,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3331/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3331/comments,https://api.github.com/repos/processone/ejabberd/issues/3331/events,https://github.com/processone/ejabberd/issues/3331,658183746,MDU6SXNzdWU2NTgxODM3NDY=,3331,Shared roster create error with default_db sql,"{'login': 'gizmo15', 'id': 8877014, 'node_id': 'MDQ6VXNlcjg4NzcwMTQ=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/8877014?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/gizmo15', 'html_url': 'https://github.com/gizmo15', 'followers_url': 'https://api.github.com/users/gizmo15/followers', 'following_url': 'https://api.github.com/users/gizmo15/following{/other_user}', 'gists_url': 'https://api.github.com/users/gizmo15/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/gizmo15/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/gizmo15/subscriptions', 'organizations_url': 'https://api.github.com/users/gizmo15/orgs', 'repos_url': 'https://api.github.com/users/gizmo15/repos', 'events_url': 'https://api.github.com/users/gizmo15/events{/privacy}', 'received_events_url': 'https://api.github.com/users/gizmo15/received_events', 'type': 'User', 'site_admin': False}","[{'id': 346845174, 'node_id': 'MDU6TGFiZWwzNDY4NDUxNzQ=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Note:Already%20Fixed', 'name': 'Note:Already Fixed', 'color': 'c7def8', 'default': False, 'description': None}]",closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/42', 'html_url': 'https://github.com/processone/ejabberd/milestone/42', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/42/labels', 'id': 5706346, 'node_id': 'MDk6TWlsZXN0b25lNTcwNjM0Ng==', 'number': 42, 'title': 'ejabberd 20.07', 'description': 'https://www.process-one.net/blog/ejabberd-20-07/', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 20, 'state': 'closed', 'created_at': '2020-07-28T07:56:43Z', 'updated_at': '2020-07-31T14:08:13Z', 'due_on': '2020-07-30T07:00:00Z', 'closed_at': '2020-07-31T14:05:45Z'}",2,2020-07-16T13:10:06Z,2020-07-31T14:04:12Z,2020-07-20T08:22:55Z,NONE,,,"Hi,
- ejabberd version: 20.04
- Erlang version: `Erlang/OTP 21`
- OS: Linux Ubuntu 18.04
- Installed from: official deb/rpm
- Backend : SQL
My SQL configuration :
```
host_config:
ejabberd.lab.loc:
auth_method: [sql]
default_db: sql
sql_type: mysql
sql_server: ""localhost""
sql_database: ""ejabberd""
sql_username: ""USER""
sql_password: ""PASSWORD""
new_sql_schema: true
```
I have an issue when i try to create a share roster group.
I tried two differents way : with the webamin page and with ejabberdctl.
With Webamin :
I use this url : https://ejabberd.lab.loc:5443/admin/server/ejabberd.lab.loc/shared-roster/group/. When i create a group, i enter a group name (like test06) and i click on create (Ajouter in french), it's ok i have the group in the list but, if i click on it, i have a message ""not found"" and in the logs i have :
```
2020-07-16 14:40:30.754 [error] <0.563.0>@ejabberd_hooks:safe_apply:240 Hook webadmin_page_host crashed when running mod_shared_roster:webadmin_page/3:
** exception error: bad argument
in function lists:keysearch/3
called as lists:keysearch(label,1,{ok,[]})
in call from mod_shared_roster:get_opt/3 (src/mod_shared_roster.erl, line 1144)
in call from mod_shared_roster:shared_roster_group/4 (src/mod_shared_roster.erl, line 970)
in call from mod_shared_roster:webadmin_page/3 (src/mod_shared_roster.erl, line 888)
in call from ejabberd_hooks:safe_apply/4 (src/ejabberd_hooks.erl, line 236)
in call from ejabberd_hooks:run_fold1/4 (src/ejabberd_hooks.erl, line 217)
in call from ejabberd_web_admin:process_admin/3 (src/ejabberd_web_admin.erl, line 558)
in call from ejabberd_http:process/2 (src/ejabberd_http.erl, line 370)
** Arg 1 = []
** Arg 2 = <<""ejabberd.lab.loc"">>
** Arg 3 = {request,'GET',[<<""shared-roster"">>,<<""test06"">>],<<""/admin/server/ejabberd.lab.loc/shared-roster/test06/"">>,[{nokey,<<>>}],{<<""admin"">>,<<""ejabberd.lab.loc"">>},{<<""admin"">>,<<""PASSWORD"">>},<<""fr-FR"">>,<<>>,{{0,0,0,0,0,65535,49320,2574},44680},<<""ejabberd.lab.loc"">>,5443,[{tls,true},{request_handlers,[{[<<""admin"">>],ejabberd_web_admin},{[<<""api"">>],mod_http_api},{[<<""bosh"">>],mod_bosh},{[<<""captcha"">>],ejabberd_captcha},{[<<""upload"">>],mod_http_upload},{[<<""ws"">>],ejabberd_http_ws},{[<<""oauth"">>],ejabberd_oauth}]},{protocol_options,<<""no_sslv3|no_tlsv1|no_tlsv1_1|cipher_server_preference|no_compression"">>}],https,[{<<""Upgrade-Insecure-Requests"">>,<<""1"">>},{'Cookie',<<""_ga=GA1.2.594101142.1562579244; experimentation_subject_id=Ijc2NWQwZjgxLTk5MGQtNDI3Ny05YjBhLWVhNzRkODhjMWFlNyI%3D--65dce06a3a0e6aca9872af45d9b8f97f537b49d8"">>},{'Referer',<<""https://ejabberd.lab.loc:5443/admin/server/ejabberd.lab.loc/shared-roster/"">>},{'Connection',<<""keep-alive"">>},{'Authorization',<<""Basic YWRtaW46TmFuMGNvZCY="">>},{'Accept-Encoding',<<""gzip, deflate, br"">>},{'Accept-Language',<<""fr-FR"">>},{'Accept',<<""text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8"">>},{'User-Agent',<<""Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:78.0) Gecko/20100101 Firefox/78.0"">>},{'Host',<<""ejabberd.lab.loc:5443"">>}],0,fast_tls,{tlssock,#Port<0.49>,#Ref<0.1871550425.761659393.103662>}}
```
If i restart ejabberd, i can click on the group name and it's work.
With ejabberdctl :
```
root@ejabberd.lab.loc:~$ /opt/ejabberd-20.04/bin/ejabberdctl srg_create group2 ""ejabberd.lab.loc"" ""test05"" ""groupe test"" ""group2""
root@ejabberd.lab.loc:~$ /opt/ejabberd-20.04/bin/ejabberdctl srg_list ""ejabberd.lab.loc""
group
group2
test04
root@ejabberd.lab.loc:~$ /opt/ejabberd-20.04/bin/ejabberdctl srg_get_info group2 ""ejabberd.lab.loc""
Unhandled exception occurred executing the command:
** exception error: no case clause matching
{ok,[{name,<<""test05"">>},
{displayed_groups,[<<""group2"">>]},
{description,<<""groupe test"">>}]}
in function mod_admin_extra:srg_get_info/2 (src/mod_admin_extra.erl, line 1452)
in call from ejabberd_ctl:call_command/4 (src/ejabberd_ctl.erl, line 315)
in call from ejabberd_ctl:try_call_command/4 (src/ejabberd_ctl.erl, line 280)
in call from ejabberd_ctl:process2/4 (src/ejabberd_ctl.erl, line 233)
in call from ejabberd_ctl:process/2 (src/ejabberd_ctl.erl, line 211)
in call from rpc:'-handle_call_call/6-fun-0-'/5 (rpc.erl, line 197)
```
I both case, if i check in the database in the tables rosterusers or rostergroups, both are empty.
eJabberd can write in the database because the admin user is correctly insert.
If i comment default_db: sql, it work correctly.
What did i miss?
Thanks",
383,https://api.github.com/repos/processone/ejabberd/issues/3330,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3330/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3330/comments,https://api.github.com/repos/processone/ejabberd/issues/3330/events,https://github.com/processone/ejabberd/issues/3330,656012687,MDU6SXNzdWU2NTYwMTI2ODc=,3330,MUC/Sub Persist Roles of a Subscriber,"{'login': 'partikmadan', 'id': 4409142, 'node_id': 'MDQ6VXNlcjQ0MDkxNDI=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/4409142?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/partikmadan', 'html_url': 'https://github.com/partikmadan', 'followers_url': 'https://api.github.com/users/partikmadan/followers', 'following_url': 'https://api.github.com/users/partikmadan/following{/other_user}', 'gists_url': 'https://api.github.com/users/partikmadan/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/partikmadan/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/partikmadan/subscriptions', 'organizations_url': 'https://api.github.com/users/partikmadan/orgs', 'repos_url': 'https://api.github.com/users/partikmadan/repos', 'events_url': 'https://api.github.com/users/partikmadan/events{/privacy}', 'received_events_url': 'https://api.github.com/users/partikmadan/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",open,False,,[],,0,2020-07-13T17:18:19Z,2020-07-13T17:18:19Z,,NONE,,,"**Is your feature request related to a problem? Please describe.**
Currently roles are not part of subscribers list and not persisted in db.
**Describe the solution you'd like**
To make the role persistent just like affiliation.
**Describe alternatives you've considered**
Will look into updating the source code if there is no other way.
**Additional context**
`As to implement a modern chat app i need to distinguish visitor from participants in a muc-sub enabled muc room. Currently i am not able to think of any solution for that.`",
384,https://api.github.com/repos/processone/ejabberd/issues/3329,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3329/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3329/comments,https://api.github.com/repos/processone/ejabberd/issues/3329/events,https://github.com/processone/ejabberd/issues/3329,655579608,MDU6SXNzdWU2NTU1Nzk2MDg=,3329,Custom modules from Elixir not loading as expected when ejabberd embedded,"{'login': 'foggy1', 'id': 19862658, 'node_id': 'MDQ6VXNlcjE5ODYyNjU4', 'avatar_url': 'https://avatars1.githubusercontent.com/u/19862658?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/foggy1', 'html_url': 'https://github.com/foggy1', 'followers_url': 'https://api.github.com/users/foggy1/followers', 'following_url': 'https://api.github.com/users/foggy1/following{/other_user}', 'gists_url': 'https://api.github.com/users/foggy1/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/foggy1/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/foggy1/subscriptions', 'organizations_url': 'https://api.github.com/users/foggy1/orgs', 'repos_url': 'https://api.github.com/users/foggy1/repos', 'events_url': 'https://api.github.com/users/foggy1/events{/privacy}', 'received_events_url': 'https://api.github.com/users/foggy1/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179040924, 'node_id': 'MDU6TGFiZWwxNzkwNDA5MjQ=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Elixir', 'name': 'Component:Elixir', 'color': 'bfe5bf', 'default': False, 'description': None}]",closed,False,,[],,1,2020-07-13T04:54:52Z,2020-07-21T05:40:18Z,2020-07-21T05:40:17Z,NONE,,,"## Environment
- ejabberd version: 20.4.0
- Erlang version: Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.7.2.1
- OS: Void Linux
- Installed from: asdf (via kerl)
## Configuration
```yaml
ModPresenceDemo: {}
```
## Errors from error.log/crash.log
No errors
## Bug description
I ran through the (admittedly old) [Elixir sips guide](https://www.process-one.net/blog/elixir-sips-ejabberd-with-elixir-part-1/) on custom Elixir mods for ejabberd, except instead of creating the module in a fresh ejabberd install, I created it in a parent Elixir app where ejabberd is a mix dependency. When I do that, the following happens:
```
[critical] Failed to start ejabberd application: Invalid value of option modules: 'ModPresenceDemo' is not a ejabberd module
```
This problem appears to be referenced in #1327 but the resolution is unclear to me. Editing some `ejabberdctl` opts appear to be referenced, but running the app embedded it's not clear to me whether or not this applies
On a whim I also tried the following in my Elixir config:
```
config :ejabberd,
external_beams: '_build/dev/lib/ex_ejabberd/ebin/'
```
To try to see if it would read the compiled beam files if I forced an explicit reference, but the error continued.
Is this just not possible? Should I be developing mods and moving them to be used somewhere else?",
385,https://api.github.com/repos/processone/ejabberd/issues/3328,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3328/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3328/comments,https://api.github.com/repos/processone/ejabberd/issues/3328/events,https://github.com/processone/ejabberd/issues/3328,655338636,MDU6SXNzdWU2NTUzMzg2MzY=,3328,Couldn't find any to add reactions to messages in muc,"{'login': 'partikmadan', 'id': 4409142, 'node_id': 'MDQ6VXNlcjQ0MDkxNDI=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/4409142?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/partikmadan', 'html_url': 'https://github.com/partikmadan', 'followers_url': 'https://api.github.com/users/partikmadan/followers', 'following_url': 'https://api.github.com/users/partikmadan/following{/other_user}', 'gists_url': 'https://api.github.com/users/partikmadan/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/partikmadan/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/partikmadan/subscriptions', 'organizations_url': 'https://api.github.com/users/partikmadan/orgs', 'repos_url': 'https://api.github.com/users/partikmadan/repos', 'events_url': 'https://api.github.com/users/partikmadan/events{/privacy}', 'received_events_url': 'https://api.github.com/users/partikmadan/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-07-12T06:05:28Z,2020-07-13T17:08:59Z,2020-07-13T17:08:59Z,NONE,,,"## Environment
- ejabberd version: 20.04
- OS: Mac
- Installed from: source
## Bug description
Hi,
Opening this as found no help from search engines.
We're exploring some different ways to add metadata to our messages. In our case, we're talking about, for example, adding reactions to the messages, such as likes or unlikes. Let's say, in a muc room where anyone can add a like or an unlike to any message.
The implementation of this feature implies some tasks such as:
Communication to add/delete a new reaction
Communication to retrieve/get the reactions of a message
Mechanism to persist the metadata related with a message
What you consider a good way to implement this feature in Ejabberd and in the XMPP framework?
Any idea, suggestion or advice will be welcome.
Thanks a lot!
",
386,https://api.github.com/repos/processone/ejabberd/issues/3327,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3327/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3327/comments,https://api.github.com/repos/processone/ejabberd/issues/3327/events,https://github.com/processone/ejabberd/issues/3327,655057610,MDU6SXNzdWU2NTUwNTc2MTA=,3327,cluster_join fails on ipv6-only hostnames,"{'login': 'MEschenbacher', 'id': 5395035, 'node_id': 'MDQ6VXNlcjUzOTUwMzU=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/5395035?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/MEschenbacher', 'html_url': 'https://github.com/MEschenbacher', 'followers_url': 'https://api.github.com/users/MEschenbacher/followers', 'following_url': 'https://api.github.com/users/MEschenbacher/following{/other_user}', 'gists_url': 'https://api.github.com/users/MEschenbacher/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/MEschenbacher/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/MEschenbacher/subscriptions', 'organizations_url': 'https://api.github.com/users/MEschenbacher/orgs', 'repos_url': 'https://api.github.com/users/MEschenbacher/repos', 'events_url': 'https://api.github.com/users/MEschenbacher/events{/privacy}', 'received_events_url': 'https://api.github.com/users/MEschenbacher/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,6,2020-07-10T21:58:48Z,2020-07-17T10:18:23Z,2020-07-17T10:18:23Z,NONE,,,"## Environment
- ejabberd version: 20.04 debian buster backports
- Erlang version: `Erlang (SMP,ASYNC_THREADS) (BEAM) emulator version 10.2.4`
- OS: Linux (Debian)
- Installed from: debian buster backports
## Errors from error.log/crash.log
No errors
## Bug description
I'm trying to join nodes which hostnames do resolve only to ipv6 addresses:
```
ejabberdctl --no-timeout join_cluster 'ejabberd@xmpp1.mydomain.local'
Error: error
Error: {no_ping,'ejabberd@xmpp1.mydomain.local'}
````
`tcpdump -ni any port 53 or host xmpp1.mydomain.local` shows only the DNS lookup for the `A` record, ignoring possible `AAAA` records:
```
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on any, link-type LINUX_SLL (Linux cooked), capture size 262144 bytes
23:52:41.029291 IP6 2001:db8::2.33672 > 2001:db8::3.53: 57464+ A? xmpp1.mydomain.local. (33)
23:52:41.030948 IP6 2001:db8::3.53 > 2001:db8::2.33672: 57464 0/1/0 (84)
```
```
$ host xmpp1.mydomain.local
xmpp1.mydomain.local has IPv6 address 2001:db8::4
```",
387,https://api.github.com/repos/processone/ejabberd/issues/3326,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3326/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3326/comments,https://api.github.com/repos/processone/ejabberd/issues/3326/events,https://github.com/processone/ejabberd/issues/3326,654470983,MDU6SXNzdWU2NTQ0NzA5ODM=,3326,muc_mod not load,"{'login': 'Socketsj', 'id': 30768657, 'node_id': 'MDQ6VXNlcjMwNzY4NjU3', 'avatar_url': 'https://avatars3.githubusercontent.com/u/30768657?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Socketsj', 'html_url': 'https://github.com/Socketsj', 'followers_url': 'https://api.github.com/users/Socketsj/followers', 'following_url': 'https://api.github.com/users/Socketsj/following{/other_user}', 'gists_url': 'https://api.github.com/users/Socketsj/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Socketsj/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Socketsj/subscriptions', 'organizations_url': 'https://api.github.com/users/Socketsj/orgs', 'repos_url': 'https://api.github.com/users/Socketsj/repos', 'events_url': 'https://api.github.com/users/Socketsj/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Socketsj/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/42', 'html_url': 'https://github.com/processone/ejabberd/milestone/42', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/42/labels', 'id': 5706346, 'node_id': 'MDk6TWlsZXN0b25lNTcwNjM0Ng==', 'number': 42, 'title': 'ejabberd 20.07', 'description': 'https://www.process-one.net/blog/ejabberd-20-07/', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 20, 'state': 'closed', 'created_at': '2020-07-28T07:56:43Z', 'updated_at': '2020-07-31T14:08:13Z', 'due_on': '2020-07-30T07:00:00Z', 'closed_at': '2020-07-31T14:05:45Z'}",2,2020-07-10T02:52:01Z,2020-07-31T14:04:11Z,2020-07-13T01:54:02Z,NONE,,,"## Environment
- ejabberd version: 20.0.4
- Erlang version: `erl +V`
- OS: Windows10
- Installed from: official binary installer
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
hosts:
- ""BUDPC056""
......
modules:
mod_muc:
access:
- allow: all
access_create: muc_create
access_persistent: muc_create
access_mam:
- allow
default_room_options:
allow_subscription: true # enable MucSub
mam: true
max_users: 2000
mod_muc_admin: {}
...
```
## Errors from error.log/crash.log
No errors
## Bug description
I use ejabberdctl to create MUC room but get this, how can I do?
```shell
$ ./ejabberdctl create_room testRoom conference.localhost localhost
Unhandled exception occurred executing the command:
** exception error: {module_not_loaded,mod_muc,<<""localhost"">>}
in function gen_mod:get_module_opts/2 (src/gen_mod.erl, line 338)
in call from gen_mod:get_module_opt/3 (src/gen_mod.erl, line 318)
in call from mod_muc_admin:create_room_with_opts/4 (src/mod_muc_admin.erl, line 635)
in call from ejabberd_ctl:call_command/4 (src/ejabberd_ctl.erl, line 315)
in call from ejabberd_ctl:try_call_command/4 (src/ejabberd_ctl.erl, line 280)
in call from ejabberd_ctl:process2/4 (src/ejabberd_ctl.erl, line 233)
in call from ejabberd_ctl:process/2 (src/ejabberd_ctl.erl, line 211)
in call from rpc:'-handle_call_call/6-fun-0-'/5 (rpc.erl, line 197)
```
it means mod_muc not load but I have the muc_mod
I use the xmpp domain , but still has error
```shell
$ ./ejabberdctl create_room testRoom conference.BUDPC056 BUDPC056
Unhandled exception occurred executing the command:
** exception error: {module_not_loaded,mod_muc,<<""BUDPC056"">>}
in function gen_mod:get_module_opts/2 (src/gen_mod.erl, line 338)
in call from gen_mod:get_module_opt/3 (src/gen_mod.erl, line 318)
in call from mod_muc_admin:create_room_with_opts/4 (src/mod_muc_admin.erl, line 635)
in call from ejabberd_ctl:call_command/4 (src/ejabberd_ctl.erl, line 315)
in call from ejabberd_ctl:try_call_command/4 (src/ejabberd_ctl.erl, line 280)
in call from ejabberd_ctl:process2/4 (src/ejabberd_ctl.erl, line 233)
in call from ejabberd_ctl:process/2 (src/ejabberd_ctl.erl, line 211)
in call from rpc:'-handle_call_call/6-fun-0-'/5 (rpc.erl, line 197)
```
I try to Discovering support on MUC service like [example](https://docs.ejabberd.im/developer/xmpp-clients-bots/extensions/muc-sub/)
```xml
send:
```
recv:
```xml
http://jabber.org/network/serverinfo
```
can‘t get any thing about MUC, It means mod_muc not loaded? How can I load this mod
",
388,https://api.github.com/repos/processone/ejabberd/issues/3325,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3325/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3325/comments,https://api.github.com/repos/processone/ejabberd/issues/3325/events,https://github.com/processone/ejabberd/issues/3325,654312809,MDU6SXNzdWU2NTQzMTI4MDk=,3325,Vcard4 support,"{'login': 'ingoj', 'id': 18173881, 'node_id': 'MDQ6VXNlcjE4MTczODgx', 'avatar_url': 'https://avatars0.githubusercontent.com/u/18173881?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ingoj', 'html_url': 'https://github.com/ingoj', 'followers_url': 'https://api.github.com/users/ingoj/followers', 'following_url': 'https://api.github.com/users/ingoj/following{/other_user}', 'gists_url': 'https://api.github.com/users/ingoj/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ingoj/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ingoj/subscriptions', 'organizations_url': 'https://api.github.com/users/ingoj/orgs', 'repos_url': 'https://api.github.com/users/ingoj/repos', 'events_url': 'https://api.github.com/users/ingoj/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ingoj/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",open,False,,[],,3,2020-07-09T19:59:51Z,2020-08-13T13:38:57Z,,NONE,,,"Hi!
As reported in https://github.com/tigase/beagle-im/issues/37#issue-654294277 for BeagleIM client there seems some kind of incompatibility between BeagleIM (and likely the other Tigase clients as well) and ejabberd that results in not being able to edit the user profile on ejabberd with BeagleIM.
In BeagleIM XML log you can find this:
``
In ejabberd I've configured `mod_version: {}` which does XEP-0092, so no vcard4.
Because Beagle/Siskin are one of the rare macOS/IOS clients, it would be good when the server-side support for those clients would be as good as possible. Editing the user profile is most likely one of the things that user want to do, like uploading avatar pics and such. ",
389,https://api.github.com/repos/processone/ejabberd/issues/3324,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3324/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3324/comments,https://api.github.com/repos/processone/ejabberd/issues/3324/events,https://github.com/processone/ejabberd/issues/3324,653586951,MDU6SXNzdWU2NTM1ODY5NTE=,3324,Crash when creating new MUC log file,"{'login': 'z814', 'id': 65157632, 'node_id': 'MDQ6VXNlcjY1MTU3NjMy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/65157632?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/z814', 'html_url': 'https://github.com/z814', 'followers_url': 'https://api.github.com/users/z814/followers', 'following_url': 'https://api.github.com/users/z814/following{/other_user}', 'gists_url': 'https://api.github.com/users/z814/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/z814/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/z814/subscriptions', 'organizations_url': 'https://api.github.com/users/z814/orgs', 'repos_url': 'https://api.github.com/users/z814/repos', 'events_url': 'https://api.github.com/users/z814/events{/privacy}', 'received_events_url': 'https://api.github.com/users/z814/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179040838, 'node_id': 'MDU6TGFiZWwxNzkwNDA4Mzg=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:MUC', 'name': 'Component:MUC', 'color': 'fad8c7', 'default': False, 'description': None}]",closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/42', 'html_url': 'https://github.com/processone/ejabberd/milestone/42', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/42/labels', 'id': 5706346, 'node_id': 'MDk6TWlsZXN0b25lNTcwNjM0Ng==', 'number': 42, 'title': 'ejabberd 20.07', 'description': 'https://www.process-one.net/blog/ejabberd-20-07/', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 20, 'state': 'closed', 'created_at': '2020-07-28T07:56:43Z', 'updated_at': '2020-07-31T14:08:13Z', 'due_on': '2020-07-30T07:00:00Z', 'closed_at': '2020-07-31T14:05:45Z'}",1,2020-07-08T20:47:50Z,2020-07-31T14:08:13Z,2020-07-31T14:08:13Z,NONE,,,"## Environment
- ejabberd version: 20.04
- Erlang version: `erl +V`
- OS: Linux (Debian GNU/Linux 8.11 (jessie))
- Installed from: official deb/rpm
## Configuration
```yaml
...
mod_muc_log:
access_log: muc_create
outdir: ""/var/www/html/conference/""
...
```
## Errors from error.log/crash.log
```
2020-07-08 23:26:46.847 [error] <0.527.0>@mod_muc_log:handle_cast:127
{badarg,[{erlang,list_to_binary,[[[1057,1088,1077,1076,1072],44,32,""8"",32,[1080,1102,1083,1103],32,""2020""]],[]},
{mod_muc_log,get_dateweek,2,[{file,""src/mod_muc_log.erl""},{line,488}]},
{mod_muc_log,add_message_to_log,5,[{file,""src/mod_muc_log.erl""},{line,332}]},
{mod_muc_log,handle_cast,2,[{file,""src/mod_muc_log.erl""},{line,126}]},
{gen_server,try_dispatch,4,[{file,""gen_server.erl""},{line,637}
]},{gen_server,handle_msg,6,[{file,""gen_server.erl""},{line,711}]},{proc_lib,init_p_do_apply,3,[{file,""proc_lib.erl""},{line,249}]}]}
```
## Bug description
After upgrading from version 18.12.1 to version 20.04, an error began to appear.
This error appears when a new log file is created (when you first write to the log file per day). This creates a log file of zero size.
Further writing to the log file occurs without error.
",
390,https://api.github.com/repos/processone/ejabberd/issues/3323,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3323/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3323/comments,https://api.github.com/repos/processone/ejabberd/issues/3323/events,https://github.com/processone/ejabberd/issues/3323,653316829,MDU6SXNzdWU2NTMzMTY4Mjk=,3323,Other Captcha options implementation,"{'login': 'member7me', 'id': 66087479, 'node_id': 'MDQ6VXNlcjY2MDg3NDc5', 'avatar_url': 'https://avatars0.githubusercontent.com/u/66087479?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/member7me', 'html_url': 'https://github.com/member7me', 'followers_url': 'https://api.github.com/users/member7me/followers', 'following_url': 'https://api.github.com/users/member7me/following{/other_user}', 'gists_url': 'https://api.github.com/users/member7me/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/member7me/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/member7me/subscriptions', 'organizations_url': 'https://api.github.com/users/member7me/orgs', 'repos_url': 'https://api.github.com/users/member7me/repos', 'events_url': 'https://api.github.com/users/member7me/events{/privacy}', 'received_events_url': 'https://api.github.com/users/member7me/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",open,False,,[],,1,2020-07-08T13:52:43Z,2020-07-08T14:11:51Z,,NONE,,,"Hi!
I have a suggestion. Now it's a lot of spam and bots in xmpp. They exploiting weak captcha and lack of serios antispam, like in email protocol.
I suggest to implement at least **new and modern captcha options**. Like Keycaptcha, ReCAPTCHA (but it's worth) and so on. Now it's a lot of new and updated captcha's.
Because that captcha, that now exists in ejabberd, it's very weak and unserious. It's like from 2003. Spammers exploit it and registering spam bots.
What do you think about this? Is it possible suggestion?",
391,https://api.github.com/repos/processone/ejabberd/issues/3322,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3322/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3322/comments,https://api.github.com/repos/processone/ejabberd/issues/3322/events,https://github.com/processone/ejabberd/issues/3322,652420647,MDU6SXNzdWU2NTI0MjA2NDc=,3322,Mqtt Service,"{'login': 'sergioxdev', 'id': 32037075, 'node_id': 'MDQ6VXNlcjMyMDM3MDc1', 'avatar_url': 'https://avatars1.githubusercontent.com/u/32037075?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/sergioxdev', 'html_url': 'https://github.com/sergioxdev', 'followers_url': 'https://api.github.com/users/sergioxdev/followers', 'following_url': 'https://api.github.com/users/sergioxdev/following{/other_user}', 'gists_url': 'https://api.github.com/users/sergioxdev/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/sergioxdev/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/sergioxdev/subscriptions', 'organizations_url': 'https://api.github.com/users/sergioxdev/orgs', 'repos_url': 'https://api.github.com/users/sergioxdev/repos', 'events_url': 'https://api.github.com/users/sergioxdev/events{/privacy}', 'received_events_url': 'https://api.github.com/users/sergioxdev/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",open,False,,[],,1,2020-07-07T15:33:40Z,2020-08-19T16:27:57Z,,NONE,,,"Hello guys
congratulations for the work you are carrying out, I installed a few days ago on docker, ejabberd, with the following features activated:
- ssl
- mysql
- web-admin
- mqtt
from the interface I can create users, I am testing the mqtt service, I have created users and roles as shown in the example by putting them on the config file ejabberd.yml; so far all quite simple
I have questions:
- can I register new users / devices automatically after making a login request, perhaps filtering them by mac?
- can each user / device only have access to a specific topic both as a subscriber and as a publisher?
- it is possible to store in the database:
-- acl
-- access_publish
-- access_subscribe
Thank you in advance
for any additional information
",
392,https://api.github.com/repos/processone/ejabberd/issues/3321,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3321/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3321/comments,https://api.github.com/repos/processone/ejabberd/issues/3321/events,https://github.com/processone/ejabberd/issues/3321,651062735,MDU6SXNzdWU2NTEwNjI3MzU=,3321,ACME is using identifier dns instead of http upon request_certificate,"{'login': 'a-zen', 'id': 7476868, 'node_id': 'MDQ6VXNlcjc0NzY4Njg=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/7476868?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/a-zen', 'html_url': 'https://github.com/a-zen', 'followers_url': 'https://api.github.com/users/a-zen/followers', 'following_url': 'https://api.github.com/users/a-zen/following{/other_user}', 'gists_url': 'https://api.github.com/users/a-zen/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/a-zen/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/a-zen/subscriptions', 'organizations_url': 'https://api.github.com/users/a-zen/orgs', 'repos_url': 'https://api.github.com/users/a-zen/repos', 'events_url': 'https://api.github.com/users/a-zen/events{/privacy}', 'received_events_url': 'https://api.github.com/users/a-zen/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-07-05T12:39:28Z,2020-07-06T21:30:21Z,2020-07-06T21:30:21Z,NONE,,,"## Environment
- ejabberd version: 20.04
- Erlang version: Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.2.1
- OS: Linux ???
- Installed from: docker ejabberd/ecs
## Errors from error.log/crash.log
No errors
## Bug description
The request_certificate command fails with the following error:
```
2020-07-05 06:31:11.248571+00:00 [error] Failed to request certificate for $domain, upload.$domain and 3 more hosts: HTTP error: etimedout
```
I turned on debugging to see what happens and noticed the following in the ACME communication:
```
2020-07-05 12:35:31.564345+00:00 [debug] HTTP response: {{""HTTP/1.1"",200,""OK""},
[{""cache-control"",""public, max-age=0, no-cache""},
{""connection"",""keep-alive""},
{""date"",""Sun, 05 Jul 2020 12:35:31 GMT""},
{""server"",""nginx""},
{""content-length"",""343""},
{""content-type"",""application/json""},
{""link"",
"";rel=\""index\""""},
{""replay-nonce"",
""0002v_FcnulcjE6eYWMnu1IVHkgTzZN52NQER8RWimc8t5Y""},
{""x-frame-options"",""DENY""},
{""strict-transport-security"",""max-age=604800""}],
<<""{\n \""status\"": \""pending\"",\n \""expires\"": \""2020-07-12T12:34:57Z\"",\n \""identifiers\"": [\n {\n \""type\"": \""dns\"",\n \""value\"": \""$domain\""\n }\n ],\n \""authorizations\"": [\n \""https://acme-staging-v02.api.letsencrypt.org/acme/authz-v3/72607588\""\n ],\n \""finalize\"": \""https://acme-staging-
v02.api.letsencrypt.org/acme/finalize/14528000/109895953\""\n}"">>}
```
For some reason the identifier is set to dns which will not work. I need ACME to use the http-01 identifier which will then contact the ejabberd_acme exposed module.
Is there a way to force the http identifier? Does anybody know why the dns identifier is used?",
393,https://api.github.com/repos/processone/ejabberd/issues/3320,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3320/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3320/comments,https://api.github.com/repos/processone/ejabberd/issues/3320/events,https://github.com/processone/ejabberd/issues/3320,650812279,MDU6SXNzdWU2NTA4MTIyNzk=,3320,Chat doesn't load after certain time of inactivity,"{'login': 'dineshrawat11', 'id': 52068431, 'node_id': 'MDQ6VXNlcjUyMDY4NDMx', 'avatar_url': 'https://avatars3.githubusercontent.com/u/52068431?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dineshrawat11', 'html_url': 'https://github.com/dineshrawat11', 'followers_url': 'https://api.github.com/users/dineshrawat11/followers', 'following_url': 'https://api.github.com/users/dineshrawat11/following{/other_user}', 'gists_url': 'https://api.github.com/users/dineshrawat11/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dineshrawat11/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dineshrawat11/subscriptions', 'organizations_url': 'https://api.github.com/users/dineshrawat11/orgs', 'repos_url': 'https://api.github.com/users/dineshrawat11/repos', 'events_url': 'https://api.github.com/users/dineshrawat11/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dineshrawat11/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-07-04T02:21:11Z,2020-07-23T12:36:00Z,2020-07-23T12:35:59Z,NONE,,,"## Environment
- ejabberd version: 20.03
- Erlang version: `10.3.4`
- OS: Ubuntu 18.04.4 LTS (GNU/Linux 5.3.0-1023-aws x86_64)
```yaml
loglevel: 5
...
""public commands"":
who: all
what:
- status
- connected_users_number
- register
mod_offline:
access_max_user_messages: max_user_offline_messages
db_type: sql
mod_ping:
send_pings: true
ping_interval: 10
ping_ack_timeout: 15
timeout_action: kill
```
## Errors from ejabberd.log
```
2020-07-04 01:57:37.031 [debug] <0.737.0>@mod_bosh:process:70 Incoming data: <<""urn:xmpp:mam:2asthaanand21@thirsty-biker.com"">>
2020-07-04 01:57:37.031 [debug] <0.737.0>@ejabberd_bosh:bosh_response_with_msg:952 Send error reply:{body,<<""Missing 'to' attribute"">>,[{type,<<""terminate"">>},{condition,<<""improper-addressing"">>}],[],0}
** Receiced body: {body,<<>>,[{rid,62769438}],[{xmlstreamelement,{xmlel,<<""iq"">>,[{<<""xmlns"">>,<<""jabber:client"">>},{<<""id"">>,<<""b6154905-f154-4abf-bec5-47af3b1bba7c:sendIQ"">>},{<<""to"">>,<<""dineshrawat.mca@thirsty-biker.com"">>},{<<""type"">>,<<""set"">>}],[{xmlel,<<""query"">>,[{<<""xmlns"">>,<<""urn:xmpp:mam:2"">>}],[{xmlel,<<""x"">>,[{<<""xmlns"">>,<<""jabber:x:data"">>},{<<""type"">>,<<""submit"">>}],[{xmlel,<<""field"">>,[{<<""type"">>,<<""hidden"">>},{<<""var"">>,<<""FORM_TYPE"">>}],[{xmlel,<<""value"">>,[],[{xmlcdata,<<""urn:xmpp:mam:2"">>}]}]},{xmlel,<<""field"">>,[{<<""var"">>,<<""with"">>}],[{xmlel,<<""value"">>,[],[{xmlcdata,<<""asthaanand21@thirsty-biker.com"">>}]}]}]},{xmlel,<<""set"">>,[{<<""xmlns"">>,<<""http://jabber.org/protocol/rsm"">>}],[]}]}]}}],473}
2020-07-04 01:57:37.231 [debug] <0.738.0>@ejabberd_http:init:129 S: [{[<<""bosh"">>],mod_bosh},{[<<""admin"">>],ejabberd_web_admin},{[<<""admin"">>],ejabberd_web_admin},{[<<"".well-known"">>,<<""acme-challenge"">>],ejabberd_acme},{[<<""websocket"">>],ejabberd_http_ws},{[<<""bosh"">>],mod_bosh}]
2020-07-04 01:57:37.232 [info] <0.386.0>@ejabberd_listener:accept:256 (<0.738.0>) Accepted connection [::ffff:139.167.132.18]:43710 -> [::ffff:172.31.30.151]:5280
```
## Strophe logs
2020-07-04T01:57:37.065Z Strophe connection with bosh service ,http://some-ip:5280/bosh
2020-07-04T01:57:37.068Z EjabService [Connection] Strophe is Disconnected with status 6
## Bug description
In my ionic 4 application, I am using strophe.js to connect to Ejabbered server. In the application after status connected I am able to see chats successfully but when the user is inactive for sometime chats stops coming.
[Strope service file](https://www.pastiebin.com/5effe6ad9346b)
[.yml file](https://www.pastiebin.com/5effe74130191)
Only problem is chats doesn't load after certain time of inactivity!!",
394,https://api.github.com/repos/processone/ejabberd/issues/3319,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3319/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3319/comments,https://api.github.com/repos/processone/ejabberd/issues/3319/events,https://github.com/processone/ejabberd/issues/3319,649886211,MDU6SXNzdWU2NDk4ODYyMTE=,3319,API call /api/reload_config - result code != 0 when success,"{'login': 'sarsonj', 'id': 925756, 'node_id': 'MDQ6VXNlcjkyNTc1Ng==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/925756?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/sarsonj', 'html_url': 'https://github.com/sarsonj', 'followers_url': 'https://api.github.com/users/sarsonj/followers', 'following_url': 'https://api.github.com/users/sarsonj/following{/other_user}', 'gists_url': 'https://api.github.com/users/sarsonj/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/sarsonj/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/sarsonj/subscriptions', 'organizations_url': 'https://api.github.com/users/sarsonj/orgs', 'repos_url': 'https://api.github.com/users/sarsonj/repos', 'events_url': 'https://api.github.com/users/sarsonj/events{/privacy}', 'received_events_url': 'https://api.github.com/users/sarsonj/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,5,2020-07-02T12:18:53Z,2020-07-20T08:47:25Z,2020-07-20T08:47:25Z,NONE,,,"## Environment
- ejabberd version: 20.04
## Bug description
We are using API call reload_config to trigger ejabberd config reload. It works fine, however, the result code from this call is always 1. In ejabberd log seems to be everything file:
```
ejabberd-1 ejabberd-node 12:16:02.031 [info] API call reload_config [] from ::ffff:10.244.0.202:37484
ejabberd-1 ejabberd-node
ejabberd-1 ejabberd-node 12:16:02.031 [info] (#PID<0.2846.0>) Accepted connection [::ffff:10.244.0.202]:37484 -> [::ffff:10.244.0.27]:5444
ejabberd-1 ejabberd-node
ejabberd-1 ejabberd-node 12:16:02.031 [info] Reloading configuration from config/ejabberd.yml
ejabberd-1 ejabberd-node
ejabberd-1 ejabberd-node 12:16:02.102 [info] Configuration reloaded successfully
```
However, the result is 1:
```
root@ejabberd-0:/app# curl -d '{}' http://ejabberd-service:5444/api/reload_config
1
root@ejabberd-0:/app#
```
According to docs, it should be 0 when success: https://docs.ejabberd.im/developer/ejabberd-api/admin-api/
Could I ignore the result code or is there any problem with config reload?",
395,https://api.github.com/repos/processone/ejabberd/issues/3318,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3318/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3318/comments,https://api.github.com/repos/processone/ejabberd/issues/3318/events,https://github.com/processone/ejabberd/issues/3318,649772761,MDU6SXNzdWU2NDk3NzI3NjE=,3318,SSL certificates are not refreshed when symlinked,"{'login': 'sarsonj', 'id': 925756, 'node_id': 'MDQ6VXNlcjkyNTc1Ng==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/925756?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/sarsonj', 'html_url': 'https://github.com/sarsonj', 'followers_url': 'https://api.github.com/users/sarsonj/followers', 'following_url': 'https://api.github.com/users/sarsonj/following{/other_user}', 'gists_url': 'https://api.github.com/users/sarsonj/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/sarsonj/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/sarsonj/subscriptions', 'organizations_url': 'https://api.github.com/users/sarsonj/orgs', 'repos_url': 'https://api.github.com/users/sarsonj/repos', 'events_url': 'https://api.github.com/users/sarsonj/events{/privacy}', 'received_events_url': 'https://api.github.com/users/sarsonj/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-07-02T09:15:00Z,2020-07-02T09:32:21Z,2020-07-02T09:32:20Z,NONE,,,"## Environment
- ejabberd version: 20.04
- Installed from: our own docker image / k8s environment
## Bug description
We are using Lets encrypt certificates, that are not generated by eJabberd, but by Kubernetess certification manager. It generates certificate files and those files are ""linked"" into ejabberd filesystem. However, those files are symlinked from ejabberd filesystem and when certificate change (for example ../data/ca.crt) the simlink stays same and the ejabberd don't reload configuration.
What I checked is, that ejabberd should reload configuration whenever those files timestamp changes. Would be possible to check timestamp not only certificate file, that is written in configuration but in case it is symbolic link the date of actual file?
What is also strange that in web admin new certificate is used, but when I connect to 5222 port of ejabberd, the old certificate is used.
When I restart ejabberd, everything works as expected.
## Suggested chage
- when certificate configuration points to link, observer changes on not only the link, but on the file itself
",
396,https://api.github.com/repos/processone/ejabberd/issues/3317,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3317/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3317/comments,https://api.github.com/repos/processone/ejabberd/issues/3317/events,https://github.com/processone/ejabberd/issues/3317,646927748,MDU6SXNzdWU2NDY5Mjc3NDg=,3317,SIP: Unexpected UDP error: connection reset by peer,"{'login': 'Andy-2639', 'id': 13392804, 'node_id': 'MDQ6VXNlcjEzMzkyODA0', 'avatar_url': 'https://avatars0.githubusercontent.com/u/13392804?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Andy-2639', 'html_url': 'https://github.com/Andy-2639', 'followers_url': 'https://api.github.com/users/Andy-2639/followers', 'following_url': 'https://api.github.com/users/Andy-2639/following{/other_user}', 'gists_url': 'https://api.github.com/users/Andy-2639/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Andy-2639/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Andy-2639/subscriptions', 'organizations_url': 'https://api.github.com/users/Andy-2639/orgs', 'repos_url': 'https://api.github.com/users/Andy-2639/repos', 'events_url': 'https://api.github.com/users/Andy-2639/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Andy-2639/received_events', 'type': 'User', 'site_admin': False}","[{'id': 203116774, 'node_id': 'MDU6TGFiZWwyMDMxMTY3NzQ=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:SIP', 'name': 'Component:SIP', 'color': 'fad8c7', 'default': False, 'description': None}]",open,False,,[],,3,2020-06-28T14:01:12Z,2020-08-21T08:26:07Z,,NONE,,,"## Environment
- ejabberd: https://www.process-one.net/downloads/downloads-action.php?file=/20.04/ejabberd-20.04-windows.exe
- OS: Windows 10 1909 Pro x64
## Errors from error.log/crash.log
[ejabberd.log](https://github.com/processone/ejabberd/files/4842395/ejabberd.log)
[error.log](https://github.com/processone/ejabberd/files/4842396/error.log)
[crash.log](https://github.com/processone/ejabberd/files/4842397/crash.log)
## Bug description
Crashes in SIP module are logged, see attached log files.
",
397,https://api.github.com/repos/processone/ejabberd/issues/3316,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3316/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3316/comments,https://api.github.com/repos/processone/ejabberd/issues/3316/events,https://github.com/processone/ejabberd/issues/3316,646241040,MDU6SXNzdWU2NDYyNDEwNDA=,3316,Users are not allowed to register accounts so quickly,"{'login': 'LumiProj', 'id': 59764810, 'node_id': 'MDQ6VXNlcjU5NzY0ODEw', 'avatar_url': 'https://avatars2.githubusercontent.com/u/59764810?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/LumiProj', 'html_url': 'https://github.com/LumiProj', 'followers_url': 'https://api.github.com/users/LumiProj/followers', 'following_url': 'https://api.github.com/users/LumiProj/following{/other_user}', 'gists_url': 'https://api.github.com/users/LumiProj/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/LumiProj/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/LumiProj/subscriptions', 'organizations_url': 'https://api.github.com/users/LumiProj/orgs', 'repos_url': 'https://api.github.com/users/LumiProj/repos', 'events_url': 'https://api.github.com/users/LumiProj/events{/privacy}', 'received_events_url': 'https://api.github.com/users/LumiProj/received_events', 'type': 'User', 'site_admin': False}","[{'id': 352233730, 'node_id': 'MDU6TGFiZWwzNTIyMzM3MzA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Question', 'name': 'Kind:Question', 'color': 'fef2c0', 'default': False, 'description': None}]",closed,False,,[],,1,2020-06-26T12:50:46Z,2020-07-20T08:50:36Z,2020-07-20T08:50:36Z,NONE,,,"Hi,
I am doing registration from client API but I have to wait for 10 mins for each user registration.
I think there is infinity settings are required to bypass this limitation.
Can anybody guide me the configuration settings to remove this limitation.
Thanks",
398,https://api.github.com/repos/processone/ejabberd/issues/3315,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3315/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3315/comments,https://api.github.com/repos/processone/ejabberd/issues/3315/events,https://github.com/processone/ejabberd/issues/3315,645780767,MDU6SXNzdWU2NDU3ODA3Njc=,3315,AccessRules: Account does not have the right to perform the operation,"{'login': 'Kalmuraee', 'id': 7072748, 'node_id': 'MDQ6VXNlcjcwNzI3NDg=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/7072748?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Kalmuraee', 'html_url': 'https://github.com/Kalmuraee', 'followers_url': 'https://api.github.com/users/Kalmuraee/followers', 'following_url': 'https://api.github.com/users/Kalmuraee/following{/other_user}', 'gists_url': 'https://api.github.com/users/Kalmuraee/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Kalmuraee/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Kalmuraee/subscriptions', 'organizations_url': 'https://api.github.com/users/Kalmuraee/orgs', 'repos_url': 'https://api.github.com/users/Kalmuraee/repos', 'events_url': 'https://api.github.com/users/Kalmuraee/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Kalmuraee/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,5,2020-06-25T18:54:23Z,2020-06-26T21:55:19Z,2020-06-26T21:55:19Z,NONE,,,"## Environment
- ejabberd version: 20.04
- Erlang version: `erl +V`
- OS: Linux (Ubuntu Server)
- Installed from: Docker
## Issue description
I've been trying to trigger event from an API , I've generated a token and I'm using it with the event .
## Configuration
```yaml
api_permissions:
""console commands"":
from:
- ejabberd_ctl
who: all
what: ""*""
""admin access"":
who:
access:
allow:
acl: admin
oauth:
scope: ""ejabberd:admin""
access:
allow:
acl: admin
what:
- ""*""
- ""!stop""
- ""!start""
""public commands"":
who: all
what:
- ""*""
- connected_users_number
""web admin"":
who:
- access:
- allow:
- acl: loopback
- acl: admin
- oauth:
- scope: ""sasl_auth""
- access:
- allow:
- acl: loopback
- acl: admin
what:
- ""*""
- ""!stop""
- ""!start""
```
## Log Details
```
2020-06-25 18:52:09.790988+00:00 [debug] Command 'status_list' execution denied (CallerInfo=
#{caller_module =>mod_http_api,
caller_server =><<""localhost"">>,
ip => {0,0,0,0,0,65535, 13274,55614},
oauth_scope => [],
tag => <<>>,
usr => {<<""admin"">>, <<""localhost"">>, <<>>}})
```
I'm still trying to figure out why do I receive this message",
399,https://api.github.com/repos/processone/ejabberd/issues/3314,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3314/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3314/comments,https://api.github.com/repos/processone/ejabberd/issues/3314/events,https://github.com/processone/ejabberd/issues/3314,645673143,MDU6SXNzdWU2NDU2NzMxNDM=,3314,SSL ON Public IP,"{'login': 'LumiProj', 'id': 59764810, 'node_id': 'MDQ6VXNlcjU5NzY0ODEw', 'avatar_url': 'https://avatars2.githubusercontent.com/u/59764810?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/LumiProj', 'html_url': 'https://github.com/LumiProj', 'followers_url': 'https://api.github.com/users/LumiProj/followers', 'following_url': 'https://api.github.com/users/LumiProj/following{/other_user}', 'gists_url': 'https://api.github.com/users/LumiProj/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/LumiProj/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/LumiProj/subscriptions', 'organizations_url': 'https://api.github.com/users/LumiProj/orgs', 'repos_url': 'https://api.github.com/users/LumiProj/repos', 'events_url': 'https://api.github.com/users/LumiProj/events{/privacy}', 'received_events_url': 'https://api.github.com/users/LumiProj/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,24,2020-06-25T15:52:30Z,2020-07-14T10:14:52Z,2020-06-25T20:06:32Z,NONE,,,"Hi,
I am running ejabberd on Windows server 2008 on static/public IP . Now I am looking to add secure certificate on IP .
Please guide me any reference or details that I can configure any free certificate to secure my ejabberd public IP.
Thanks",
400,https://api.github.com/repos/processone/ejabberd/issues/3313,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3313/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3313/comments,https://api.github.com/repos/processone/ejabberd/issues/3313/events,https://github.com/processone/ejabberd/issues/3313,645015707,MDU6SXNzdWU2NDUwMTU3MDc=,3313,"Having an issue with nodes tree, nodes hierarchy or collection in XMPP","{'login': 'AbsalomM', 'id': 14192952, 'node_id': 'MDQ6VXNlcjE0MTkyOTUy', 'avatar_url': 'https://avatars1.githubusercontent.com/u/14192952?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/AbsalomM', 'html_url': 'https://github.com/AbsalomM', 'followers_url': 'https://api.github.com/users/AbsalomM/followers', 'following_url': 'https://api.github.com/users/AbsalomM/following{/other_user}', 'gists_url': 'https://api.github.com/users/AbsalomM/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/AbsalomM/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/AbsalomM/subscriptions', 'organizations_url': 'https://api.github.com/users/AbsalomM/orgs', 'repos_url': 'https://api.github.com/users/AbsalomM/repos', 'events_url': 'https://api.github.com/users/AbsalomM/events{/privacy}', 'received_events_url': 'https://api.github.com/users/AbsalomM/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,1,2020-06-24T22:23:19Z,2020-07-02T11:35:25Z,,NONE,,,"I just noticed that dag has been decommissioned, is there another way i can create nodes hierarchy in XMPP. Currently all nodes are flat, and i want to create a node collection or nodes hierarchy with, or a way i can update/add a child to a root without having to update the root.",
401,https://api.github.com/repos/processone/ejabberd/issues/3312,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3312/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3312/comments,https://api.github.com/repos/processone/ejabberd/issues/3312/events,https://github.com/processone/ejabberd/issues/3312,644625761,MDU6SXNzdWU2NDQ2MjU3NjE=,3312,"Mysql connection failed, reason normal","{'login': 'gizmo15', 'id': 8877014, 'node_id': 'MDQ6VXNlcjg4NzcwMTQ=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/8877014?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/gizmo15', 'html_url': 'https://github.com/gizmo15', 'followers_url': 'https://api.github.com/users/gizmo15/followers', 'following_url': 'https://api.github.com/users/gizmo15/following{/other_user}', 'gists_url': 'https://api.github.com/users/gizmo15/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/gizmo15/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/gizmo15/subscriptions', 'organizations_url': 'https://api.github.com/users/gizmo15/orgs', 'repos_url': 'https://api.github.com/users/gizmo15/repos', 'events_url': 'https://api.github.com/users/gizmo15/events{/privacy}', 'received_events_url': 'https://api.github.com/users/gizmo15/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,4,2020-06-24T13:42:21Z,2020-07-16T12:47:52Z,2020-07-16T12:47:52Z,NONE,,,"Hi,
I have an installation with 2 ejabberd nodes connected on the same database (galera cluster via haproxy for load balancing).
## Environment
- ejabberd version: 20.04
- Erlang version: Erlang (SMP,ASYNC_THREADS) (BEAM) emulator version 9.2
- OS: Ubuntu 18.04
- Installed from: official deb/rpm
All nodes have the same configuration :
The second node, no problem.
The first one, i have those entries in ejabberd.log :
```
2020-06-24 15:39:04.189 [error] <0.906.0>@ejabberd_sql:log:1082 p1_mysql_conn: Connection closed, exiting.
2020-06-24 15:39:04.189 [info] <0.906.0>@ejabberd_sql:log:1081 Closing connection {gen_tcp,#Port<0.162>}: ok
2020-06-24 15:39:04.189 [error] <0.907.0>@ejabberd_sql:log:1082 p1_mysql_conn: Connection closed, exiting.
2020-06-24 15:39:04.190 [info] <0.907.0>@ejabberd_sql:log:1081 Closing connection {gen_tcp,#Port<0.163>}: ok
2020-06-24 15:39:04.190 [warning] <0.565.0>@ejabberd_sql:handle_reconnect:471 mysql connection failed:
** Reason: normal
** Retry after: 30 seconds
```
It's confusing me, ""reason : normal"" so it's ok or i have a problem in my setup?
Haproxy configuration :
```
listen galera
bind X.X.X.X:3306
balance source
mode tcp
option tcplog
option tcpka
timeout client 5m
timeout server 5m
server galera1 XXXXXX:3306 check weight 100
server galera2 XXXXXX:3306 check weight 100
server galera3 XXXXXX:3306 check weight 80
server galera4 XXXXXX:3306 check weight 80
```
Thanks!",
402,https://api.github.com/repos/processone/ejabberd/issues/3311,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3311/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3311/comments,https://api.github.com/repos/processone/ejabberd/issues/3311/events,https://github.com/processone/ejabberd/issues/3311,643684896,MDU6SXNzdWU2NDM2ODQ4OTY=,3311,logger doesn't work on my module,"{'login': 'relbraun', 'id': 6196995, 'node_id': 'MDQ6VXNlcjYxOTY5OTU=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/6196995?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/relbraun', 'html_url': 'https://github.com/relbraun', 'followers_url': 'https://api.github.com/users/relbraun/followers', 'following_url': 'https://api.github.com/users/relbraun/following{/other_user}', 'gists_url': 'https://api.github.com/users/relbraun/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/relbraun/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/relbraun/subscriptions', 'organizations_url': 'https://api.github.com/users/relbraun/orgs', 'repos_url': 'https://api.github.com/users/relbraun/repos', 'events_url': 'https://api.github.com/users/relbraun/events{/privacy}', 'received_events_url': 'https://api.github.com/users/relbraun/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,5,2020-06-23T09:34:13Z,2020-06-23T20:32:23Z,,NONE,,,"## Environment
- ejabberd version: 20.02.06
- Erlang version: `10.6.4`
- OS: Linux (Debian)
- Installed from: source
I created a module in the local repository directory `.ejabberd-modules` and put in the code the syntax:
```
-include(""logger.hrl"").
-include(""xmpp.hrl"").
-include(""ejabberd_commands.hrl"").
-include(""mod_privacy.hrl"").
-include(""mod_last.hrl"").
-include(""translate.hrl"").
-include(""ejabberd_sql_pt.hrl"").
...
start(Host, Opts) ->
?DEBUG(""module xxxx started"", []),
xmpp:register_codec(some_codec),
gen_iq_handler:add_iq_handler(ejabberd_local, Host,
?NS_WB_XROSTER, ?MODULE, process_sm_iq),
gen_iq_handler:add_iq_handler(ejabberd_sm, Host,
?NS_WB_XROSTER, ?MODULE, process_sm_iq).
stop(Host) ->
xmpp:unregister_codec(some_codec),
gen_iq_handler:remove_iq_handler(ejabberd_local, Host,
?NS_WB_XROSTER),
gen_iq_handler:remove_iq_handler(ejabberd_sm, Host,
?NS_WB_XROSTER).
depends(_Host, _Opts) ->
[].
mod_options(_Host) ->
[].
process_sm_iq() ->
?ERROR_MSG(""some message"", []),
xmpp:make_iq_result(IQ, Somestuff).
```
And I see nothing in the `ejabberd.log` file",
403,https://api.github.com/repos/processone/ejabberd/issues/3310,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3310/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3310/comments,https://api.github.com/repos/processone/ejabberd/issues/3310/events,https://github.com/processone/ejabberd/pull/3310,643577177,MDExOlB1bGxSZXF1ZXN0NDM4MzU1OTY1,3310,Fix dependencies issue with last release of rebar3,"{'login': 'niamtokik', 'id': 2983640, 'node_id': 'MDQ6VXNlcjI5ODM2NDA=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/2983640?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/niamtokik', 'html_url': 'https://github.com/niamtokik', 'followers_url': 'https://api.github.com/users/niamtokik/followers', 'following_url': 'https://api.github.com/users/niamtokik/following{/other_user}', 'gists_url': 'https://api.github.com/users/niamtokik/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/niamtokik/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/niamtokik/subscriptions', 'organizations_url': 'https://api.github.com/users/niamtokik/orgs', 'repos_url': 'https://api.github.com/users/niamtokik/repos', 'events_url': 'https://api.github.com/users/niamtokik/events{/privacy}', 'received_events_url': 'https://api.github.com/users/niamtokik/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,8,2020-06-23T06:45:16Z,2020-09-02T15:36:43Z,,NONE,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3310', 'html_url': 'https://github.com/processone/ejabberd/pull/3310', 'diff_url': 'https://github.com/processone/ejabberd/pull/3310.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3310.patch'}","Hi,
I am running on OpenBSD-current, with Erlang R21, and locally builded rebar3.
```sh
$ rebar3 version
rebar 3.13.2 on Erlang/OTP 21 Erts 10.2
```
I was originally using rebar3 version 3.14.0-rc2 and made a fallback to 3.13.2 to see if it was due to my testing version. So, I had trouble with getting dependencies, even after removing `_build` and `${HOME}/.cache/rebar3/hex` directories. The error is:
```
$ DEBUG=1 rebar3 get-deps
===> Evaluating config script ""rebar.config.script""
===> Rebar3 detected a lock file from a newer version. It will be loaded in compatibility mode, but important information may be missing or lost. It is recommended to upgrade Rebar3.
===> 21.2 satisfies the requirement for minimum OTP version 18
===> Expanded command sequence to be run: [{default,app_discovery},
{default,install_deps},
{default,lock},
{default,'get-deps'}]
===> Provider: {default,app_discovery}
===> 21.2 satisfies the requirement for minimum OTP version 18
===> Not adding provider hex user from module rebar3_hex_user because it already exists from module rebar3_hex_user
===> Not adding provider hex cut from module rebar3_hex_cut because it already exists from module rebar3_hex_cut
===> Not adding provider hex key from module rebar3_hex_key because it already exists from module rebar3_hex_key
===> Not adding provider hex owner from module rebar3_hex_owner because it already exists from module rebar3_hex_owner
===> Not adding provider hex repo from module rebar3_hex_repo because it already exists from module rebar3_hex_repo
===> Not adding provider hex docs from module rebar3_hex_docs because it already exists from module rebar3_hex_docs
===> Not adding provider hex search from module rebar3_hex_search because it already exists from module rebar3_hex_search
===> Not adding provider hex revert from module rebar3_hex_revert because it already exists from module rebar3_hex_revert
===> Not adding provider hex retire from module rebar3_hex_retire because it already exists from module rebar3_hex_retire
===> Not adding provider hex publish from module rebar3_hex_publish because it already exists from module rebar3_hex_publish
===> Not adding provider asn compile from module provider_asn1_compile because it already exists from module provider_asn1_compile
===> Not adding provider asn clean from module provider_asn1_clean because it already exists from module provider_asn1_clean
===> Provider: {default,install_deps}
===> Verifying dependencies...
===> Package not found in any repo: base64url v1.0
```
Same issue with another dependency:
```
$ rebar3 get-deps
===> Rebar3 detected a lock file from a newer version. It will be loaded in compatibility mode, but important information may be missing or lost. It is recommended to upgrade Rebar3.
===> Verifying dependencies...
===> Package not found in any repo: p1_acme 1.0.6
```
After testing, I modified the `rebar.conf` file based on official [documentation](https://www.rebar3.org/docs/dependencies). Works as expected. Can you confirm you have the same issue on your side, or I am the only one?",
404,https://api.github.com/repos/processone/ejabberd/issues/3309,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3309/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3309/comments,https://api.github.com/repos/processone/ejabberd/issues/3309/events,https://github.com/processone/ejabberd/issues/3309,643268555,MDU6SXNzdWU2NDMyNjg1NTU=,3309,(Simple) customization of mod_register_web,"{'login': 'htgoebel', 'id': 784161, 'node_id': 'MDQ6VXNlcjc4NDE2MQ==', 'avatar_url': 'https://avatars1.githubusercontent.com/u/784161?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/htgoebel', 'html_url': 'https://github.com/htgoebel', 'followers_url': 'https://api.github.com/users/htgoebel/followers', 'following_url': 'https://api.github.com/users/htgoebel/following{/other_user}', 'gists_url': 'https://api.github.com/users/htgoebel/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/htgoebel/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/htgoebel/subscriptions', 'organizations_url': 'https://api.github.com/users/htgoebel/orgs', 'repos_url': 'https://api.github.com/users/htgoebel/repos', 'events_url': 'https://api.github.com/users/htgoebel/events{/privacy}', 'received_events_url': 'https://api.github.com/users/htgoebel/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]",,4,2020-06-22T18:12:10Z,2020-07-20T10:45:55Z,2020-07-20T10:45:55Z,NONE,,,"**Is your feature request related to a problem? Please describe.**
Using `mod_register_web` is great to get started with web-based registration. But this page is missing some important information, which are relevant even for hobbyists: terms of service and privacy statement. And even a hobbyist might want to style the pages a bit like her/his homepage.
**Describe the solution you'd like**
Add two option to allow customizing the pages:
```
mod_register_web:
html_body_start >
```
The content of this two options will be included into the generated pages verbatim, just after the `` openin tag and jsut becode the `` closing tag.
This allows for adding both content and style. (and when using tricky CSS, even changing content :-)
**Describe alternatives you've considered**
- An option to supply an additional style-sheet to be included after the standard one -> nice, but less flexible
- Options like `terms_of_service_url` and `privacy_policy_url` -> Pro: ejabberd could provide translations. Con: Less flexible.
- Option specifying a page template file (in `~/ejabberd`) -> I have no clue about available templating engines for erlang.
- Use custom from in Homepage, like the [Ejabberd Account Tools](https://wordpress.org/plugins/ejabberd-account-tools/) -> Pro: very good integration into homepage. Con: Rely on privacy distroying reCaptcha from google.
**Additional context**
Even a hobbyist want to tell her/his friends that this is a hobbyist's side and might not be available all to time :-) And she/he is also subject to privacy regulations, e.g. the the Europian GDPR.",
405,https://api.github.com/repos/processone/ejabberd/issues/3308,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3308/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3308/comments,https://api.github.com/repos/processone/ejabberd/issues/3308/events,https://github.com/processone/ejabberd/issues/3308,643212516,MDU6SXNzdWU2NDMyMTI1MTY=,3308,How to attach etop?,"{'login': 'licaon-kter', 'id': 2282799, 'node_id': 'MDQ6VXNlcjIyODI3OTk=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2282799?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/licaon-kter', 'html_url': 'https://github.com/licaon-kter', 'followers_url': 'https://api.github.com/users/licaon-kter/followers', 'following_url': 'https://api.github.com/users/licaon-kter/following{/other_user}', 'gists_url': 'https://api.github.com/users/licaon-kter/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/licaon-kter/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/licaon-kter/subscriptions', 'organizations_url': 'https://api.github.com/users/licaon-kter/orgs', 'repos_url': 'https://api.github.com/users/licaon-kter/repos', 'events_url': 'https://api.github.com/users/licaon-kter/events{/privacy}', 'received_events_url': 'https://api.github.com/users/licaon-kter/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,9,2020-06-22T16:34:36Z,2020-06-22T16:58:01Z,,CONTRIBUTOR,,,"HEAD, Debian Buster, arm64
**$ sudo -u ejabberd ejabberdctl status**
```
The node ejabberd@localhost is started with status: started
ejabberd 20.04.64 is running in that node
```
ok...so...
**$ sudo /usr/lib/erlang/lib/observer-2.8.2/priv/bin/etop -node ejabberd@localhost -sort reductions**
```
Erlang/OTP 21 [erts-10.2.4] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:1]
Error Couldn't connect to node ejabberd@localhost
Usage of the Erlang top program
Options are set as command line parameters as in -node my@host
or as parameters to etop:start([{node, my@host}, {...}]).
Options are:
node atom Required The erlang node to measure
port integer The used port, NOTE: due to a bug this program
will hang if the port is not avaiable
accumulate boolean If true execution time is accumulated
lines integer Number of displayed processes
interval integer Display update interval in secs
sort runtime | reductions | memory | msg_q
What information to sort by
Default: runtime (reductions if tracing=off)
tracing on | off etop uses the erlang trace facility, and thus
no other tracing is possible on the node while
etop is running, unless this option is set to
'off'. Also helpful if the etop tracing causes
too high load on the measured node.
With tracing off, runtime is not measured!
setcookie string Only applicable on operating system command
line. Set cookie for the etop node, must be
same as the cookie for the measured node.
This is not an etop parameter
{""init terminating in do_boot"",""connection error""}
init terminating in do_boot (connection error)
Crash dump is being written to: erl_crash.dump...done
```
...right...the log says: `[error] <0.9454.0> ** Connection attempt from disallowed node etop@rpi3 **` _(and erl_crash.dump is created)_ maybe it doesn't like to be run as root:
**$ sudo -u ejabberd /usr/lib/erlang/lib/observer-2.8.2/priv/bin/etop -node ejabberd@localhost -sort reductions**
```
Erlang/OTP 21 [erts-10.2.4] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:1]
{""init terminating in do_boot"",{{badmatch,{error,nxdomain}},[{etop_tr,reader,1,[{file,""etop_tr.erl""},{line,62}]},{etop,init_data_handler,1,[{file,""etop.erl""},{line,146}]},{etop,start,1,[{file,""etop.erl""},{line,129}]},{init,start_em,1,[]},{init,do_boot,3,[]}]}}
init terminating in do_boot ({{badmatch,{error,nxdomain}},[{etop_tr,reader,1,[{_},{_}]},{etop,init_data_handler,1,[{_},{_}]},{etop,start,1,[{_},{_}]},{init,start_em,1,[]},{init,do_boot,3,[]}]})
Crash dump is being written to: erl_crash.dump...
```
...but erl_crash.dump is NOT created
I'd like to see why Jicofo is hammering ejabberd continuously at 80% of one core while being idle...but...not sure how, there's no logging of stuff happening in loglevel 4 so far, also nothing in their logs.",
406,https://api.github.com/repos/processone/ejabberd/issues/3307,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3307/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3307/comments,https://api.github.com/repos/processone/ejabberd/issues/3307/events,https://github.com/processone/ejabberd/issues/3307,643210252,MDU6SXNzdWU2NDMyMTAyNTI=,3307,Some simple documentation clarifications,"{'login': 'htgoebel', 'id': 784161, 'node_id': 'MDQ6VXNlcjc4NDE2MQ==', 'avatar_url': 'https://avatars1.githubusercontent.com/u/784161?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/htgoebel', 'html_url': 'https://github.com/htgoebel', 'followers_url': 'https://api.github.com/users/htgoebel/followers', 'following_url': 'https://api.github.com/users/htgoebel/following{/other_user}', 'gists_url': 'https://api.github.com/users/htgoebel/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/htgoebel/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/htgoebel/subscriptions', 'organizations_url': 'https://api.github.com/users/htgoebel/orgs', 'repos_url': 'https://api.github.com/users/htgoebel/repos', 'events_url': 'https://api.github.com/users/htgoebel/events{/privacy}', 'received_events_url': 'https://api.github.com/users/htgoebel/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",closed,False,,[],,2,2020-06-22T16:30:59Z,2020-06-22T16:59:10Z,2020-06-22T16:59:09Z,NONE,,,"Please clarify in the documentation:
* Global options: Will `c2s_{protocoll_options,ciphers,dhfile}` provided defaults to the ""listen"" modules? Same for `s2s_*`
* Listen-options: Are ciphers, dhfile, protocoll_options defaulting to the global `c2s` resp. `s2s` options?
* What module/function is using `s2s_starttls`? Is this for outgoing messages, and thus needs to be defined here (as this is not a listening module)
* Hat is the meaning of `hosts` in mod_http_upload, mod_muc, mod_mix and others?
What is this used for? Can one use `@HOST@` (without any prefix)?
What is the benefit of listing more than one hosts / JIDs?
* mod_pres_counter: `interval`: Unit of value us not documented.
* Meaning of mod_register: `access_from` is unclear: Description lets assume this is for controlling registration of new accounts from s2s or existing c2s sessions. But This is not stated.
* `mod_stun` has an option to enable TLS, but what ciphers, dhfile, and protocoll_options are used?
Many thanks in advance for improving the documentation :-)",
407,https://api.github.com/repos/processone/ejabberd/issues/3306,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3306/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3306/comments,https://api.github.com/repos/processone/ejabberd/issues/3306/events,https://github.com/processone/ejabberd/issues/3306,642866520,MDU6SXNzdWU2NDI4NjY1MjA=,3306,Can't handle a custom IQ stanza,"{'login': 'relbraun', 'id': 6196995, 'node_id': 'MDQ6VXNlcjYxOTY5OTU=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/6196995?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/relbraun', 'html_url': 'https://github.com/relbraun', 'followers_url': 'https://api.github.com/users/relbraun/followers', 'following_url': 'https://api.github.com/users/relbraun/following{/other_user}', 'gists_url': 'https://api.github.com/users/relbraun/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/relbraun/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/relbraun/subscriptions', 'organizations_url': 'https://api.github.com/users/relbraun/orgs', 'repos_url': 'https://api.github.com/users/relbraun/repos', 'events_url': 'https://api.github.com/users/relbraun/events{/privacy}', 'received_events_url': 'https://api.github.com/users/relbraun/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,4,2020-06-22T08:28:50Z,2020-08-25T10:15:55Z,2020-08-25T10:15:55Z,NONE,,,"## Environment
- ejabberd version: 20.02.06
- Erlang version: `10.6.4`
- OS: Linux (Debian)
- Installed from: source
## I created a new module `mod_mymodule` for example, I did the all instructions according to the article here: [https://github.com/processone/xmpp/issues/9](https://github.com/processone/xmpp/issues/9)
and created a file `mymodule.erl`:
```
%% Created automatically by XML generator (fxml_gen.erl)
%% Source: xmpp_codec.spec
-module(mymodule).
-compile(export_all).
do_decode(<<""mymodule"">>,
<<""custom:ns"">>, El, Opts) ->
decode_mymodule(<<""custom:ns"">>,
Opts, El);
do_decode(Name, <<>>, _, _) ->
erlang:error({xmpp_codec, {missing_tag_xmlns, Name}});
do_decode(Name, XMLNS, _, _) ->
erlang:error({xmpp_codec, {unknown_tag, Name, XMLNS}}).
tags() ->
[{<<""mymodule"">>,
<<""custom:ns"">>}].
do_encode({mymodule} = Mymodule,
TopXMLNS) ->
encode_mymodule(Mymodule,
TopXMLNS).
do_get_name({mymodule}) ->
<<""mymodule"">>.
do_get_ns({mymodule}) ->
<<""custom:ns"">>.
pp(mymodule, 0) -> [];
pp(_, _) -> no.
records() -> [{mymodule, 0}].
decode_mymodule(__TopXMLNS, __Opts,
{xmlel, <<""custom:ns"">>, _attrs, _els}) ->
{mymodule}.
encode_mymodule({mymodule},
__TopXMLNS) ->
__NewTopXMLNS =
xmpp_codec:choose_top_xmlns(<<""custom:ns"">>,
[], __TopXMLNS),
_els = [],
_attrs = xmpp_codec:enc_xmlns_attrs(__NewTopXMLNS,
__TopXMLNS),
{xmlel, <<""mymodule"">>, _attrs, _els}.
```
The function in the file `mod_mymodule.erl` is:
```
start(Host, Opts) ->
?DEBUG(""module x-roster started"", []),
xmpp:register_codec(mymodule),
gen_iq_handler:add_iq_handler(ejabberd_local, Host,
?NS_WB_XROSTER, ?MODULE, process_sm_iq),
gen_iq_handler:add_iq_handler(ejabberd_sm, Host,
?NS_WB_XROSTER, ?MODULE, process_sm_iq).
stop(Host) ->
xmpp:unregister_codec(mymodule),
gen_iq_handler:remove_iq_handler(ejabberd_local, Host,
?NS_WB_XROSTER),
gen_iq_handler:remove_iq_handler(ejabberd_sm, Host,
?NS_WB_XROSTER).
```
and when I send the stanza:
```
```
I get the error:
```
Unknown tag <mymodule/> qualified by namespace 'custom:ns'
```
Any idea?",
408,https://api.github.com/repos/processone/ejabberd/issues/3305,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3305/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3305/comments,https://api.github.com/repos/processone/ejabberd/issues/3305/events,https://github.com/processone/ejabberd/issues/3305,642415490,MDU6SXNzdWU2NDI0MTU0OTA=,3305,JWT Authentication failed,"{'login': 'mkeerth', 'id': 36439837, 'node_id': 'MDQ6VXNlcjM2NDM5ODM3', 'avatar_url': 'https://avatars2.githubusercontent.com/u/36439837?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mkeerth', 'html_url': 'https://github.com/mkeerth', 'followers_url': 'https://api.github.com/users/mkeerth/followers', 'following_url': 'https://api.github.com/users/mkeerth/following{/other_user}', 'gists_url': 'https://api.github.com/users/mkeerth/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mkeerth/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mkeerth/subscriptions', 'organizations_url': 'https://api.github.com/users/mkeerth/orgs', 'repos_url': 'https://api.github.com/users/mkeerth/repos', 'events_url': 'https://api.github.com/users/mkeerth/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mkeerth/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-06-20T17:32:28Z,2020-06-23T07:58:03Z,2020-06-23T07:58:02Z,NONE,,,"I'm using docker image ejabberd/ecs and trying to enable JWT Authentication.
I followed this manual https://docs.ejabberd.im/admin/configuration/authentication/#jwt-authentication and enable JWT Authentication
I tried to login with jid and password (jwt token), login failed with the below message in console
ejabberd_1 | 2020-06-20 17:19:28.791819+00:00 [warning] (http_bind|<0.882.0>) Failed c2s PLAIN authentication for test@localhost from ::ffff:172.22.0.1: Invalid username or password
This my configuration
```
###
### ejabberd configuration file
###
### The parameters used in this configuration file are explained at
###
### https://docs.ejabberd.im/admin/configuration
###
### The configuration file is written in YAML.
### *******************************************************
### ******* !!! WARNING !!! *******
### ******* YAML IS INDENTATION SENSITIVE *******
### ******* MAKE SURE YOU INDENT SECTIONS CORRECTLY *******
### *******************************************************
### Refer to http://en.wikipedia.org/wiki/YAML for the brief description.
###
hosts:
- localhost
loglevel: 4
log_rotate_size: 10485760
log_rotate_date: """"
log_rotate_count: 1
log_rate_limit: 100
certfiles:
- /home/ejabberd/conf/server.pem
ca_file: ""/home/ejabberd/conf/cacert.pem""
## When using let's encrypt to generate certificates
##certfiles:
## - /etc/letsencrypt/live/localhost/fullchain.pem
## - /etc/letsencrypt/live/localhost/privkey.pem
##
##ca_file: ""/etc/letsencrypt/live/localhost/fullchain.pem""
listen:
-
port: 5222
ip: ""::""
module: ejabberd_c2s
max_stanza_size: 262144
shaper: c2s_shaper
access: c2s
starttls_required: true
-
port: 5269
ip: ""::""
module: ejabberd_s2s_in
max_stanza_size: 524288
-
port: 5443
ip: ""::""
module: ejabberd_http
tls: true
request_handlers:
""/admin"": ejabberd_web_admin
""/api"": mod_http_api
""/bosh"": mod_bosh
""/captcha"": ejabberd_captcha
""/upload"": mod_http_upload
""/ws"": ejabberd_http_ws
""/oauth"": ejabberd_oauth
-
port: 5280
ip: ""::""
module: ejabberd_http
request_handlers:
""/admin"": ejabberd_web_admin
-
port: 1883
ip: ""::""
module: mod_mqtt
backlog: 1000
##
## https://docs.ejabberd.im/admin/configuration/#stun-and-turn
## ejabberd_stun: Handles STUN Binding requests
##
##-
## port: 3478
## ip: ""0.0.0.0""
## transport: udp
## module: ejabberd_stun
## use_turn: true
## turn_ip: ""{{ IP }}""
## auth_type: user
## auth_realm: ""example.com""
##-
## port: 3478
## ip: ""0.0.0.0""
## module: ejabberd_stun
## use_turn: true
## turn_ip: ""{{ IP }}""
## auth_type: user
## auth_realm: ""example.com""
##-
## port: 5349
## ip: ""0.0.0.0""
## module: ejabberd_stun
## certfile: ""/home/ejabberd/conf/server.pem""
## tls: true
## use_turn: true
## turn_ip: ""{{ IP }}""
## auth_type: user
## auth_realm: ""example.com""
##
## https://docs.ejabberd.im/admin/configuration/#sip
## To handle SIP (VOIP) requests:
##
##-
## port: 5060
## ip: ""0.0.0.0""
## transport: udp
## module: ejabberd_sip
##-
## port: 5060
## ip: ""0.0.0.0""
## module: ejabberd_sip
##-
## port: 5061
## ip: ""0.0.0.0""
## module: ejabberd_sip
## tls: true
s2s_use_starttls: optional
auth_use_cache: false
auth_method: [jwt, mnesia]
jwt_key: /home/ejabberd/keys/ec_shared.key
acl:
local:
user_regexp: """"
loopback:
ip:
- 127.0.0.0/8
- ::1/128
- ::FFFF:127.0.0.1/128
admin:
user:
- ""admin@localhost""
access_rules:
local:
allow: local
c2s:
deny: blocked
allow: all
announce:
allow: admin
configure:
allow: admin
muc_create:
allow: local
pubsub_createnode:
allow: local
trusted_network:
allow: loopback
jwt_only:
deny: admin
allow: all
jwt_auth_only_rule: jwt_only
api_permissions:
""console commands"":
from:
- ejabberd_ctl
who: all
what: ""*""
""admin access"":
who:
access:
allow:
acl: loopback
acl: admin
oauth:
scope: ""ejabberd:admin""
access:
allow:
acl: loopback
acl: admin
what:
- ""*""
- ""!stop""
- ""!start""
""public commands"":
who:
ip: 127.0.0.1/8
what:
- status
- connected_users_number
shaper:
normal: 1000
fast: 50000
shaper_rules:
max_user_sessions: 10
max_user_offline_messages:
5000: admin
100: all
c2s_shaper:
none: admin
normal: all
s2s_shaper: fast
max_fsm_queue: 10000
acme:
contact: ""mailto:example-admin@example.com""
ca_url: ""https://acme-v01.api.letsencrypt.org""
modules:
mod_adhoc: {}
mod_admin_extra: {}
mod_announce:
access: announce
mod_avatar: {}
mod_blocking: {}
mod_bosh: {}
mod_caps: {}
mod_carboncopy: {}
mod_client_state: {}
mod_configure: {}
mod_disco: {}
mod_fail2ban: {}
mod_http_api: {}
mod_http_upload:
put_url: https://@HOST@:5443/upload
mod_last: {}
mod_mam:
## Mnesia is limited to 2GB, better to use an SQL backend
## For small servers SQLite is a good fit and is very easy
## to configure. Uncomment this when you have SQL configured:
## db_type: sql
assume_mam_usage: true
default: never
mod_mqtt: {}
mod_muc:
access:
- allow
access_admin:
- allow: admin
access_create: muc_create
access_persistent: muc_create
access_mam:
- allow
default_room_options:
allow_subscription: true # enable MucSub
mam: false
mod_muc_admin: {}
mod_offline:
access_max_user_messages: max_user_offline_messages
mod_ping: {}
mod_privacy: {}
mod_private: {}
mod_proxy65:
access: local
max_connections: 5
mod_pubsub:
access_createnode: pubsub_createnode
plugins:
- flat
- pep
force_node_config:
## Avoid buggy clients to make their bookmarks public
storage:bookmarks:
access_model: whitelist
mod_push: {}
mod_push_keepalive: {}
mod_register:
## Only accept registration requests from the ""trusted""
## network (see access_rules section above).
## Think twice before enabling registration from any
## address. See the Jabber SPAM Manifesto for details:
## https://github.com/ge0rg/jabber-spam-fighting-manifesto
ip_access: trusted_network
mod_roster:
versioning: true
mod_sip: {}
mod_s2s_dialback: {}
mod_shared_roster: {}
mod_stream_mgmt:
resend_on_timeout: if_offline
mod_vcard: {}
mod_vcard_xupdate: {}
mod_version:
show_os: false
### Local Variables:
### mode: yaml
### End:
### vim: set filetype=yaml tabstop=8
```
am i missing anything?",
409,https://api.github.com/repos/processone/ejabberd/issues/3304,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3304/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3304/comments,https://api.github.com/repos/processone/ejabberd/issues/3304/events,https://github.com/processone/ejabberd/issues/3304,642378000,MDU6SXNzdWU2NDIzNzgwMDA=,3304,Hook disco_local_features crashed when running mod_stun_disco:disco_local_features,"{'login': 'htgoebel', 'id': 784161, 'node_id': 'MDQ6VXNlcjc4NDE2MQ==', 'avatar_url': 'https://avatars1.githubusercontent.com/u/784161?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/htgoebel', 'html_url': 'https://github.com/htgoebel', 'followers_url': 'https://api.github.com/users/htgoebel/followers', 'following_url': 'https://api.github.com/users/htgoebel/following{/other_user}', 'gists_url': 'https://api.github.com/users/htgoebel/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/htgoebel/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/htgoebel/subscriptions', 'organizations_url': 'https://api.github.com/users/htgoebel/orgs', 'repos_url': 'https://api.github.com/users/htgoebel/repos', 'events_url': 'https://api.github.com/users/htgoebel/events{/privacy}', 'received_events_url': 'https://api.github.com/users/htgoebel/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,12,2020-06-20T13:40:53Z,2020-06-22T08:33:26Z,2020-06-22T08:27:00Z,NONE,,,"## Environment
- ejabberd version: 20.04
- Erlang version: Erlang (SMP,ASYNC_THREADS) (BEAM) emulator version 10.2.4
- OS: Linux (Debian)
- Installed from: distro package
## Configuration (only if needed):
Please request relevant parts is required.
## Errors from error.log
```
[error] <0.423.0>@ejabberd_hooks:safe_apply:240 Hook disco_local_features crashed when running mod_stun_disco:disco_local_features/5:
** exception error: bad argument
in function re:run/2
called as re:run(<<>>,
{{re_pattern,0,1,0,
<<69,82,67,80,71,0,0,0,0,8,0,0,1,128,0,0,
255,255,255,255,255,255,255,255,0,0,0,0,
0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,131,0,
3,120,0,3,0>>},
<<""example\\.com$"">>})
in call from acl:match_regexp/2 (acl.erl, line 352)
in call from lists:any/2 (lists.erl, ...
** Arg 1 = {result,[<<""jabber:iq:privacy"">>,<<""urn:xmpp:carbons:2"">>,<<""urn:xmpp:carbons:rules:0"">>,<<""urn:xmpp:blocking"">>,<<""msgoffline"">>,<<""http://jabber.org/protocol/offline"">>]}
** Arg 2 = {jid,<<>>,<<""example.com"">>,<<>>,<<>>,<<""example.com"">>,<<>>}
** Arg 3 = {jid,<<>>,<<""example.com"">>,<<>>,<<>>,<<""example.com"">>,<<>>}
** Arg 4 = <<>>
** Arg 5 = <<>>
```
and
```
[error] <0.436.0>@ejabberd_hooks:safe_apply:240 Hook disco_local_features crashed when running mod_stun_disco:disco_local_features/5:
** exception error: bad argument
in function re:run/2
called as re:run(<<""myname"">>,
{{re_pattern,0,1,0,
<<69,82,67,80,71,0,0,0,0,8,0,0,1,128,0,0,
255,255,255,255,255,255,255,255,0,0,0,0,
0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,131,0,
3,120,0,3,0>>},
<<""example\\.com$"">>})
in call from acl:match_regexp/2 (acl.erl, line 352)
in call from lists:any/2 (lis...
** Arg 1 = {result,[<<""jabber:iq:privacy"">>,<<""urn:xmpp:carbons:2"">>,<<""urn:xmpp:carbons:rules:0"">>,<<""urn:xmpp:blocking"">>,<<""msgoffline"">>,<<""http://jabber.org/protocol/offline"">>]}
** Arg 2 = {jid,<<""myname"">>,<<""example.com"">>,<<""Conversations.F0Y0"">>,<<""myname"">>,<<""example.com"">>,<<""Conversations.F0Y0"">>}
** Arg 3 = {jid,<<>>,<<""example.com"">>,<<>>,<<>>,<<""example.com"">>,<<>>}
** Arg 4 = <<>>
** Arg 5 = <<""en"">>
```
## Bug description
These appear in my log-files. Can't give more information, sorry.",
410,https://api.github.com/repos/processone/ejabberd/issues/3303,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3303/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3303/comments,https://api.github.com/repos/processone/ejabberd/issues/3303/events,https://github.com/processone/ejabberd/issues/3303,642359428,MDU6SXNzdWU2NDIzNTk0Mjg=,3303,"sqlite: ""table users has no column named server_host""","{'login': 'htgoebel', 'id': 784161, 'node_id': 'MDQ6VXNlcjc4NDE2MQ==', 'avatar_url': 'https://avatars1.githubusercontent.com/u/784161?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/htgoebel', 'html_url': 'https://github.com/htgoebel', 'followers_url': 'https://api.github.com/users/htgoebel/followers', 'following_url': 'https://api.github.com/users/htgoebel/following{/other_user}', 'gists_url': 'https://api.github.com/users/htgoebel/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/htgoebel/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/htgoebel/subscriptions', 'organizations_url': 'https://api.github.com/users/htgoebel/orgs', 'repos_url': 'https://api.github.com/users/htgoebel/repos', 'events_url': 'https://api.github.com/users/htgoebel/events{/privacy}', 'received_events_url': 'https://api.github.com/users/htgoebel/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,2,2020-06-20T11:27:11Z,2020-06-22T16:09:28Z,,NONE,,,"## Environment
- ejabberd version: 20.04
- Erlang version: Erlang (SMP,ASYNC_THREADS) (BEAM) emulator version 10.2.4
- OS: Linux (Debian)
- Installed from: distro package (backports)
## Configuration (only if needed):
```yaml
default_db: sql
sql_type: sqlite
sql_database: ""/var/log/ejabberd/sqlite3.db""
new_sql_schema: true
```
## Errors from error.log
[error] <0.355.0>@ejabberd_sql:check_error:1236 SQL query 'select password, serverkey, salt, iterationcount from users where username='admin1' and server_host='example.com'' failed: ""no such column: server_host""
[error] <0.355.0>@ejabberd_sql:check_error:1229 SQL query 'Q74001322' at {ejabberd_auth_sql,150} failed: ""no such column: server_host""
[error] <0.355.0>@ejabberd_sql:check_error:1236 SQL query 'INSERT INTO users(username, server_host, password, serverkey, salt, iterationcount) VALUES ('admin1', 'example.com', '…', '…', '…', 4096);' failed: ""table users has no column named server_host""
[error] <0.355.0>@ejabberd_sql:check_error:1229 SQL query 'Q5924109' at {ejabberd_auth_sql,160} failed: ""table users has no column named server_host""
## Bug description
Running: `ejabberdctl register admin1 example.org password` I get the error above.
* Fresh installation using new sql-schema.
* Database initalized from `/usr/share/ejabberd/sql/lite.new.sql`
* File-Permissions: 0600, dir-permission: 0700
* Verified schema in the database using `sqlit3` command
* When performing the INSERT command shown in the error message in `sqlite3`, this succeeds.
* A single database is configured, so no mix-up possible.
",
411,https://api.github.com/repos/processone/ejabberd/issues/3302,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3302/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3302/comments,https://api.github.com/repos/processone/ejabberd/issues/3302/events,https://github.com/processone/ejabberd/issues/3302,638819400,MDU6SXNzdWU2Mzg4MTk0MDA=,3302,roster_groups_allowed in .yml file doesn't accept list,"{'login': 'relbraun', 'id': 6196995, 'node_id': 'MDQ6VXNlcjYxOTY5OTU=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/6196995?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/relbraun', 'html_url': 'https://github.com/relbraun', 'followers_url': 'https://api.github.com/users/relbraun/followers', 'following_url': 'https://api.github.com/users/relbraun/following{/other_user}', 'gists_url': 'https://api.github.com/users/relbraun/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/relbraun/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/relbraun/subscriptions', 'organizations_url': 'https://api.github.com/users/relbraun/orgs', 'repos_url': 'https://api.github.com/users/relbraun/repos', 'events_url': 'https://api.github.com/users/relbraun/events{/privacy}', 'received_events_url': 'https://api.github.com/users/relbraun/received_events', 'type': 'User', 'site_admin': False}",[],open,False,"{'login': 'prefiks', 'id': 61998, 'node_id': 'MDQ6VXNlcjYxOTk4', 'avatar_url': 'https://avatars0.githubusercontent.com/u/61998?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/prefiks', 'html_url': 'https://github.com/prefiks', 'followers_url': 'https://api.github.com/users/prefiks/followers', 'following_url': 'https://api.github.com/users/prefiks/following{/other_user}', 'gists_url': 'https://api.github.com/users/prefiks/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/prefiks/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/prefiks/subscriptions', 'organizations_url': 'https://api.github.com/users/prefiks/orgs', 'repos_url': 'https://api.github.com/users/prefiks/repos', 'events_url': 'https://api.github.com/users/prefiks/events{/privacy}', 'received_events_url': 'https://api.github.com/users/prefiks/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'prefiks', 'id': 61998, 'node_id': 'MDQ6VXNlcjYxOTk4', 'avatar_url': 'https://avatars0.githubusercontent.com/u/61998?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/prefiks', 'html_url': 'https://github.com/prefiks', 'followers_url': 'https://api.github.com/users/prefiks/followers', 'following_url': 'https://api.github.com/users/prefiks/following{/other_user}', 'gists_url': 'https://api.github.com/users/prefiks/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/prefiks/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/prefiks/subscriptions', 'organizations_url': 'https://api.github.com/users/prefiks/orgs', 'repos_url': 'https://api.github.com/users/prefiks/repos', 'events_url': 'https://api.github.com/users/prefiks/events{/privacy}', 'received_events_url': 'https://api.github.com/users/prefiks/received_events', 'type': 'User', 'site_admin': False}]",,1,2020-06-15T12:36:57Z,2020-06-15T12:51:01Z,,NONE,,,"```
mod_pubsub:
access_createnode: pubsub_createnode
## reduces resource comsumption, but XEP incompliant
ignore_pep_from_offline: true
## XEP compliant, but increases resource comsumption
## ignore_pep_from_offline: false
last_item_cache: false
max_items_node: 1000
plugins:
- ""flat""
- ""pep""
force_node_config:
## Change from ""whitelist"" to ""open"" to enable OMEMO support
## See https://github.com/processone/ejabberd/issues/2425
""eu.siacs.conversations.axolotl.*"":
access_model: whitelist
## Avoid buggy clients to make their bookmarks public
""storage:bookmarks"":
access_model: whitelist
""my:pep:x"":
access_model: roster
notification_type: normal
roster_groups_allowed:
- ""group1""
- ""group2""
```
this config is not acceptable because `roster_groups_allowed` parameter expect string and not list. Any idea?",
412,https://api.github.com/repos/processone/ejabberd/issues/3301,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3301/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3301/comments,https://api.github.com/repos/processone/ejabberd/issues/3301/events,https://github.com/processone/ejabberd/issues/3301,638427026,MDU6SXNzdWU2Mzg0MjcwMjY=,3301,Invalid YAML in example config,"{'login': 'htgoebel', 'id': 784161, 'node_id': 'MDQ6VXNlcjc4NDE2MQ==', 'avatar_url': 'https://avatars1.githubusercontent.com/u/784161?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/htgoebel', 'html_url': 'https://github.com/htgoebel', 'followers_url': 'https://api.github.com/users/htgoebel/followers', 'following_url': 'https://api.github.com/users/htgoebel/following{/other_user}', 'gists_url': 'https://api.github.com/users/htgoebel/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/htgoebel/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/htgoebel/subscriptions', 'organizations_url': 'https://api.github.com/users/htgoebel/orgs', 'repos_url': 'https://api.github.com/users/htgoebel/repos', 'events_url': 'https://api.github.com/users/htgoebel/events{/privacy}', 'received_events_url': 'https://api.github.com/users/htgoebel/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179683043, 'node_id': 'MDU6TGFiZWwxNzk2ODMwNDM=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Configuration', 'name': 'Component:Configuration', 'color': 'f7c6c7', 'default': False, 'description': None}, {'id': 179053080, 'node_id': 'MDU6TGFiZWwxNzkwNTMwODA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Documentation', 'name': 'Kind:Documentation', 'color': '006b75', 'default': False, 'description': None}]",open,False,,[],,8,2020-06-14T20:43:51Z,2020-06-28T09:30:39Z,,NONE,,,"The example config contains invalid YAML, e.g.
https://github.com/processone/ejabberd/blob/16645a3c0ad76ca09e3f18626efe51e0ecfd2244/ejabberd.yml.example#L112-L114
This is invalid YAML both in YAML 1.0 (see https://yaml.org/spec/1.0/#id2564813Inha):
> It is an error for two equal key entries to appear in the same mapping node
and YAML 1.2 https://yaml.org/spec/1.2/spec.html#mapping//
> with the restriction that each of the keys is unique
Introduced in a02cff0e780bb7355315.",
413,https://api.github.com/repos/processone/ejabberd/issues/3300,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3300/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3300/comments,https://api.github.com/repos/processone/ejabberd/issues/3300/events,https://github.com/processone/ejabberd/issues/3300,637684000,MDU6SXNzdWU2Mzc2ODQwMDA=,3300,Getting error while installling ejabberd,"{'login': 'RomitGandhi07', 'id': 46276226, 'node_id': 'MDQ6VXNlcjQ2Mjc2MjI2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/46276226?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/RomitGandhi07', 'html_url': 'https://github.com/RomitGandhi07', 'followers_url': 'https://api.github.com/users/RomitGandhi07/followers', 'following_url': 'https://api.github.com/users/RomitGandhi07/following{/other_user}', 'gists_url': 'https://api.github.com/users/RomitGandhi07/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/RomitGandhi07/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/RomitGandhi07/subscriptions', 'organizations_url': 'https://api.github.com/users/RomitGandhi07/orgs', 'repos_url': 'https://api.github.com/users/RomitGandhi07/repos', 'events_url': 'https://api.github.com/users/RomitGandhi07/events{/privacy}', 'received_events_url': 'https://api.github.com/users/RomitGandhi07/received_events', 'type': 'User', 'site_admin': False}","[{'id': 231569227, 'node_id': 'MDU6TGFiZWwyMzE1NjkyMjc=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Installers', 'name': 'Component:Installers', 'color': 'fef2c0', 'default': False, 'description': None}]",open,False,,[],,4,2020-06-12T11:25:59Z,2020-07-31T14:01:43Z,,NONE,,,"## Environment
- ejabberd version: 20.04
- OS: Windows 10
- Installed from: official binary installer
![Error](https://user-images.githubusercontent.com/46276226/84497740-fc095f80-accc-11ea-87a5-4fa658239f28.PNG)
## Errors from error.log/crash.log
No errors
## Bug description
I'm trying to install ejabberd but getting the error that **Error Running Post Install Script**
",
414,https://api.github.com/repos/processone/ejabberd/issues/3299,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3299/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3299/comments,https://api.github.com/repos/processone/ejabberd/issues/3299/events,https://github.com/processone/ejabberd/issues/3299,637442112,MDU6SXNzdWU2Mzc0NDIxMTI=,3299,ejabberd + mssql + rhel creating odbcinst.ini in /tmp/ejabbered - timing out,"{'login': 'zxed', 'id': 4975320, 'node_id': 'MDQ6VXNlcjQ5NzUzMjA=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/4975320?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/zxed', 'html_url': 'https://github.com/zxed', 'followers_url': 'https://api.github.com/users/zxed/followers', 'following_url': 'https://api.github.com/users/zxed/following{/other_user}', 'gists_url': 'https://api.github.com/users/zxed/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/zxed/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/zxed/subscriptions', 'organizations_url': 'https://api.github.com/users/zxed/orgs', 'repos_url': 'https://api.github.com/users/zxed/repos', 'events_url': 'https://api.github.com/users/zxed/events{/privacy}', 'received_events_url': 'https://api.github.com/users/zxed/received_events', 'type': 'User', 'site_admin': False}","[{'id': 1766218646, 'node_id': 'MDU6TGFiZWwxNzY2MjE4NjQ2', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Database:MSSQL', 'name': 'Database:MSSQL', 'color': 'f4f3a1', 'default': False, 'description': 'Microsoft SQL server'}]",closed,False,,[],,3,2020-06-12T02:38:19Z,2020-07-28T07:51:55Z,2020-07-20T11:06:47Z,NONE,,,"## Environment
- ejabberd version: 20.04
- OS: RHEL 8 (AWS)
- Installed from: rpm
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
sql_type: mssql
sql_server: ""some.public.host.name""
sql_database: ""db""
sql_username: ""ejabberd""
sql_password: ""some$password""
sql_pool_size: 5
...
```
## Errors from error.log/crash.log
```
2020-06-12 02:18:14 =ERROR REPORT====
** Generic server <0.510.0> terminating
** Last message in was {<0.452.0>,
{connect,1,1,2,2,2,1,1,""DRIVER=FreeTDS;SERVER=some.public.host.name;
UID=ejabberd;DATABASE=db;PWD=some$password;
PORT=1433;CLIENT_CHARSET=UTF-8;""],on,off},5000}
** When Server state == {state,#Port<0.53>,{<0.452.0>,#Ref<0.2789227436.861929474.261354>},
<0.452.0>,undefined,on,undefined,undefined,off,connecting,undefined,0,
[#Port<0.51>,#Port<0.52>],undefined,undefined}
** Reason for termination ==
** timeout
```
## Bug description
I'm following https://computingforgeeks.com/how-to-install-ejabberd-xmpp-server-on-rhel-8/ to get ejabberd installed on RHEL 8 (using the latest 20.04).
I'm also following a steps (1-3) from https://zend18.zendesk.com/hc/en-us/articles/218197897-Configuring-a-Linux-Server-to-Connect-to-an-MSSQL-Database-Using-ODBC
I've installed MS SQL on AWS RDS, VM with Sql on Azure and a SQL Azure Db - all have the same issue, which is that - isql connects and works so does tsql - but not ejabberd
As part of setting up unixODBC+Freetds - it had me look for libtdsodbc and update /etc/odbcinst.ini - which turns out to have two matches, /lib64/libtdsodbc.so.0 and /lib64/libtdsodbc.so (i used /lib64/libtdsodbc.so.0 and as I mentioned isql and tsql work., so id assume that ive set this up correctly)
I did notice that in /tmp/ejabberd there is another odbcinst.ini and this has
```
[FreeTDS]
Driver = libtdsodbc.so
```
I do not know if this is the issue - it seems like this is being created by ejabberd https://github.com/processone/ejabberd/blob/20.04/src/ejabberd_sql.erl#L1155 instead of using the existing (and maybe correct?) file thats sitting at /etc/odbcinst.ini
I'm still trying to get a handle on this - but thought I'd ask if this could be causing the issue with connecting from ejabberd (but no issues when using isql)
",
415,https://api.github.com/repos/processone/ejabberd/issues/3298,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3298/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3298/comments,https://api.github.com/repos/processone/ejabberd/issues/3298/events,https://github.com/processone/ejabberd/issues/3298,635158390,MDU6SXNzdWU2MzUxNTgzOTA=,3298,"https://www.process-one.net is showing ""403 Forbidden""","{'login': 'scott91e1', 'id': 6354142, 'node_id': 'MDQ6VXNlcjYzNTQxNDI=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/6354142?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/scott91e1', 'html_url': 'https://github.com/scott91e1', 'followers_url': 'https://api.github.com/users/scott91e1/followers', 'following_url': 'https://api.github.com/users/scott91e1/following{/other_user}', 'gists_url': 'https://api.github.com/users/scott91e1/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/scott91e1/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/scott91e1/subscriptions', 'organizations_url': 'https://api.github.com/users/scott91e1/orgs', 'repos_url': 'https://api.github.com/users/scott91e1/repos', 'events_url': 'https://api.github.com/users/scott91e1/events{/privacy}', 'received_events_url': 'https://api.github.com/users/scott91e1/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,7,2020-06-09T06:47:42Z,2020-06-10T00:27:57Z,2020-06-09T09:03:53Z,NONE,,,Just a heads up there seems to be a problem with the site.,
416,https://api.github.com/repos/processone/ejabberd/issues/3297,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3297/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3297/comments,https://api.github.com/repos/processone/ejabberd/issues/3297/events,https://github.com/processone/ejabberd/issues/3297,632296151,MDU6SXNzdWU2MzIyOTYxNTE=,3297,Logger config doesn't log,"{'login': 'anildigital', 'id': 266, 'node_id': 'MDQ6VXNlcjI2Ng==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/266?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/anildigital', 'html_url': 'https://github.com/anildigital', 'followers_url': 'https://api.github.com/users/anildigital/followers', 'following_url': 'https://api.github.com/users/anildigital/following{/other_user}', 'gists_url': 'https://api.github.com/users/anildigital/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/anildigital/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/anildigital/subscriptions', 'organizations_url': 'https://api.github.com/users/anildigital/orgs', 'repos_url': 'https://api.github.com/users/anildigital/repos', 'events_url': 'https://api.github.com/users/anildigital/events{/privacy}', 'received_events_url': 'https://api.github.com/users/anildigital/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179040924, 'node_id': 'MDU6TGFiZWwxNzkwNDA5MjQ=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Elixir', 'name': 'Component:Elixir', 'color': 'bfe5bf', 'default': False, 'description': None}]",open,False,,[],,0,2020-06-06T08:21:57Z,2020-06-09T10:37:25Z,,NONE,,,"Using
```
{:ejabberd, ""~> 20.4""}
Elixir 1.10.3
Erlang 22.3.4
```
I have this in config.exs
```
config :ejabberd,
file: ""config/ejabberd.yml"",
log_path: ""logs/ejabberd.log""
```
At the application start I see this
```
mix phx.server
[error] Failed to set logging: {:error, {:not_found, :default}}
[info] Loading configuration from config/ejabberd.yml
```",
417,https://api.github.com/repos/processone/ejabberd/issues/3296,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3296/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3296/comments,https://api.github.com/repos/processone/ejabberd/issues/3296/events,https://github.com/processone/ejabberd/issues/3296,631428341,MDU6SXNzdWU2MzE0MjgzNDE=,3296,New created shared roster groups are unuseable,"{'login': 'lorddavidiii', 'id': 20240690, 'node_id': 'MDQ6VXNlcjIwMjQwNjkw', 'avatar_url': 'https://avatars0.githubusercontent.com/u/20240690?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/lorddavidiii', 'html_url': 'https://github.com/lorddavidiii', 'followers_url': 'https://api.github.com/users/lorddavidiii/followers', 'following_url': 'https://api.github.com/users/lorddavidiii/following{/other_user}', 'gists_url': 'https://api.github.com/users/lorddavidiii/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/lorddavidiii/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/lorddavidiii/subscriptions', 'organizations_url': 'https://api.github.com/users/lorddavidiii/orgs', 'repos_url': 'https://api.github.com/users/lorddavidiii/repos', 'events_url': 'https://api.github.com/users/lorddavidiii/events{/privacy}', 'received_events_url': 'https://api.github.com/users/lorddavidiii/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/42', 'html_url': 'https://github.com/processone/ejabberd/milestone/42', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/42/labels', 'id': 5706346, 'node_id': 'MDk6TWlsZXN0b25lNTcwNjM0Ng==', 'number': 42, 'title': 'ejabberd 20.07', 'description': 'https://www.process-one.net/blog/ejabberd-20-07/', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 20, 'state': 'closed', 'created_at': '2020-07-28T07:56:43Z', 'updated_at': '2020-07-31T14:08:13Z', 'due_on': '2020-07-30T07:00:00Z', 'closed_at': '2020-07-31T14:05:45Z'}",3,2020-06-05T08:53:35Z,2020-07-31T14:04:11Z,2020-06-05T18:45:24Z,NONE,,,"## Enviroment
- ejabberd version: HEAD ( 482917348 )
- Erlang version: 22.3.4
- OS: Linux (arch linux)
- Installed from: source
## Description
New created shared roster groups (via webadmin or `ejabberdctl`) are not useable, adding user or get infos throw errors, see below.
## Steps to reproduce:
* create a new shared roster group: `ejabberdctl srg_create test example.com name description display`
* then `ejabberdctl srg_get_info test example.com` fails:
```
Unhandled exception occurred executing the command:
** exception error: no case clause matching
{ok,[{name,<<""name"">>},
{displayed_groups,[<<""display"">>]},
{description,<<""description"">>}]}
in function mod_admin_extra:srg_get_info/2 (src/mod_admin_extra.erl, line 1452)
in call from ejabberd_ctl:call_command/4 (src/ejabberd_ctl.erl, line 315)
in call from ejabberd_ctl:try_call_command/4 (src/ejabberd_ctl.erl, line 280)
in call from ejabberd_ctl:process2/4 (src/ejabberd_ctl.erl, line 233)
in call from ejabberd_ctl:process/2 (src/ejabberd_ctl.erl, line 211)
in call from rpc:'-handle_call_call/6-fun-0-'/5 (rpc.erl, line 197)
```
* also `ejabberdctl srg_user_add testuser example2.com test example.com` fails with:
```
Unhandled exception occurred executing the command:
** exception error: bad argument
in function lists:keysearch/3
called as lists:keysearch(displayed_groups,1,
{ok,[{name,<<""name"">>},
{displayed_groups,[<<""display"">>]},
{description,<<""description"">>}]})
in call from mod_shared_roster:get_group_opt/4 (src/mod_shared_roster.erl, line 503)
in call from mod_shared_roster:add_user_to_group2/3 (src/mod_shared_roster.erl, line 692)
in call from mod_admin_extra:srg_user_add/4 (src/mod_admin_extra.erl, line 1469)
in call from ejabberd_ctl:call_command/4 (src/ejabberd_ctl.erl, line 315)
in call from ejabberd_ctl:try_call_command/4 (src/ejabberd_ctl.erl, line 280)
in call from ejabberd_ctl:process2/4 (src/ejabberd_ctl.erl, line 233)
in call from ejabberd_ctl:process/2 (src/ejabberd_ctl.erl, line 211)
```",
418,https://api.github.com/repos/processone/ejabberd/issues/3295,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3295/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3295/comments,https://api.github.com/repos/processone/ejabberd/issues/3295/events,https://github.com/processone/ejabberd/issues/3295,631174607,MDU6SXNzdWU2MzExNzQ2MDc=,3295,Error - no match of right hand side value,"{'login': 'licaon-kter', 'id': 2282799, 'node_id': 'MDQ6VXNlcjIyODI3OTk=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2282799?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/licaon-kter', 'html_url': 'https://github.com/licaon-kter', 'followers_url': 'https://api.github.com/users/licaon-kter/followers', 'following_url': 'https://api.github.com/users/licaon-kter/following{/other_user}', 'gists_url': 'https://api.github.com/users/licaon-kter/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/licaon-kter/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/licaon-kter/subscriptions', 'organizations_url': 'https://api.github.com/users/licaon-kter/orgs', 'repos_url': 'https://api.github.com/users/licaon-kter/repos', 'events_url': 'https://api.github.com/users/licaon-kter/events{/privacy}', 'received_events_url': 'https://api.github.com/users/licaon-kter/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,"{'login': 'weiss', 'id': 71850, 'node_id': 'MDQ6VXNlcjcxODUw', 'avatar_url': 'https://avatars1.githubusercontent.com/u/71850?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/weiss', 'html_url': 'https://github.com/weiss', 'followers_url': 'https://api.github.com/users/weiss/followers', 'following_url': 'https://api.github.com/users/weiss/following{/other_user}', 'gists_url': 'https://api.github.com/users/weiss/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/weiss/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/weiss/subscriptions', 'organizations_url': 'https://api.github.com/users/weiss/orgs', 'repos_url': 'https://api.github.com/users/weiss/repos', 'events_url': 'https://api.github.com/users/weiss/events{/privacy}', 'received_events_url': 'https://api.github.com/users/weiss/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'weiss', 'id': 71850, 'node_id': 'MDQ6VXNlcjcxODUw', 'avatar_url': 'https://avatars1.githubusercontent.com/u/71850?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/weiss', 'html_url': 'https://github.com/weiss', 'followers_url': 'https://api.github.com/users/weiss/followers', 'following_url': 'https://api.github.com/users/weiss/following{/other_user}', 'gists_url': 'https://api.github.com/users/weiss/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/weiss/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/weiss/subscriptions', 'organizations_url': 'https://api.github.com/users/weiss/orgs', 'repos_url': 'https://api.github.com/users/weiss/repos', 'events_url': 'https://api.github.com/users/weiss/events{/privacy}', 'received_events_url': 'https://api.github.com/users/weiss/received_events', 'type': 'User', 'site_admin': False}]",,7,2020-06-04T22:00:22Z,2020-06-07T13:01:29Z,2020-06-05T14:17:19Z,CONTRIBUTOR,,,"HEAD (https://github.com/processone/ejabberd/commit/482917348b0890cf656d7972abae0911d512debc), Debian Buster, arm64, erlang 21.2.6,
```
[critical] <0.105.0>@ejabberd_app:start
:71 Failed to start ejabberd application: Exception occurred du
ring configuration processing. This is most likely due to fault
y/incompatible validator in third-party code. If you are not ru
nning any third-party code, please report the bug with ejabberd
configuration file attached and the following stacktrace inclu
ded:
** exception error: no match of right hand side value
#{host => ""upload.SOMEMACRO"",path => [],schem
e => ""https""}
in function yconf:uri_parse/1 (src/yconf.erl, line 369)
in call from yconf:'-url/1-fun-0-'/2 (src/yconf.erl, line 37
7)
in call from yconf:validate_option/3 (src/yconf.erl, line 12
27)
in call from yconf:validate_options/8 (src/yconf.erl, line 1
204)
in call from yconf:'-and_then/2-fun-0-'/3 (src/yconf.erl, li
ne 629)
in call from yconf:validate_option/3 (src/yconf.erl, line 12
27)
in call from yconf:validate_options/8 (src/yconf.erl, line 1
204)
in call from yconf:validate_option/3 (src/yconf.erl, line 12
27)
```
Compiled as usual, git pull, make update, new libs versions appeared.
Went back to working 20.04.40 (https://github.com/processone/ejabberd/commit/7a37483307e1f62c750ecde8a088edacbe03c51f).
Config like this: https://gist.github.com/dfc0b240754ed791d270a0c310730fed but also fails if I replace `@HOST@` with `mydomain.tld`.",
419,https://api.github.com/repos/processone/ejabberd/issues/3294,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3294/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3294/comments,https://api.github.com/repos/processone/ejabberd/issues/3294/events,https://github.com/processone/ejabberd/pull/3294,629755629,MDExOlB1bGxSZXF1ZXN0NDI3MDEwNzk0,3294,Update example config,"{'login': 'licaon-kter', 'id': 2282799, 'node_id': 'MDQ6VXNlcjIyODI3OTk=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2282799?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/licaon-kter', 'html_url': 'https://github.com/licaon-kter', 'followers_url': 'https://api.github.com/users/licaon-kter/followers', 'following_url': 'https://api.github.com/users/licaon-kter/following{/other_user}', 'gists_url': 'https://api.github.com/users/licaon-kter/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/licaon-kter/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/licaon-kter/subscriptions', 'organizations_url': 'https://api.github.com/users/licaon-kter/orgs', 'repos_url': 'https://api.github.com/users/licaon-kter/repos', 'events_url': 'https://api.github.com/users/licaon-kter/events{/privacy}', 'received_events_url': 'https://api.github.com/users/licaon-kter/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-03T07:19:19Z,2020-06-03T07:42:07Z,2020-06-03T07:42:07Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3294', 'html_url': 'https://github.com/processone/ejabberd/pull/3294', 'diff_url': 'https://github.com/processone/ejabberd/pull/3294.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3294.patch'}",turn_ipv?_address,
420,https://api.github.com/repos/processone/ejabberd/issues/3293,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3293/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3293/comments,https://api.github.com/repos/processone/ejabberd/issues/3293/events,https://github.com/processone/ejabberd/issues/3293,628794690,MDU6SXNzdWU2Mjg3OTQ2OTA=,3293,Can't get ejabberd to request letsencrypt certificate ACME module,"{'login': 'buddudevelopers', 'id': 56328383, 'node_id': 'MDQ6VXNlcjU2MzI4Mzgz', 'avatar_url': 'https://avatars3.githubusercontent.com/u/56328383?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/buddudevelopers', 'html_url': 'https://github.com/buddudevelopers', 'followers_url': 'https://api.github.com/users/buddudevelopers/followers', 'following_url': 'https://api.github.com/users/buddudevelopers/following{/other_user}', 'gists_url': 'https://api.github.com/users/buddudevelopers/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/buddudevelopers/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/buddudevelopers/subscriptions', 'organizations_url': 'https://api.github.com/users/buddudevelopers/orgs', 'repos_url': 'https://api.github.com/users/buddudevelopers/repos', 'events_url': 'https://api.github.com/users/buddudevelopers/events{/privacy}', 'received_events_url': 'https://api.github.com/users/buddudevelopers/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",open,False,"{'login': 'f055', 'id': 53429, 'node_id': 'MDQ6VXNlcjUzNDI5', 'avatar_url': 'https://avatars3.githubusercontent.com/u/53429?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/f055', 'html_url': 'https://github.com/f055', 'followers_url': 'https://api.github.com/users/f055/followers', 'following_url': 'https://api.github.com/users/f055/following{/other_user}', 'gists_url': 'https://api.github.com/users/f055/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/f055/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/f055/subscriptions', 'organizations_url': 'https://api.github.com/users/f055/orgs', 'repos_url': 'https://api.github.com/users/f055/repos', 'events_url': 'https://api.github.com/users/f055/events{/privacy}', 'received_events_url': 'https://api.github.com/users/f055/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'f055', 'id': 53429, 'node_id': 'MDQ6VXNlcjUzNDI5', 'avatar_url': 'https://avatars3.githubusercontent.com/u/53429?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/f055', 'html_url': 'https://github.com/f055', 'followers_url': 'https://api.github.com/users/f055/followers', 'following_url': 'https://api.github.com/users/f055/following{/other_user}', 'gists_url': 'https://api.github.com/users/f055/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/f055/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/f055/subscriptions', 'organizations_url': 'https://api.github.com/users/f055/orgs', 'repos_url': 'https://api.github.com/users/f055/repos', 'events_url': 'https://api.github.com/users/f055/events{/privacy}', 'received_events_url': 'https://api.github.com/users/f055/received_events', 'type': 'User', 'site_admin': False}, {'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]",,5,2020-06-01T23:33:06Z,2020-08-20T09:57:46Z,,NONE,,,"**Is your feature request related to a problem? Please describe.**
I tried to follow the[ guide to setup ejabberd ACME with ejabberd](https://docs.ejabberd.im/admin/configuration/basic/#acme) 20.01-1 on Ubuntu 20.04 LTS X64 on digitalocean cloud server but I keep getting the error
`Error: ""Challenge failed for domain conference.fastmusawo.com: ACME server reported: Fetching http://conference.fastmusawo.com/.well-known/acme-challenge/WRvBWJWsSMXyI9X2UwKrvXWXl7NT77XmT1NABlB7mEo: Error getting validation data (error type: connection)""
`
These are the steps I followed.
1. I registered my domain fastmusawo.com
2. I registered and setup a cheap ubuntu linux server (Ubuntu 20.04 LTS X64) droplet at digitalocean.com and logged in via putty SSH.
3. I setup ejabberd `apt install -y ejabberd`
4. I edited the file `/etc/ejabberd/ejabberd.yml` and added my domain to the hosts section
```
hosts:
- localhost
- fastmusawo.com
```
i added acme url to staging for testing
```
acme:
## Staging environment
ca_url: https://acme-staging-v02.api.letsencrypt.org/directory
## Production environment (the default):
# ca_url: https://acme-v02.api.letsencrypt.org/directory
```
I redirected traffic from port 80 to port 5280
```
sudo iptables -A INPUT -i eth0 -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -i eth0 -p tcp --dport 5280 -j ACCEPT
sudo iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 5280
```
I restarted ejabberd `ejabberdctl restart`
I tried to request certificates for the domain I fully control
`ejabberdctl request_certificate all`
and i get the error
`Error: ""Challenge failed for domain conference.fastmusawo.com: ACME server reported: Fetching http://conference.fastmusawo.com/.well-known/acme-challenge/NIjL9YNBw8ta8Lqu5SXDn6FhjcGtDHgEpaekpNbgCGw: Error getting validation data (error type: connection)""`
**Describe the solution you'd like**
I want a guide to enable ejabberd request its own certificates
**Describe alternatives you've considered**
using the native letsencrypt python client is an alternative but you have to manually grant ejabberd permission to the certificates
**Additional context**
I am not sure whether it is a bug or I missed something. Anyone who has got this working should guide us. Thanks
",
421,https://api.github.com/repos/processone/ejabberd/issues/3292,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3292/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3292/comments,https://api.github.com/repos/processone/ejabberd/issues/3292/events,https://github.com/processone/ejabberd/issues/3292,628634104,MDU6SXNzdWU2Mjg2MzQxMDQ=,3292,Installation issues,"{'login': 'LumiProj', 'id': 59764810, 'node_id': 'MDQ6VXNlcjU5NzY0ODEw', 'avatar_url': 'https://avatars2.githubusercontent.com/u/59764810?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/LumiProj', 'html_url': 'https://github.com/LumiProj', 'followers_url': 'https://api.github.com/users/LumiProj/followers', 'following_url': 'https://api.github.com/users/LumiProj/following{/other_user}', 'gists_url': 'https://api.github.com/users/LumiProj/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/LumiProj/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/LumiProj/subscriptions', 'organizations_url': 'https://api.github.com/users/LumiProj/orgs', 'repos_url': 'https://api.github.com/users/LumiProj/repos', 'events_url': 'https://api.github.com/users/LumiProj/events{/privacy}', 'received_events_url': 'https://api.github.com/users/LumiProj/received_events', 'type': 'User', 'site_admin': False}","[{'id': 231569227, 'node_id': 'MDU6TGFiZWwyMzE1NjkyMjc=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Installers', 'name': 'Component:Installers', 'color': 'fef2c0', 'default': False, 'description': None}, {'id': 346842756, 'node_id': 'MDU6TGFiZWwzNDY4NDI3NTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Note:Cannot%20reproduce', 'name': 'Note:Cannot reproduce', 'color': 'c7def8', 'default': False, 'description': None}]",closed,False,,[],,10,2020-06-01T18:20:00Z,2020-08-23T12:05:27Z,2020-06-24T22:48:55Z,NONE,,,"Hi,
I installed on other machines and it went well with success but in few machines I am getting post installation error. I don't know how to figure out the main cause I searched for the log and didn't find any specific details.
These are the last few lines of the log .
```
Creating Desktop Shortcut for Start ejabberd
Creating Desktop Shortcut for Stop ejabberd
Executing final installation script
Error executing post installation script
C:\Program Files\eb\bin\postinstall.cmd
\Program ended with an error exit code
Creating Uninstaller
Creating uninstaller 25%
Creating uninstaller 50%
Creating uninstaller 75%
Creating uninstaller 100%
Uninstaller icon changed
Installation completed
Log finished 06/01/2020 at 13:17:13
Exiting with code 0
```",
422,https://api.github.com/repos/processone/ejabberd/issues/3291,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3291/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3291/comments,https://api.github.com/repos/processone/ejabberd/issues/3291/events,https://github.com/processone/ejabberd/issues/3291,627267844,MDU6SXNzdWU2MjcyNjc4NDQ=,3291,OpenSSL error with Ejabberd 20.04,"{'login': 'uli-a', 'id': 13470788, 'node_id': 'MDQ6VXNlcjEzNDcwNzg4', 'avatar_url': 'https://avatars3.githubusercontent.com/u/13470788?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/uli-a', 'html_url': 'https://github.com/uli-a', 'followers_url': 'https://api.github.com/users/uli-a/followers', 'following_url': 'https://api.github.com/users/uli-a/following{/other_user}', 'gists_url': 'https://api.github.com/users/uli-a/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/uli-a/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/uli-a/subscriptions', 'organizations_url': 'https://api.github.com/users/uli-a/orgs', 'repos_url': 'https://api.github.com/users/uli-a/repos', 'events_url': 'https://api.github.com/users/uli-a/events{/privacy}', 'received_events_url': 'https://api.github.com/users/uli-a/received_events', 'type': 'User', 'site_admin': False}","[{'id': 231569227, 'node_id': 'MDU6TGFiZWwyMzE1NjkyMjc=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Installers', 'name': 'Component:Installers', 'color': 'fef2c0', 'default': False, 'description': None}]",open,False,,[],,0,2020-05-29T13:26:44Z,2020-06-09T10:57:59Z,,NONE,,,"I tried to install ejabberd 20.04 on openSUSE LEAP 15.1 using the installer. When starting the server I get the following error message:
`Failed to load NIF library: '/usr/lib64/libcrypto.so.1.0.0: version 'OPENSSL_1.0.1' not found`
I have openssl 1.1 installed on that server, but ejabberd 20.03 was running fine.",
423,https://api.github.com/repos/processone/ejabberd/issues/3290,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3290/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3290/comments,https://api.github.com/repos/processone/ejabberd/issues/3290/events,https://github.com/processone/ejabberd/issues/3290,626738658,MDU6SXNzdWU2MjY3Mzg2NTg=,3290,mod_block_strangers is dropping server errors (XEP-0086),"{'login': 'member7me', 'id': 66087479, 'node_id': 'MDQ6VXNlcjY2MDg3NDc5', 'avatar_url': 'https://avatars0.githubusercontent.com/u/66087479?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/member7me', 'html_url': 'https://github.com/member7me', 'followers_url': 'https://api.github.com/users/member7me/followers', 'following_url': 'https://api.github.com/users/member7me/following{/other_user}', 'gists_url': 'https://api.github.com/users/member7me/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/member7me/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/member7me/subscriptions', 'organizations_url': 'https://api.github.com/users/member7me/orgs', 'repos_url': 'https://api.github.com/users/member7me/repos', 'events_url': 'https://api.github.com/users/member7me/events{/privacy}', 'received_events_url': 'https://api.github.com/users/member7me/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,3,2020-05-28T18:58:55Z,2020-07-15T11:28:03Z,,NONE,,,"## Environment
- ejabberd version: 20.04
- OS: Debian
- Installed from: official deb/rpm
## Bug description
Hello! mod_block_strangers is dropping errors, I mean it's blocking error stanzas.
Examples:
Sending message to outside recipient (not local xmpp). Example of out stanza with mod_block_strangers=on
```xml
test
test
bot
```
XMPP isn't local. There is no error stanza. Should be, because this domain doesn't exist.
Example of out stanza with mod_block_strangers=off
```xml
test
botbotDNS lookup failed: non-existing domain
test
```
On the local xmpp's no such problem. Everything is okay. I think, it's because allow_local_users, that by default is 'true'. Example of stanza with local domain:
```xml
test
test
botbot
test
test
```
So if **mod_block_strangers** is enabled, we don't receive error stanza and error code from out server. Error msg is banning with message body together.
Problem was disscussed here https://github.com/processone/ejabberd/issues/2197
Yes, we are returning 503 ""service-unavailable"" error now, but there are a lot of errors not only 503.
I suggest, that all errors we are returning - https://xmpp.org/extensions/xep-0086.html
Thanks a lot for future feedback!",
424,https://api.github.com/repos/processone/ejabberd/issues/3289,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3289/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3289/comments,https://api.github.com/repos/processone/ejabberd/issues/3289/events,https://github.com/processone/ejabberd/issues/3289,626429028,MDU6SXNzdWU2MjY0MjkwMjg=,3289,Postgres ERROR: tuple concurrently updated on boot,"{'login': 'sernik', 'id': 7036932, 'node_id': 'MDQ6VXNlcjcwMzY5MzI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/7036932?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/sernik', 'html_url': 'https://github.com/sernik', 'followers_url': 'https://api.github.com/users/sernik/followers', 'following_url': 'https://api.github.com/users/sernik/following{/other_user}', 'gists_url': 'https://api.github.com/users/sernik/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/sernik/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/sernik/subscriptions', 'organizations_url': 'https://api.github.com/users/sernik/orgs', 'repos_url': 'https://api.github.com/users/sernik/repos', 'events_url': 'https://api.github.com/users/sernik/events{/privacy}', 'received_events_url': 'https://api.github.com/users/sernik/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179046635, 'node_id': 'MDU6TGFiZWwxNzkwNDY2MzU=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Databases', 'name': 'Component:Databases', 'color': 'fef2c0', 'default': False, 'description': None}]",closed,False,,[],,2,2020-05-28T11:19:31Z,2020-05-29T17:08:27Z,2020-05-29T17:08:27Z,NONE,,,"## Environment
- ejabberd version: 20.04
- checked with postgresql 9.6.17 and 12.2 backends
- Erlang version: Erlang (SMP,ASYNC_THREADS) (BEAM) emulator version 10.5
- Docker Host OS: Linux (Debian)
- Installed from: docker image (ejabberd/ecs:20.04)
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
default_db: sql
new_sql_schema: true
sql_type: pgsql
```
## Errors from error.log/crash.log
No errors
## Bug description
Postgres outputs `ERROR: tuple concurrently updated on boot` on ejabberd container boot
[ejabberd_sql.erl#L957](https://github.com/processone/ejabberd/blob/1f7ca91670b57eb8306660e5deae46f1b4ed5d40/src/ejabberd_sql.erl#L957)
```
[8] LOG: starting PostgreSQL 12.2 on x86_64-alpine-linux-musl, compiled by gcc (Alpine 9.2.0) 9.2.0, 64-bit
[8] LOG: listening on IPv4 address ""0.0.0.0"", port 5432
[8] LOG: listening on IPv6 address ""::"", port 5432
[8] LOG: listening on Unix socket ""/tmp/.s.PGSQL.5432""
[8] LOG: database system is ready to accept connections
[20] LOG: statement: SELECT oid, typname FROM pg_type
[22] LOG: statement: SELECT oid, typname FROM pg_type
[19] LOG: statement: SELECT oid, typname FROM pg_type
[20] LOG: statement: alter database ""ejabberd"" set standard_conforming_strings='off';
[17] LOG: statement: SELECT oid, typname FROM pg_type
[20] LOG: statement: set standard_conforming_strings to 'off';
[20] LOG: statement: select current_setting('server_version_num')
[16] LOG: statement: SELECT oid, typname FROM pg_type
[24] LOG: statement: SELECT oid, typname FROM pg_type
[18] LOG: statement: SELECT oid, typname FROM pg_type
[25] LOG: statement: SELECT oid, typname FROM pg_type
[22] LOG: statement: alter database ""ejabberd"" set standard_conforming_strings='off';
[23] LOG: statement: SELECT oid, typname FROM pg_type
[22] LOG: statement: set standard_conforming_strings to 'off';
[19] LOG: statement: alter database ""ejabberd"" set standard_conforming_strings='off';
[21] LOG: statement: SELECT oid, typname FROM pg_type
[19] LOG: statement: set standard_conforming_strings to 'off';
[22] LOG: statement: select current_setting('server_version_num')
[24] LOG: statement: alter database ""ejabberd"" set standard_conforming_strings='off';
[25] LOG: statement: alter database ""ejabberd"" set standard_conforming_strings='off';
[25] ERROR: tuple concurrently updated
[25] STATEMENT: alter database ""ejabberd"" set standard_conforming_strings='off';
[19] LOG: statement: select current_setting('server_version_num')
[25] LOG: statement: ROLLBACK
[25] WARNING: there is no transaction in progress
[24] LOG: statement: set standard_conforming_strings to 'off';
[25] LOG: statement: set standard_conforming_strings to 'off';
[24] LOG: statement: select current_setting('server_version_num')
[25] LOG: statement: select current_setting('server_version_num')
[17] LOG: statement: alter database ""ejabberd"" set standard_conforming_strings='off';
[23] LOG: statement: alter database ""ejabberd"" set standard_conforming_strings='off';
[16] LOG: statement: alter database ""ejabberd"" set standard_conforming_strings='off';
[23] ERROR: tuple concurrently updated
[23] STATEMENT: alter database ""ejabberd"" set standard_conforming_strings='off';
[23] LOG: statement: ROLLBACK
[23] WARNING: there is no transaction in progress
[16] LOG: statement: set standard_conforming_strings to 'off';
[18] LOG: statement: alter database ""ejabberd"" set standard_conforming_strings='off';
[16] LOG: statement: select current_setting('server_version_num')
[17] LOG: statement: set standard_conforming_strings to 'off';
[23] LOG: statement: set standard_conforming_strings to 'off';
[17] LOG: statement: select current_setting('server_version_num')
[23] LOG: statement: select current_setting('server_version_num')
[18] LOG: statement: set standard_conforming_strings to 'off';
[18] LOG: statement: select current_setting('server_version_num')
[21] LOG: statement: alter database ""ejabberd"" set standard_conforming_strings='off';
[21] LOG: statement: set standard_conforming_strings to 'off';
[21] LOG: statement: select current_setting('server_version_num')
```",
425,https://api.github.com/repos/processone/ejabberd/issues/3288,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3288/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3288/comments,https://api.github.com/repos/processone/ejabberd/issues/3288/events,https://github.com/processone/ejabberd/issues/3288,625777164,MDU6SXNzdWU2MjU3NzcxNjQ=,3288,Update ejabberd.yml.example to include custom headers for mod_http_upload,"{'login': 'f055', 'id': 53429, 'node_id': 'MDQ6VXNlcjUzNDI5', 'avatar_url': 'https://avatars3.githubusercontent.com/u/53429?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/f055', 'html_url': 'https://github.com/f055', 'followers_url': 'https://api.github.com/users/f055/followers', 'following_url': 'https://api.github.com/users/f055/following{/other_user}', 'gists_url': 'https://api.github.com/users/f055/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/f055/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/f055/subscriptions', 'organizations_url': 'https://api.github.com/users/f055/orgs', 'repos_url': 'https://api.github.com/users/f055/repos', 'events_url': 'https://api.github.com/users/f055/events{/privacy}', 'received_events_url': 'https://api.github.com/users/f055/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",closed,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/42', 'html_url': 'https://github.com/processone/ejabberd/milestone/42', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/42/labels', 'id': 5706346, 'node_id': 'MDk6TWlsZXN0b25lNTcwNjM0Ng==', 'number': 42, 'title': 'ejabberd 20.07', 'description': 'https://www.process-one.net/blog/ejabberd-20-07/', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 20, 'state': 'closed', 'created_at': '2020-07-28T07:56:43Z', 'updated_at': '2020-07-31T14:08:13Z', 'due_on': '2020-07-30T07:00:00Z', 'closed_at': '2020-07-31T14:05:45Z'}",2,2020-05-27T15:05:00Z,2020-07-31T14:04:11Z,2020-06-09T11:09:54Z,MEMBER,,,"**Is your feature request related to a problem? Please describe.**
At the moment, a fresh install of latest ejabberd doesn't pass the HTTP File Upload test in the XMPP Compliance suite, meaning the default config for HTTP File Upload is not optimal.
**Describe the solution you'd like**
It could easily be passed by an out-of-the-box ejabberd if we update the default config file to include the necessary custom headers:
```yml
mod_http_upload:
put_url: https://@HOST@:5443/upload
custom_headers:
""Access-Control-Allow-Origin"": ""https://@HOST@""
""Access-Control-Allow-Methods"": ""GET,HEAD,PUT,OPTIONS""
""Access-Control-Allow-Headers"": ""Content-Type""
```
",
426,https://api.github.com/repos/processone/ejabberd/issues/3287,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3287/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3287/comments,https://api.github.com/repos/processone/ejabberd/issues/3287/events,https://github.com/processone/ejabberd/issues/3287,624033500,MDU6SXNzdWU2MjQwMzM1MDA=,3287,Online user recognition is not all users,"{'login': 'unturtle', 'id': 26269800, 'node_id': 'MDQ6VXNlcjI2MjY5ODAw', 'avatar_url': 'https://avatars3.githubusercontent.com/u/26269800?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/unturtle', 'html_url': 'https://github.com/unturtle', 'followers_url': 'https://api.github.com/users/unturtle/followers', 'following_url': 'https://api.github.com/users/unturtle/following{/other_user}', 'gists_url': 'https://api.github.com/users/unturtle/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/unturtle/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/unturtle/subscriptions', 'organizations_url': 'https://api.github.com/users/unturtle/orgs', 'repos_url': 'https://api.github.com/users/unturtle/repos', 'events_url': 'https://api.github.com/users/unturtle/events{/privacy}', 'received_events_url': 'https://api.github.com/users/unturtle/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,14,2020-05-25T04:16:06Z,2020-06-02T09:14:49Z,2020-06-02T07:35:05Z,NONE,,,"## Environment
- ejabberd version: 20.03
- Erlang version:
```
# /usr/local/erlang21/bin/erl +V
Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.2
```
- OS: CentOS 7
```
# cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)
```
- Installed from: source
## Configuration (only if needed):
```
grep -Ev '^$|^\s*#' /usr/local/ejabberd2003/etc/ejabberd/ejabberd.yml
```
## Errors from error.log/crash.log
No errors
## Bug description
particularity
- Use mod_shared_roster (EveryBody : @all@)
- Use postgresql DB
- **cluster (2 ejabberd server)**
benchmarking through tsung
- 1000 tests
- Login only test
```
# vi bsgw13.xml
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
# tsung -f bsgw13.xml start
Starting Tsung
Log directory is: /root/.tsung/log/....
...
```
Online test user: Pidgin (XMPP Client) login
(Concurrent login with tsung)
```
$ /usr/local/ejabberd2003/sbin/ejabberdctl connected-users-number
1001
```
![online_users](https://user-images.githubusercontent.com/26269800/82777414-0633fd00-9e89-11ea-8f65-be482b0c1030.png)
Pidgin has 896 online users
**Why 1000 users are not online?**
(**I corrected my mistake**)",
427,https://api.github.com/repos/processone/ejabberd/issues/3286,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3286/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3286/comments,https://api.github.com/repos/processone/ejabberd/issues/3286/events,https://github.com/processone/ejabberd/issues/3286,623758765,MDU6SXNzdWU2MjM3NTg3NjU=,3286,Failed to find a certificate matching the domain in SNI extension,"{'login': 'kozross', 'id': 8463904, 'node_id': 'MDQ6VXNlcjg0NjM5MDQ=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/8463904?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/kozross', 'html_url': 'https://github.com/kozross', 'followers_url': 'https://api.github.com/users/kozross/followers', 'following_url': 'https://api.github.com/users/kozross/following{/other_user}', 'gists_url': 'https://api.github.com/users/kozross/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/kozross/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/kozross/subscriptions', 'organizations_url': 'https://api.github.com/users/kozross/orgs', 'repos_url': 'https://api.github.com/users/kozross/repos', 'events_url': 'https://api.github.com/users/kozross/events{/privacy}', 'received_events_url': 'https://api.github.com/users/kozross/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,2,2020-05-23T23:11:04Z,2020-07-16T17:53:36Z,,NONE,,,"## Environment
- ejabberd version: 20.01
- Erlang version: `Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.7.2`
- OS: Arch Linux ARM
- Installed from: distro package
## Errors from error.log/crash.log
```
2020-05-24 11:08:04.574298+12:00 [warning]
<0.518.0>@ejabberd_c2s:process_terminated/2:312 (tls|<0.518.0>)
Failed to secure c2s connection: TLS failed:
Failed to find a certificate matching the domain in SNI extension:
error:1422E0EA:SSL routines:final_server_name:callback failed
```
## Bug description
After a recent update of both certbot and ejabberd, I can no longer bring up the server. It starts up normally, and then dies with the error pasted.
",
428,https://api.github.com/repos/processone/ejabberd/issues/3285,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3285/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3285/comments,https://api.github.com/repos/processone/ejabberd/issues/3285/events,https://github.com/processone/ejabberd/issues/3285,623550599,MDU6SXNzdWU2MjM1NTA1OTk=,3285,Documentation : Several GET endpoints are listed as POST ,"{'login': 'abbasidaniyal', 'id': 36009198, 'node_id': 'MDQ6VXNlcjM2MDA5MTk4', 'avatar_url': 'https://avatars1.githubusercontent.com/u/36009198?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/abbasidaniyal', 'html_url': 'https://github.com/abbasidaniyal', 'followers_url': 'https://api.github.com/users/abbasidaniyal/followers', 'following_url': 'https://api.github.com/users/abbasidaniyal/following{/other_user}', 'gists_url': 'https://api.github.com/users/abbasidaniyal/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/abbasidaniyal/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/abbasidaniyal/subscriptions', 'organizations_url': 'https://api.github.com/users/abbasidaniyal/orgs', 'repos_url': 'https://api.github.com/users/abbasidaniyal/repos', 'events_url': 'https://api.github.com/users/abbasidaniyal/events{/privacy}', 'received_events_url': 'https://api.github.com/users/abbasidaniyal/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,5,2020-05-23T02:00:59Z,2020-05-29T13:35:47Z,2020-05-29T13:35:47Z,NONE,,,"## Environment
- ejabberd version: `20.04`
- Erlang version: `Erlang (SMP,ASYNC_THREADS) (BEAM) emulator version 10.6.4`
- OS: Ubuntu 20.04
- Installed from: source
## Bug description
Several endpoints like /api/connected_users_info and /api/muc_online_rooms work via a GET request. The documentation at https://docs.ejabberd.im/developer/ejabberd-api/admin-api/ lists are the requests as POST. This leads to a 400 Bad Request Error.
",
429,https://api.github.com/repos/processone/ejabberd/issues/3284,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3284/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3284/comments,https://api.github.com/repos/processone/ejabberd/issues/3284/events,https://github.com/processone/ejabberd/issues/3284,623364041,MDU6SXNzdWU2MjMzNjQwNDE=,3284,Warnings about deprecated functions with Erlang/OTP 23,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/42', 'html_url': 'https://github.com/processone/ejabberd/milestone/42', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/42/labels', 'id': 5706346, 'node_id': 'MDk6TWlsZXN0b25lNTcwNjM0Ng==', 'number': 42, 'title': 'ejabberd 20.07', 'description': 'https://www.process-one.net/blog/ejabberd-20-07/', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 20, 'state': 'closed', 'created_at': '2020-07-28T07:56:43Z', 'updated_at': '2020-07-31T14:08:13Z', 'due_on': '2020-07-30T07:00:00Z', 'closed_at': '2020-07-31T14:05:45Z'}",0,2020-05-22T17:06:41Z,2020-07-31T14:04:10Z,2020-06-03T15:11:34Z,MEMBER,,,"When compiling ejabberd with Erlang/OTP 23, `make xref` reports a few warnings:
==> ejabberd (xref)
src/ejabberd_config_transformer.erl:74: Warning: ejabberd_config_transformer:transform/4
calls deprecated function http_uri:parse/1 (Xref)
src/eldap_pool.erl:69: Warning: eldap_pool:do_request/2
calls deprecated function pg2:get_closest_pid/1 (Xref)
src/eldap_pool.erl:48: Warning: eldap_pool:start_link/7
calls deprecated function pg2:create/1 (Xref)
src/eldap_pool.erl:48: Warning: eldap_pool:start_link/7
calls deprecated function pg2:join/2 (Xref)
src/misc.erl:326: Warning: misc:try_url/1
calls deprecated function http_uri:parse/1 (Xref)
src/mod_http_upload.erl:712: Warning: mod_http_upload:get_proc_name/3
calls deprecated function http_uri:parse/1 (Xref)
src/mod_http_upload.erl:933: Warning: mod_http_upload:make_query_string/3
calls deprecated function crypto:hmac/3 (Xref)
src/mod_mix.erl:643: Warning: mod_mix:make_id/2
calls deprecated function crypto:hmac/4 (Xref)
src/mod_s2s_dialback.erl:305: Warning: mod_s2s_dialback:make_key/3
calls deprecated function crypto:hmac/3 (Xref)
src/mod_sip.erl:331: Warning: mod_sip:mod_opt_type/1
calls deprecated function http_uri:parse/1 (Xref)
src/mod_stun_disco.erl:557: Warning: mod_stun_disco:make_password/2
calls deprecated function crypto:hmac/3 (Xref)
ERROR: xref failed while processing /home/travis/build/processone/ejabberd: rebar_abort
Makefile:123: recipe for target 'xref' failed
make: *** [xref] Error 1
They can be grouped in three libraries:
A) warnings in several parts of ejabberd:
* **http_uri** deprecated since OTP 23 and will be removed in OTP 25
http://erlang.org/documentation/doc-11.0/lib/inets-7.2/doc/html/http_uri.html
* the replacement uri_string is available since OTP 21
http://erlang.org/documentation/doc-10.0/lib/stdlib-3.5/doc/html/uri_string.html
:heavy_check_mark: Fixed in c0f7008e96b8159367d025c61f5230685a8c5993
B) warnings in eldap_pool.erl:
* **pg2** is deprecated in OTP 23 and will be removed in OTP 24
http://erlang.org/documentation/doc-11.0/lib/kernel-7.0/doc/html/pg2.html
Documentation of pg2 in OTP 19.3:
http://erlang.org/documentation/doc-8.3/lib/kernel-5.2/doc/html/pg2.html
* the replacement pg is available since OTP 23
http://erlang.org/documentation/doc-11.0/lib/kernel-7.0/doc/html/pg.html
:heavy_check_mark: Fixed in c0f7008e96b8159367d025c61f5230685a8c5993
C) warnings in several parts of ejabberd:
* **crypto:hmac** functions are deprecated in OTP 23 and will be removed in OTP 24
http://erlang.org/documentation/doc-11.0/lib/crypto-4.7/doc/html/new_api.html
* the replacement crypto:mac are available since OTP 22.1
http://erlang.org/documentation/doc-10.5/lib/crypto-4.6/doc/html/crypto.html#mac-3
:heavy_check_mark: Fixed in c0f7008e96b8159367d025c61f5230685a8c5993
D) warnings in several dependencies hosted in https://github.com/processone/
* https://github.com/processone/cache_tab
* https://github.com/processone/p1_utils
* https://github.com/processone/stun
* https://github.com/processone/xmpp
* https://github.com/processone/yconf
:heavy_check_mark: Fixed in 482917348b0890cf656d7972abae0911d512debc
E) warnings in erlang-jose, see https://github.com/potatosalad/erlang-jose/issues/87
:warning: Not yet fixed",
430,https://api.github.com/repos/processone/ejabberd/issues/3283,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3283/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3283/comments,https://api.github.com/repos/processone/ejabberd/issues/3283/events,https://github.com/processone/ejabberd/issues/3283,622723696,MDU6SXNzdWU2MjI3MjM2OTY=,3283,Issue with function gen_mod:get_module_opt,"{'login': 'geniussy88', 'id': 29977795, 'node_id': 'MDQ6VXNlcjI5OTc3Nzk1', 'avatar_url': 'https://avatars2.githubusercontent.com/u/29977795?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/geniussy88', 'html_url': 'https://github.com/geniussy88', 'followers_url': 'https://api.github.com/users/geniussy88/followers', 'following_url': 'https://api.github.com/users/geniussy88/following{/other_user}', 'gists_url': 'https://api.github.com/users/geniussy88/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/geniussy88/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/geniussy88/subscriptions', 'organizations_url': 'https://api.github.com/users/geniussy88/orgs', 'repos_url': 'https://api.github.com/users/geniussy88/repos', 'events_url': 'https://api.github.com/users/geniussy88/events{/privacy}', 'received_events_url': 'https://api.github.com/users/geniussy88/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,5,2020-05-21T19:20:13Z,2020-05-25T10:57:51Z,2020-05-25T10:57:51Z,NONE,,,"Hello,
The function gen_mod:get_module_opt/4 is marked as undefined in Ejabberd 20.04.
I saw some code changes in your source and default values shouldn't be there anymore. No prob. But when I go for gen_mod:get_module_opt/3, the module is not recognized anymore and Ejabberd interprets the name of the module as a typo by suggesting another name of an existent module.
Do you have an idea about what's going on? Codes are posted here: https://stackoverflow.com/questions/61918443/ejabberd-custom-module-compiling-errors-unknown-option-auth-token.
Thank's.
",
431,https://api.github.com/repos/processone/ejabberd/issues/3282,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3282/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3282/comments,https://api.github.com/repos/processone/ejabberd/issues/3282/events,https://github.com/processone/ejabberd/issues/3282,621847785,MDU6SXNzdWU2MjE4NDc3ODU=,3282,Problems compiling ejabberd with Erlang/OTP 23,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179043544, 'node_id': 'MDU6TGFiZWwxNzkwNDM1NDQ=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Build', 'name': 'Component:Build', 'color': 'bfdadc', 'default': False, 'description': None}]",closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/42', 'html_url': 'https://github.com/processone/ejabberd/milestone/42', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/42/labels', 'id': 5706346, 'node_id': 'MDk6TWlsZXN0b25lNTcwNjM0Ng==', 'number': 42, 'title': 'ejabberd 20.07', 'description': 'https://www.process-one.net/blog/ejabberd-20-07/', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 20, 'state': 'closed', 'created_at': '2020-07-28T07:56:43Z', 'updated_at': '2020-07-31T14:08:13Z', 'due_on': '2020-07-30T07:00:00Z', 'closed_at': '2020-07-31T14:05:45Z'}",0,2020-05-20T15:17:11Z,2020-07-31T14:04:10Z,2020-06-03T15:10:45Z,MEMBER,,,"ejabberd currently supports and is tested with Erlang/OTP versions 19.3 and 22.3.
This is a list of known problems compiling with 23.0, and where to find more information:
A) **eimp** and **sqlite3** complain about 'erl_interface.h' not found: https://github.com/processone/eimp/issues/12
:heavy_check_mark: Fixed in 1d7e29765e4eae3a5d6e3d594dfb2e9b4f1bd8af
B) Several other dependencies (cache_tab, fast_tls, stringprep,...) complain like this:
```
Compiling c_src/ets_cache.c
/usr/bin/ld: cannot find -lerl_interface
collect2: error: ld returned 1 exit status
ERROR: sh(cc c_src/ets_cache.o $LDFLAGS -shared
-L""/usr/lib/erlang/lib/erl_interface-4.0/lib""
-lerl_interface -lei -o priv/lib/ets_cache.so)
failed with return code 1 and the following output:
/usr/bin/ld: cannot find -lerl_interface
collect2: error: ld returned 1 exit status
```
:heavy_check_mark: Fixed in 21312c79aa1c1c319f2b1859184a5ef3126c7ac9
C) **jiffy** complains about `undef rebar_utils,get_cwd,...` see https://github.com/davisp/jiffy/issues/197
:heavy_check_mark: A workaround was committed in 2ca5712507473578fe00e4a1bce8e25a0d9f1bca
D) **epam** dependency uses erl_interface: https://github.com/processone/epam/issues/9
It uses several several functions, including _erl_free, erl_decode, erl_encode, erl_term_len_. So that dependency would require a major update to use ei_ equivalent functions. On the good news, it seems Erlang 19.3 already supports that new ei_ API, so in theory it would be possible to update epam to support from Erlang [19.3 erl_interface](http://erlang.org/documentation/doc-8.3/lib/erl_interface-3.9.3/doc/html/index.html) to [23.0 ei](http://erlang.org/documentation/doc-11.0/lib/erl_interface-4.0/doc/html/index.html).
:heavy_check_mark: epam updated to work with Erlan/OTP 23: https://github.com/processone/epam/commit/dc6e01da958b8dd21bb6e261aa185066e427e6f2
E) **xref** reports a few warnings about deprecated functions: https://github.com/processone/ejabberd/issues/3284
:heavy_check_mark: ejabberd code fixed in c0f7008e96b8159367d025c61f5230685a8c5993
:heavy_check_mark: dependencies fixed in 482917348b0890cf656d7972abae0911d512debc",
432,https://api.github.com/repos/processone/ejabberd/issues/3281,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3281/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3281/comments,https://api.github.com/repos/processone/ejabberd/issues/3281/events,https://github.com/processone/ejabberd/issues/3281,620979262,MDU6SXNzdWU2MjA5NzkyNjI=,3281,mod_register_web - static register.css after path change,"{'login': 'dschense', 'id': 2733860, 'node_id': 'MDQ6VXNlcjI3MzM4NjA=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/2733860?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dschense', 'html_url': 'https://github.com/dschense', 'followers_url': 'https://api.github.com/users/dschense/followers', 'following_url': 'https://api.github.com/users/dschense/following{/other_user}', 'gists_url': 'https://api.github.com/users/dschense/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dschense/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dschense/subscriptions', 'organizations_url': 'https://api.github.com/users/dschense/orgs', 'repos_url': 'https://api.github.com/users/dschense/repos', 'events_url': 'https://api.github.com/users/dschense/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dschense/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179040989, 'node_id': 'MDU6TGFiZWwxNzkwNDA5ODk=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Bug', 'name': 'Kind:Bug', 'color': 'e11d21', 'default': False, 'description': None}]",closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/42', 'html_url': 'https://github.com/processone/ejabberd/milestone/42', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/42/labels', 'id': 5706346, 'node_id': 'MDk6TWlsZXN0b25lNTcwNjM0Ng==', 'number': 42, 'title': 'ejabberd 20.07', 'description': 'https://www.process-one.net/blog/ejabberd-20-07/', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 20, 'state': 'closed', 'created_at': '2020-07-28T07:56:43Z', 'updated_at': '2020-07-31T14:08:13Z', 'due_on': '2020-07-30T07:00:00Z', 'closed_at': '2020-07-31T14:05:45Z'}",0,2020-05-19T13:30:32Z,2020-07-31T14:04:09Z,2020-05-19T17:54:08Z,NONE,,,"## Environment
- ejabberd version: 20.04
- OS: Linux (Debian)
- Installed from: source
## Configuration (only if needed):
```
...
""/register"": mod_register_web
...
```
## Errors from error.log/crash.log
No errors
## Bug description
When changing /register to for example /account to access the mod_register_web site over the browser, the website is reachable, but the register.css ist not loaded.
After the change to
```
...
""/account"": mod_register_web
...
```
the source of the website still shows:
```
...
, :ok})
** (EXIT) no process: the process is not alive or there's no process currently associated with the given name, possibly because its application isn't started
13:49:35.516 [info] Application eex exited: :stopped
==> phoenix_live_dashboard
could not compile dependency :phoenix_live_dashboard, ""mix compile"" failed. You can recompile this dependency with ""mix deps.compile phoenix_live_dashboard"", update it with ""mix deps.update phoenix_live_dashboard"" or clean it with ""mix deps.clean phoenix_live_dashboard""
** (MatchError) no match of right hand side value: {:error, {:phoenix, {:bad_return, {{Phoenix, :start, [:normal, []]}, {:EXIT, {:noproc, {:gen_server, :call, [:telemetry_handler_table, {:insert, {Phoenix.Logger, [:phoenix, :channel_handled_in]}, [[:phoenix, :channel_handled_in]], #Function<8.52195587/4 in Phoenix.Logger.install/0>, :ok}]}}}}}}}
(phoenix 1.5.1) lib/mix/tasks/compile.phoenix.ex:11: Mix.Tasks.Compile.Phoenix.run/1
(mix 1.10.3) lib/mix/task.ex:330: Mix.Task.run_task/3
(mix 1.10.3) lib/mix/tasks/compile.all.ex:76: Mix.Tasks.Compile.All.run_compiler/2
(mix 1.10.3) lib/mix/tasks/compile.all.ex:56: Mix.Tasks.Compile.All.do_compile/4
(mix 1.10.3) lib/mix/tasks/compile.all.ex:27: anonymous fn/2 in Mix.Tasks.Compile.All.run/1
(mix 1.10.3) lib/mix/tasks/compile.all.ex:43: Mix.Tasks.Compile.All.with_logger_app/2
(mix 1.10.3) lib/mix/task.ex:330: Mix.Task.run_task/3
(mix 1.10.3) lib/mix/tasks/compile.ex:96: Mix.Tasks.Compile.run/1
(mix 1.10.3) lib/mix/task.ex:330: Mix.Task.run_task/3
(mix 1.10.3) lib/mix/tasks/deps.compile.ex:163: anonymous fn/2 in Mix.Tasks.Deps.Compile.do_mix/2
(mix 1.10.3) lib/mix/project.ex:352: Mix.Project.in_project/4
(elixir 1.10.3) lib/file.ex:1544: File.cd!/2
(mix 1.10.3) lib/mix/dep.ex:269: Mix.Dep.in_dependency/3
(mix 1.10.3) lib/mix/tasks/deps.compile.ex:81: anonymous fn/4 in Mix.Tasks.Deps.Compile.compile/2
(elixir 1.10.3) lib/enum.ex:1396: Enum.""-map/2-lists^map/1-0-""/2
(mix 1.10.3) lib/mix/tasks/deps.compile.ex:71: Mix.Tasks.Deps.Compile.compile/2
(mix 1.10.3) lib/mix/tasks/deps.loadpaths.ex:89: Mix.Tasks.Deps.Loadpaths.deps_check/2
(mix 1.10.3) lib/mix/tasks/deps.loadpaths.ex:28: Mix.Tasks.Deps.Loadpaths.run/1
(mix 1.10.3) lib/mix/task.ex:330: Mix.Task.run_task/3
(mix 1.10.3) lib/mix/task.ex:354: Mix.Task.get_task_or_run/3
```
## Bug description
Hi, I'm using ejabberd and I've set up everything it's running fine when I have installed and setup phoenix project locally. But when I upload this on github and suppose someone clone the repository on local machine then it would lead to this error. This is strange because if he also setup the phoenix project locally and setup the ejabberd it's working fine for him. So I'm trying to guess that it has something to do with build file. So I want to understand about this error. Is this an error related to ejabberd or something?
",
435,https://api.github.com/repos/processone/ejabberd/issues/3278,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3278/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3278/comments,https://api.github.com/repos/processone/ejabberd/issues/3278/events,https://github.com/processone/ejabberd/issues/3278,619389326,MDU6SXNzdWU2MTkzODkzMjY=,3278,STUN/TURN support for dynamic public IP address,"{'login': 'scubajeff', 'id': 458032, 'node_id': 'MDQ6VXNlcjQ1ODAzMg==', 'avatar_url': 'https://avatars1.githubusercontent.com/u/458032?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/scubajeff', 'html_url': 'https://github.com/scubajeff', 'followers_url': 'https://api.github.com/users/scubajeff/followers', 'following_url': 'https://api.github.com/users/scubajeff/following{/other_user}', 'gists_url': 'https://api.github.com/users/scubajeff/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/scubajeff/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/scubajeff/subscriptions', 'organizations_url': 'https://api.github.com/users/scubajeff/orgs', 'repos_url': 'https://api.github.com/users/scubajeff/repos', 'events_url': 'https://api.github.com/users/scubajeff/events{/privacy}', 'received_events_url': 'https://api.github.com/users/scubajeff/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",closed,False,"{'login': 'weiss', 'id': 71850, 'node_id': 'MDQ6VXNlcjcxODUw', 'avatar_url': 'https://avatars1.githubusercontent.com/u/71850?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/weiss', 'html_url': 'https://github.com/weiss', 'followers_url': 'https://api.github.com/users/weiss/followers', 'following_url': 'https://api.github.com/users/weiss/following{/other_user}', 'gists_url': 'https://api.github.com/users/weiss/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/weiss/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/weiss/subscriptions', 'organizations_url': 'https://api.github.com/users/weiss/orgs', 'repos_url': 'https://api.github.com/users/weiss/repos', 'events_url': 'https://api.github.com/users/weiss/events{/privacy}', 'received_events_url': 'https://api.github.com/users/weiss/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'weiss', 'id': 71850, 'node_id': 'MDQ6VXNlcjcxODUw', 'avatar_url': 'https://avatars1.githubusercontent.com/u/71850?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/weiss', 'html_url': 'https://github.com/weiss', 'followers_url': 'https://api.github.com/users/weiss/followers', 'following_url': 'https://api.github.com/users/weiss/following{/other_user}', 'gists_url': 'https://api.github.com/users/weiss/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/weiss/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/weiss/subscriptions', 'organizations_url': 'https://api.github.com/users/weiss/orgs', 'repos_url': 'https://api.github.com/users/weiss/repos', 'events_url': 'https://api.github.com/users/weiss/events{/privacy}', 'received_events_url': 'https://api.github.com/users/weiss/received_events', 'type': 'User', 'site_admin': False}]",,19,2020-05-16T06:03:52Z,2020-08-18T20:11:20Z,2020-08-18T10:02:31Z,NONE,,,"**Is your feature request related to a problem? Please describe.**
As the latest version 20.04 implement XEP-0215: External Service Discovery, we can now support Audio/Video call using XMPP client like Conversation on Android. But the ```turn_ip``` setting in listen module ```ejabberd_stun``` needed to be hardcode as the server's public IP address, the problem is most self host situations won't have static IP address.
**Describe the solution you'd like**
Module ```stun_disco``` query DNS resolver for server's public IP address as the relay IP every time when it initiates STUN/TURN connection
**Describe alternatives you've considered**
**Additional context**
",
436,https://api.github.com/repos/processone/ejabberd/issues/3277,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3277/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3277/comments,https://api.github.com/repos/processone/ejabberd/issues/3277/events,https://github.com/processone/ejabberd/issues/3277,619388108,MDU6SXNzdWU2MTkzODgxMDg=,3277,ejabberd_stun and sip not working latest version,"{'login': 'spkan', 'id': 65438146, 'node_id': 'MDQ6VXNlcjY1NDM4MTQ2', 'avatar_url': 'https://avatars2.githubusercontent.com/u/65438146?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/spkan', 'html_url': 'https://github.com/spkan', 'followers_url': 'https://api.github.com/users/spkan/followers', 'following_url': 'https://api.github.com/users/spkan/following{/other_user}', 'gists_url': 'https://api.github.com/users/spkan/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/spkan/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/spkan/subscriptions', 'organizations_url': 'https://api.github.com/users/spkan/orgs', 'repos_url': 'https://api.github.com/users/spkan/repos', 'events_url': 'https://api.github.com/users/spkan/events{/privacy}', 'received_events_url': 'https://api.github.com/users/spkan/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179053760, 'node_id': 'MDU6TGFiZWwxNzkwNTM3NjA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Note:Needs%20more%20info', 'name': 'Note:Needs more info', 'color': 'c7def8', 'default': False, 'description': None}]",closed,False,,[],,1,2020-05-16T05:55:40Z,2020-07-31T14:11:14Z,2020-07-31T14:11:14Z,NONE,,,"## Environment
- ejabberd version: 20.03
- Erlang version: `erl +V`
- OS: Linux (Ubuntu 16.04)
- Installed from: source | distro package | official deb/rpm | official binary installer | other
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
loglevel: 4
...
```
",
437,https://api.github.com/repos/processone/ejabberd/issues/3276,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3276/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3276/comments,https://api.github.com/repos/processone/ejabberd/issues/3276/events,https://github.com/processone/ejabberd/issues/3276,619048655,MDU6SXNzdWU2MTkwNDg2NTU=,3276,ejabberd_stun accepts just a single certfile,"{'login': 'f055', 'id': 53429, 'node_id': 'MDQ6VXNlcjUzNDI5', 'avatar_url': 'https://avatars3.githubusercontent.com/u/53429?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/f055', 'html_url': 'https://github.com/f055', 'followers_url': 'https://api.github.com/users/f055/followers', 'following_url': 'https://api.github.com/users/f055/following{/other_user}', 'gists_url': 'https://api.github.com/users/f055/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/f055/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/f055/subscriptions', 'organizations_url': 'https://api.github.com/users/f055/orgs', 'repos_url': 'https://api.github.com/users/f055/repos', 'events_url': 'https://api.github.com/users/f055/events{/privacy}', 'received_events_url': 'https://api.github.com/users/f055/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-05-15T15:10:51Z,2020-05-15T15:13:31Z,2020-05-15T15:13:31Z,MEMBER,,,"## Environment
- ejabberd version: 20.04
- OS: Linux (Debian Buster)
- Installed from: official deb/rpm
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
listen:
-
port: 5349
tls: true
module: ejabberd_stun
certfile: /etc/ejabberd/server.pem
```
## Bug description
When `ejabberd_stun` is in TLS mode it requires a certificate. However, it seems the configuration at the moment only expect a single `certfile`, which means Let's Encrypt certificates are harder to use, as they generate two files, `fullchain.pem` and `privkey.pem`. The main `certfiles` setting allows a list of certificates. It would be nice to duplicate this approach in `ejabberd_stun`.
",
438,https://api.github.com/repos/processone/ejabberd/issues/3275,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3275/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3275/comments,https://api.github.com/repos/processone/ejabberd/issues/3275/events,https://github.com/processone/ejabberd/issues/3275,618853792,MDU6SXNzdWU2MTg4NTM3OTI=,3275,Update default config file,"{'login': 'f055', 'id': 53429, 'node_id': 'MDQ6VXNlcjUzNDI5', 'avatar_url': 'https://avatars3.githubusercontent.com/u/53429?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/f055', 'html_url': 'https://github.com/f055', 'followers_url': 'https://api.github.com/users/f055/followers', 'following_url': 'https://api.github.com/users/f055/following{/other_user}', 'gists_url': 'https://api.github.com/users/f055/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/f055/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/f055/subscriptions', 'organizations_url': 'https://api.github.com/users/f055/orgs', 'repos_url': 'https://api.github.com/users/f055/repos', 'events_url': 'https://api.github.com/users/f055/events{/privacy}', 'received_events_url': 'https://api.github.com/users/f055/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,4,2020-05-15T10:07:48Z,2020-05-15T10:58:19Z,,MEMBER,,,"## Environment
- ejabberd version: 20.03-20.04
- OS: Linux (Debian Buster)
- Installed from: official deb
## Bug description
ejabberd log informs that we should:
1. remove `log_rotate_date` and `log_rate_limit`
2. update `acme` `ca_url` to `https://acme-v02.api.letsencrypt.org` (v01 -> v02)
",
439,https://api.github.com/repos/processone/ejabberd/issues/3274,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3274/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3274/comments,https://api.github.com/repos/processone/ejabberd/issues/3274/events,https://github.com/processone/ejabberd/issues/3274,618490369,MDU6SXNzdWU2MTg0OTAzNjk=,3274,master - missing macro definition NS_EXTDISCO_2,"{'login': 'yandrey', 'id': 76512, 'node_id': 'MDQ6VXNlcjc2NTEy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/76512?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/yandrey', 'html_url': 'https://github.com/yandrey', 'followers_url': 'https://api.github.com/users/yandrey/followers', 'following_url': 'https://api.github.com/users/yandrey/following{/other_user}', 'gists_url': 'https://api.github.com/users/yandrey/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/yandrey/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/yandrey/subscriptions', 'organizations_url': 'https://api.github.com/users/yandrey/orgs', 'repos_url': 'https://api.github.com/users/yandrey/repos', 'events_url': 'https://api.github.com/users/yandrey/events{/privacy}', 'received_events_url': 'https://api.github.com/users/yandrey/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-05-14T19:43:52Z,2020-05-15T09:40:13Z,2020-05-15T09:40:12Z,NONE,,,"## Environment
- ejabberd version: master
- Erlang version: Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.2.3
- OS: Linux (Debian)
- Installed from: source
## Bug description
```
==> ejabberd (compile)
src/mod_stun_disco.erl:411: undefined macro 'NS_EXTDISCO_2'
src/mod_stun_disco.erl:451: undefined macro 'NS_EXTDISCO_2'
src/mod_stun_disco.erl:455: undefined macro 'NS_EXTDISCO_2'
```
if to search with github search through the master sources seems there is no NS_EXTDISCO_2 definition indeed. forgotten push?
",
440,https://api.github.com/repos/processone/ejabberd/issues/3273,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3273/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3273/comments,https://api.github.com/repos/processone/ejabberd/issues/3273/events,https://github.com/processone/ejabberd/issues/3273,618485098,MDU6SXNzdWU2MTg0ODUwOTg=,3273,master version: unknown ejabberd module mod_pubsub,"{'login': 'yandrey', 'id': 76512, 'node_id': 'MDQ6VXNlcjc2NTEy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/76512?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/yandrey', 'html_url': 'https://github.com/yandrey', 'followers_url': 'https://api.github.com/users/yandrey/followers', 'following_url': 'https://api.github.com/users/yandrey/following{/other_user}', 'gists_url': 'https://api.github.com/users/yandrey/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/yandrey/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/yandrey/subscriptions', 'organizations_url': 'https://api.github.com/users/yandrey/orgs', 'repos_url': 'https://api.github.com/users/yandrey/repos', 'events_url': 'https://api.github.com/users/yandrey/events{/privacy}', 'received_events_url': 'https://api.github.com/users/yandrey/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-05-14T19:34:32Z,2020-05-14T19:36:29Z,2020-05-14T19:36:29Z,NONE,,,"## Environment
- ejabberd version: master
- Erlang version: Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.2.3
- OS: Linux (Debian)
- Installed from: source
## Bug description
I have working ejabberd from commit 64c09c20
But after pull it failed to start with message:
```
22:24:55.485 [critical] Failed to start ejabberd application: Invalid value of option modules: unknown ejabberd module: mod_pubsub. Did you mean mod_pubsub?
```
when i checked out old commit it works again.
so master is broken. and nothing special in mod_pubsub config, default configuration from the project -- master/ejabberd.yml.example
",
441,https://api.github.com/repos/processone/ejabberd/issues/3272,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3272/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3272/comments,https://api.github.com/repos/processone/ejabberd/issues/3272/events,https://github.com/processone/ejabberd/issues/3272,618262441,MDU6SXNzdWU2MTgyNjI0NDE=,3272,Display installed ejabberd version in webadmin footer,"{'login': 'f055', 'id': 53429, 'node_id': 'MDQ6VXNlcjUzNDI5', 'avatar_url': 'https://avatars3.githubusercontent.com/u/53429?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/f055', 'html_url': 'https://github.com/f055', 'followers_url': 'https://api.github.com/users/f055/followers', 'following_url': 'https://api.github.com/users/f055/following{/other_user}', 'gists_url': 'https://api.github.com/users/f055/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/f055/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/f055/subscriptions', 'organizations_url': 'https://api.github.com/users/f055/orgs', 'repos_url': 'https://api.github.com/users/f055/repos', 'events_url': 'https://api.github.com/users/f055/events{/privacy}', 'received_events_url': 'https://api.github.com/users/f055/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/42', 'html_url': 'https://github.com/processone/ejabberd/milestone/42', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/42/labels', 'id': 5706346, 'node_id': 'MDk6TWlsZXN0b25lNTcwNjM0Ng==', 'number': 42, 'title': 'ejabberd 20.07', 'description': 'https://www.process-one.net/blog/ejabberd-20-07/', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 20, 'state': 'closed', 'created_at': '2020-07-28T07:56:43Z', 'updated_at': '2020-07-31T14:08:13Z', 'due_on': '2020-07-30T07:00:00Z', 'closed_at': '2020-07-31T14:05:45Z'}",0,2020-05-14T14:08:59Z,2020-07-31T14:04:09Z,2020-05-15T09:24:50Z,MEMBER,,,"**Is your feature request related to a problem? Please describe.**
There is no way of knowing what version we are running within the webadmin panel.
**Describe the solution you'd like**
I propose we add version number in the footer, like ""ejabberd 20.04 (c) 2002-2020 ProcessOne""
**Describe alternatives you've considered**
Any other better place for this info will do.
",
442,https://api.github.com/repos/processone/ejabberd/issues/3271,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3271/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3271/comments,https://api.github.com/repos/processone/ejabberd/issues/3271/events,https://github.com/processone/ejabberd/pull/3271,618181284,MDExOlB1bGxSZXF1ZXN0NDE3OTU2Mjk3,3271,Make SQL query more generic for MSSQL compatibility,"{'login': 'yuriyz-w', 'id': 65344339, 'node_id': 'MDQ6VXNlcjY1MzQ0MzM5', 'avatar_url': 'https://avatars1.githubusercontent.com/u/65344339?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/yuriyz-w', 'html_url': 'https://github.com/yuriyz-w', 'followers_url': 'https://api.github.com/users/yuriyz-w/followers', 'following_url': 'https://api.github.com/users/yuriyz-w/following{/other_user}', 'gists_url': 'https://api.github.com/users/yuriyz-w/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/yuriyz-w/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/yuriyz-w/subscriptions', 'organizations_url': 'https://api.github.com/users/yuriyz-w/orgs', 'repos_url': 'https://api.github.com/users/yuriyz-w/repos', 'events_url': 'https://api.github.com/users/yuriyz-w/events{/privacy}', 'received_events_url': 'https://api.github.com/users/yuriyz-w/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/42', 'html_url': 'https://github.com/processone/ejabberd/milestone/42', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/42/labels', 'id': 5706346, 'node_id': 'MDk6TWlsZXN0b25lNTcwNjM0Ng==', 'number': 42, 'title': 'ejabberd 20.07', 'description': 'https://www.process-one.net/blog/ejabberd-20-07/', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 20, 'state': 'closed', 'created_at': '2020-07-28T07:56:43Z', 'updated_at': '2020-07-31T14:08:13Z', 'due_on': '2020-07-30T07:00:00Z', 'closed_at': '2020-07-31T14:05:45Z'}",3,2020-05-14T12:15:30Z,2020-07-31T14:04:09Z,2020-05-15T07:19:56Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3271', 'html_url': 'https://github.com/processone/ejabberd/pull/3271', 'diff_url': 'https://github.com/processone/ejabberd/pull/3271.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3271.patch'}","This changes get rid of simple calculate field from node_flat_sql module
and closes issue #3270.
Used SQL syntax is not compatible with MSSQL.
Just do compare a field on ejabberd side (do not use different query for MSSQL.).
",
443,https://api.github.com/repos/processone/ejabberd/issues/3270,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3270/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3270/comments,https://api.github.com/repos/processone/ejabberd/issues/3270/events,https://github.com/processone/ejabberd/issues/3270,618151464,MDU6SXNzdWU2MTgxNTE0NjQ=,3270,[FreeTDS][SQL Server] Incorrect syntax near the keyword 'as',"{'login': 'yuriyz-w', 'id': 65344339, 'node_id': 'MDQ6VXNlcjY1MzQ0MzM5', 'avatar_url': 'https://avatars1.githubusercontent.com/u/65344339?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/yuriyz-w', 'html_url': 'https://github.com/yuriyz-w', 'followers_url': 'https://api.github.com/users/yuriyz-w/followers', 'following_url': 'https://api.github.com/users/yuriyz-w/following{/other_user}', 'gists_url': 'https://api.github.com/users/yuriyz-w/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/yuriyz-w/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/yuriyz-w/subscriptions', 'organizations_url': 'https://api.github.com/users/yuriyz-w/orgs', 'repos_url': 'https://api.github.com/users/yuriyz-w/repos', 'events_url': 'https://api.github.com/users/yuriyz-w/events{/privacy}', 'received_events_url': 'https://api.github.com/users/yuriyz-w/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/42', 'html_url': 'https://github.com/processone/ejabberd/milestone/42', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/42/labels', 'id': 5706346, 'node_id': 'MDk6TWlsZXN0b25lNTcwNjM0Ng==', 'number': 42, 'title': 'ejabberd 20.07', 'description': 'https://www.process-one.net/blog/ejabberd-20-07/', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 20, 'state': 'closed', 'created_at': '2020-07-28T07:56:43Z', 'updated_at': '2020-07-31T14:08:13Z', 'due_on': '2020-07-30T07:00:00Z', 'closed_at': '2020-07-31T14:05:45Z'}",1,2020-05-14T11:27:01Z,2020-07-31T14:04:08Z,2020-05-15T07:20:30Z,CONTRIBUTOR,,,"## Environment
- ejabberd version: 20.03
- Microsoft SQL Server 2016 (SP1) (KB3182545) - 13.0.4001.0 (X64)
## Errors from error.log/crash.log
Apr 30 10:18:31 221100002fa7 ejabberd[12314]: [error] <0.575.0>@ejabberd_sql:check_error:1286 SQL query 'select jid = '101@d-luk09.wildixin.com' as G, affiliation, subscriptions from pubsub_state where nodeid=1
and jid in ('101@d-luk09.wildixin.com', '101@d-luk09.wildixin.com/cticonnect-101-6370-0628-2488')' failed: <<""[FreeTDS][SQL Server]Incorrect syntax near the keyword 'as'."">>
Apr 30 10:18:31 221100002fa7 ejabberd[12314]: [error] <0.575.0>@ejabberd_sql:check_error:1279 SQL query 'Q78217197' at {node_flat_sql,900} failed: <<""[FreeTDS][SQL Server]Incorrect syntax near the keyword 'as'.""
## Bug description
SQL computed field syntax is not compatible with MSSQL
",
444,https://api.github.com/repos/processone/ejabberd/issues/3269,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3269/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3269/comments,https://api.github.com/repos/processone/ejabberd/issues/3269/events,https://github.com/processone/ejabberd/issues/3269,616605623,MDU6SXNzdWU2MTY2MDU2MjM=,3269,captcha is very weak!,"{'login': 'wkg', 'id': 1515379, 'node_id': 'MDQ6VXNlcjE1MTUzNzk=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/1515379?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/wkg', 'html_url': 'https://github.com/wkg', 'followers_url': 'https://api.github.com/users/wkg/followers', 'following_url': 'https://api.github.com/users/wkg/following{/other_user}', 'gists_url': 'https://api.github.com/users/wkg/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/wkg/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/wkg/subscriptions', 'organizations_url': 'https://api.github.com/users/wkg/orgs', 'repos_url': 'https://api.github.com/users/wkg/repos', 'events_url': 'https://api.github.com/users/wkg/events{/privacy}', 'received_events_url': 'https://api.github.com/users/wkg/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",open,False,,[],,6,2020-05-12T12:10:36Z,2020-05-22T16:22:46Z,,NONE,,,"NOW captcha is very weak! i'm am using 20.04 and have many spammers...
please support ""Google ReCaptcha"" or, better yet, so that I can completely create my question and answer for captcha, please!",
445,https://api.github.com/repos/processone/ejabberd/issues/3268,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3268/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3268/comments,https://api.github.com/repos/processone/ejabberd/issues/3268/events,https://github.com/processone/ejabberd/issues/3268,615428085,MDU6SXNzdWU2MTU0MjgwODU=,3268,"TURN: Name external IPv6 IP address / ""dual stack""","{'login': 'ThomasLeister', 'id': 4207956, 'node_id': 'MDQ6VXNlcjQyMDc5NTY=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/4207956?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ThomasLeister', 'html_url': 'https://github.com/ThomasLeister', 'followers_url': 'https://api.github.com/users/ThomasLeister/followers', 'following_url': 'https://api.github.com/users/ThomasLeister/following{/other_user}', 'gists_url': 'https://api.github.com/users/ThomasLeister/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ThomasLeister/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ThomasLeister/subscriptions', 'organizations_url': 'https://api.github.com/users/ThomasLeister/orgs', 'repos_url': 'https://api.github.com/users/ThomasLeister/repos', 'events_url': 'https://api.github.com/users/ThomasLeister/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ThomasLeister/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",closed,False,,[],,1,2020-05-10T16:33:49Z,2020-05-10T16:56:18Z,2020-05-10T16:55:32Z,NONE,,,"Hi,
I've configured my Ejabberd server to provide a TURN service similarly to this:
```
-
port: 3478
transport: udp
use_turn: true
turn_ip: MY.EXTE.RNAL.IP
module: ejabberd_stun
```
I wonder why there is only `turn_ip` as a setting, which seems to be for a single IPv4 address, only. Is there a way to also name an IPv6 address and run TURN dual stack? If this was not developed with IPv6 in mind, I'd be happy to have support for both IP versions :-)
",
446,https://api.github.com/repos/processone/ejabberd/issues/3267,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3267/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3267/comments,https://api.github.com/repos/processone/ejabberd/issues/3267/events,https://github.com/processone/ejabberd/issues/3267,615364993,MDU6SXNzdWU2MTUzNjQ5OTM=,3267,Elixir application not started ,"{'login': 'xi1976github', 'id': 23615871, 'node_id': 'MDQ6VXNlcjIzNjE1ODcx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/23615871?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/xi1976github', 'html_url': 'https://github.com/xi1976github', 'followers_url': 'https://api.github.com/users/xi1976github/followers', 'following_url': 'https://api.github.com/users/xi1976github/following{/other_user}', 'gists_url': 'https://api.github.com/users/xi1976github/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/xi1976github/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/xi1976github/subscriptions', 'organizations_url': 'https://api.github.com/users/xi1976github/orgs', 'repos_url': 'https://api.github.com/users/xi1976github/repos', 'events_url': 'https://api.github.com/users/xi1976github/events{/privacy}', 'received_events_url': 'https://api.github.com/users/xi1976github/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179053760, 'node_id': 'MDU6TGFiZWwxNzkwNTM3NjA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Note:Needs%20more%20info', 'name': 'Note:Needs more info', 'color': 'c7def8', 'default': False, 'description': None}]",closed,False,,[],,1,2020-05-10T10:48:17Z,2020-07-31T14:10:39Z,2020-07-31T14:10:39Z,NONE,,,"## Environment
- ejabberd version:
20.04
- Erlang version: `erl +V`
Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.6.4
- OS: Linux
arch
- Installed from: source | distro package | official deb/rpm | official binary installer | other
package
## Errors from error.log/crash.log
2020-05-10 12:43:00.084971+02:00 [error] <0.115.0>@ejabberd_app:start_elixir_application/0:192 Elixir application not started.
ejabberd seems to run fine on first check, I thought this was solved in #1250",
447,https://api.github.com/repos/processone/ejabberd/issues/3266,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3266/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3266/comments,https://api.github.com/repos/processone/ejabberd/issues/3266/events,https://github.com/processone/ejabberd/issues/3266,615319202,MDU6SXNzdWU2MTUzMTkyMDI=,3266,Setting vcard photo via API does not seem to work,"{'login': 'ganySA', 'id': 3189206, 'node_id': 'MDQ6VXNlcjMxODkyMDY=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/3189206?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ganySA', 'html_url': 'https://github.com/ganySA', 'followers_url': 'https://api.github.com/users/ganySA/followers', 'following_url': 'https://api.github.com/users/ganySA/following{/other_user}', 'gists_url': 'https://api.github.com/users/ganySA/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ganySA/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ganySA/subscriptions', 'organizations_url': 'https://api.github.com/users/ganySA/orgs', 'repos_url': 'https://api.github.com/users/ganySA/repos', 'events_url': 'https://api.github.com/users/ganySA/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ganySA/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,6,2020-05-10T05:15:34Z,2020-06-24T11:51:31Z,2020-06-24T11:51:31Z,NONE,,,"Attempting to set the PHOTO value of a vcard does not seem to work in the API. The value is saved but does not display on clients?
```yaml
{
localhost:5443/api/set_vcard
""user"": ""test"",
""host"": ""server1"",
""name"": ""PHOTO"",
""content"":
}
```
Am i process the command incorrectly or is this a bug?
",
448,https://api.github.com/repos/processone/ejabberd/issues/3265,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3265/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3265/comments,https://api.github.com/repos/processone/ejabberd/issues/3265/events,https://github.com/processone/ejabberd/issues/3265,615114445,MDU6SXNzdWU2MTUxMTQ0NDU=,3265,TURN TLS not working,"{'login': 'licaon-kter', 'id': 2282799, 'node_id': 'MDQ6VXNlcjIyODI3OTk=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2282799?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/licaon-kter', 'html_url': 'https://github.com/licaon-kter', 'followers_url': 'https://api.github.com/users/licaon-kter/followers', 'following_url': 'https://api.github.com/users/licaon-kter/following{/other_user}', 'gists_url': 'https://api.github.com/users/licaon-kter/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/licaon-kter/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/licaon-kter/subscriptions', 'organizations_url': 'https://api.github.com/users/licaon-kter/orgs', 'repos_url': 'https://api.github.com/users/licaon-kter/repos', 'events_url': 'https://api.github.com/users/licaon-kter/events{/privacy}', 'received_events_url': 'https://api.github.com/users/licaon-kter/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,9,2020-05-09T07:27:27Z,2020-05-11T10:23:56Z,,CONTRIBUTOR,,,"## Environment
- ejabberd version: 20.04.9
- Erlang version: `Erlang (SMP,ASYNC_THREADS) (BEAM) emulator version 10.2.4`
- OS: Debian Buster arm64
- Installed from: source
Listeners _(& [certs](https://github.com/processone/ejabberd/issues/3264) as expected)_:
```
-
port: 3478
transport: udp
use_turn: true
turn_min_port: 60000
turn_max_port: 65000
turn_ip: MY.EXTE.RNAL.IP
module: ejabberd_stun
-
port: 3478
use_turn: true
turn_min_port: 60000
turn_max_port: 65000
turn_ip: MY.EXTE.RNAL.IP
module: ejabberd_stun
-
port: 5349
use_turn: true
turn_min_port: 60000
turn_max_port: 65000
turn_ip: MY.EXTE.RNAL.IP
tls: true
module: ejabberd_stun
```
Modules:
```
mod_stun_disco:
services:
-
host: MY.EXTE.RNAL.IP
port: 3478
type: stun
-
host: MY.EXTE.RNAL.IP
port: 3478
type: turn
-
host: MY.EXTE.RNAL.IP
port: 3478
type: stun
transport: tcp
-
host: MY.EXTE.RNAL.IP
port: 3478
type: turn
transport: tcp
-
host: mydomain.tld
port: 443
type: stuns
-
host: mydomain.tld
port: 443
type: turns
```
SSLH will route all 443 traffic to port 5349 eventually (https://github.com/yrutschle/sslh/issues/246#issuecomment-626010419)
Between Conversations contacts, the call is not connected after pickup.
```
10:10:14.211 [info] <0.394.0>@mod_stun_disco:handle_call:332 Offering STUN/TURN services to user2@mydomain.tld/myConversations3.FfGe (14c8f5dbc592ffcd)
10:10:14.359 [info] <0.1634.1>@ejabberd_listener:accept:256 (<0.1636.1>) Accepted connection hidden_by_ejabberd -> LANIP:5349
10:10:14.361 [info] <0.1634.1>@ejabberd_listener:accept:256 (<0.1637.1>) Accepted connection hidden_by_ejabberd -> LANIP:5349
10:10:14.443 [info] <0.394.0>@mod_stun_disco:handle_call:332 Offering STUN/TURN services to user1@mydomain.tld/myConversations3.NjCv (f907ff75c592ffcd)
10:10:14.484 [info] <0.1637.1> accepted long-term STUN authentication for 1589008094:14c8f5dbc592ffcd@mydomain.tld from LANIP:47372
10:10:14.495 [info] <0.1636.1> accepted long-term STUN authentication for 1589008094:14c8f5dbc592ffcd@mydomain.tld from LANIP:47370
10:10:16.000 [info] <0.1634.1>@ejabberd_listener:accept:256 (<0.1640.1>) Accepted connection hidden_by_ejabberd -> LANIP:5349
10:10:16.066 [info] <0.1636.1> accepted long-term STUN authentication for 1589008094:14c8f5dbc592ffcd@mydomain.tld from LANIP:47370
10:10:16.103 [info] <0.1637.1> accepted long-term STUN authentication for 1589008094:14c8f5dbc592ffcd@mydomain.tld from LANIP:47372
10:10:16.230 [info] <0.1640.1> accepted long-term STUN authentication for 1589008094:f907ff75c592ffcd@mydomain.tld from LANIP:47374
10:10:16.275 [info] <0.1640.1> accepted long-term STUN authentication for 1589008094:f907ff75c592ffcd@mydomain.tld from LANIP:47374
10:10:16.275 [info] <0.1640.1> accepted long-term STUN authentication for 1589008094:f907ff75c592ffcd@mydomain.tld from LANIP:47374
10:10:16.301 [info] <0.1637.1> accepted long-term STUN authentication for 1589008094:14c8f5dbc592ffcd@mydomain.tld from LANIP:47372
Conversations gives up...
10:10:31.510 [info] <0.1640.1> accepted long-term STUN authentication for 1589008094:f907ff75c592ffcd@mydomain.tld from LANIP:47374
10:10:31.567 [info] <0.1637.1> accepted long-term STUN authentication for 1589008094:14c8f5dbc592ffcd@mydomain.tld from LANIP:47372
```
But, if I comment the listeners, add a `secret`, reload_config, start [coturn](https://github.com/coturn) on the same ports 3478/5349, it will work just fine.
```
10:33:47.727 [info] <0.394.0>@mod_stun_disco:handle_call:332 Offering STUN/TURN services to user2@mydomain.tld/myConversations3.FfGe (14c8f5dbc592ffcd)
10:33:48.045 [info] <0.394.0>@mod_stun_disco:handle_call:332 Offering STUN/TURN services to user1@mydomain.tld/myConversations3.NjCv (f907ff75c592ffcd)
```
What am I missing?",
449,https://api.github.com/repos/processone/ejabberd/issues/3264,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3264/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3264/comments,https://api.github.com/repos/processone/ejabberd/issues/3264/events,https://github.com/processone/ejabberd/issues/3264,614951275,MDU6SXNzdWU2MTQ5NTEyNzU=,3264,Listeners should use global `certfiles`,"{'login': 'licaon-kter', 'id': 2282799, 'node_id': 'MDQ6VXNlcjIyODI3OTk=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2282799?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/licaon-kter', 'html_url': 'https://github.com/licaon-kter', 'followers_url': 'https://api.github.com/users/licaon-kter/followers', 'following_url': 'https://api.github.com/users/licaon-kter/following{/other_user}', 'gists_url': 'https://api.github.com/users/licaon-kter/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/licaon-kter/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/licaon-kter/subscriptions', 'organizations_url': 'https://api.github.com/users/licaon-kter/orgs', 'repos_url': 'https://api.github.com/users/licaon-kter/repos', 'events_url': 'https://api.github.com/users/licaon-kter/events{/privacy}', 'received_events_url': 'https://api.github.com/users/licaon-kter/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,2,2020-05-08T19:52:20Z,2020-05-09T12:32:32Z,,CONTRIBUTOR,,,"I've setup [certfiles](https://docs.ejabberd.im/admin/configuration/toplevel/#certfiles)
```
certfiles:
- /usr/local/etc/ejabberd/certs/mydomain.tld.crt.pem
- /usr/local/etc/ejabberd/certs/mydomain.tld.key.pem
```
...and XMPP works, multiple hosts and all that.
But now we have the A/V craze so I _have_ to have a TURN server too.
And that works fine, 3478 at least, aka non-TLS.
So I need to setup turn**s** then.
```
-
port: 5349
use_turn: true
turn_min_port: 60000
turn_max_port: 65000
turn_ip: MY.EXTE.RNAL.IP
tls: true
certfile: /usr/local/etc/ejabberd/certs/mydomain.tld.crt.pem
module: ejabberd_stun
```
...but no?
`[error] <0.24037.0> CRASH REPORT Process <0.24037.0> with 0 neighbours exited with reason: <<""SSL_CTX_use_certificate_file failed: error:0909006C:PEM routines:get_name:no start line"">> in p1_fsm:init_it/6 line 386`
Oh, right, let me put the key too, another [certfile](https://docs.ejabberd.im/admin/configuration/listen-options/#certfile) line, yes, what? `[error] <0.24045.0>@ejabberd_config:reload:116 Configuration reload aborted: Invalid value of option listen->11: Duplicated option: certfile`
But then? How? I can't just concatenate the files, that would be silly...surely... **hey it works... at least it starts.**
Now the question in the subject, why do I need to specify a certfile here?
I'd guess that you don't know for what domain this TURN server is setup _(reverse DNS via stun.turn SRV records, maybe?)_, then again the log makes it clear that some smart choices are already done in place:
`[info] <0.24025.0>@ejabberd_stun:prepare_turn_opts:127 You have several virtual hosts configured, but option 'auth_realm' is undefined and 'auth_type' is set to 'user', so the TURN relay might not be working properly. Using mydomain.tld as a fallback`
so no need to specify a certain cert here, you can use `auth_realm` and extract the proper cert from the global one, right?
/LE: Testing a bit more and indeed, as @weiss points out global ones are used IF one does not specify another here.",
450,https://api.github.com/repos/processone/ejabberd/issues/3263,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3263/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3263/comments,https://api.github.com/repos/processone/ejabberd/issues/3263/events,https://github.com/processone/ejabberd/issues/3263,614835012,MDU6SXNzdWU2MTQ4MzUwMTI=,3263,Forbidden c2s session for XMPP Client,"{'login': 'siddhant3030', 'id': 9019958, 'node_id': 'MDQ6VXNlcjkwMTk5NTg=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/9019958?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/siddhant3030', 'html_url': 'https://github.com/siddhant3030', 'followers_url': 'https://api.github.com/users/siddhant3030/followers', 'following_url': 'https://api.github.com/users/siddhant3030/following{/other_user}', 'gists_url': 'https://api.github.com/users/siddhant3030/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/siddhant3030/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/siddhant3030/subscriptions', 'organizations_url': 'https://api.github.com/users/siddhant3030/orgs', 'repos_url': 'https://api.github.com/users/siddhant3030/repos', 'events_url': 'https://api.github.com/users/siddhant3030/events{/privacy}', 'received_events_url': 'https://api.github.com/users/siddhant3030/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,4,2020-05-08T16:06:09Z,2020-05-12T05:20:08Z,2020-05-12T05:20:08Z,NONE,,,"## Environment
- ejabberd version: 20.04
- Erlang version: Erlang/OTP 22 [erts-10.7.1] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:1] [hipe] [dtrace]
- OS: MacOs (Catalina)
## Errors from error.log/crash.log
```
[info] (#PID<0.1123.0>) Accepted connection 127.0.0.1:61129 -> 127.0.0.1:5222
[info] (tcp|<0.1123.0>) Accepted c2s DIGEST-MD5 authentication for mickael@localhost by mnesia backend from 127.0.0.1
[warn] (tcp|<0.1123.0>) Forbidden c2s session for mickael@localhost/Apples-MacBook-Air
```
## Bug description
I have registered a user using
`:ejabberd_auth.try_register(""mickael"", ""localhost"", ""mypass"")`
But when I try to connect this user from PSI XMPP client it's giving me this error. I looked into issues where I found someone using Gajim and has the same error. But in that case, it was written
that it would get resolve in 18.09 version and I'm using the latest.
I thought it's happening with PSI XMPP client only. But I got the same error when I used Adium. I don't know what this is about?
Please let me know how can I resolve this?
",
451,https://api.github.com/repos/processone/ejabberd/issues/3262,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3262/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3262/comments,https://api.github.com/repos/processone/ejabberd/issues/3262/events,https://github.com/processone/ejabberd/issues/3262,614039841,MDU6SXNzdWU2MTQwMzk4NDE=,3262,get_option:163 Option 'sql_type' is not defined for virtual host,"{'login': 'sinuzcode', 'id': 41291405, 'node_id': 'MDQ6VXNlcjQxMjkxNDA1', 'avatar_url': 'https://avatars0.githubusercontent.com/u/41291405?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/sinuzcode', 'html_url': 'https://github.com/sinuzcode', 'followers_url': 'https://api.github.com/users/sinuzcode/followers', 'following_url': 'https://api.github.com/users/sinuzcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/sinuzcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/sinuzcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/sinuzcode/subscriptions', 'organizations_url': 'https://api.github.com/users/sinuzcode/orgs', 'repos_url': 'https://api.github.com/users/sinuzcode/repos', 'events_url': 'https://api.github.com/users/sinuzcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/sinuzcode/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,2,2020-05-07T13:01:27Z,2020-05-07T14:24:43Z,,NONE,,,"## Environment
- ejabberd version: 20.03
- Erlang version: Erlang (SMP,ASYNC_THREADS) (BEAM) emulator version 9.2
- OS: Linux (Ubuntu)
- Installed from: official deb/rpm | official binary installer
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
loglevel: 5
...
```
## Errors from error.log/crash.log
No errors
## Bug description
```
[debug] <0.5014.0>@ejabberd_config:get_option:163 Option 'sql_type'
is not defined for virtual host 'conference.tst.testserver.com'.
This is a bug, please report it with the following stacktrace included:
** exception error: bad argument
in function ets:lookup_element/3
called as ets:lookup_element(ejabberd_options,
{sql_type,<<""conference.tst.testserver.com"">>},
2)
in call from ejabberd_config:get_option/1 (src/ejabberd_config.erl, line 159)
in call from mod_mam_sql:store/8 (src/mod_mam_sql.erl, line 108)
in call from mod_mam:store_mam_message/7 (src/mod_mam.erl, line 939)
in call from ejabberd_hooks:safe_apply/4 (src/ejabberd_hooks.erl, line 236)
in call from ejabberd_hooks:run_fold1/4 (src/ejabberd_hooks.erl, line 217)
in call from mod_mam:store_muc/5 (src/mod_mam.erl, line 924)
in call from mod_mam:muc_filter_message/3 (src/mod_mam.erl, line 437)
```",
452,https://api.github.com/repos/processone/ejabberd/issues/3261,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3261/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3261/comments,https://api.github.com/repos/processone/ejabberd/issues/3261/events,https://github.com/processone/ejabberd/issues/3261,613937691,MDU6SXNzdWU2MTM5Mzc2OTE=,3261,Missing a jlib.hrl erlang file,"{'login': 'siddhant3030', 'id': 9019958, 'node_id': 'MDQ6VXNlcjkwMTk5NTg=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/9019958?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/siddhant3030', 'html_url': 'https://github.com/siddhant3030', 'followers_url': 'https://api.github.com/users/siddhant3030/followers', 'following_url': 'https://api.github.com/users/siddhant3030/following{/other_user}', 'gists_url': 'https://api.github.com/users/siddhant3030/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/siddhant3030/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/siddhant3030/subscriptions', 'organizations_url': 'https://api.github.com/users/siddhant3030/orgs', 'repos_url': 'https://api.github.com/users/siddhant3030/repos', 'events_url': 'https://api.github.com/users/siddhant3030/events{/privacy}', 'received_events_url': 'https://api.github.com/users/siddhant3030/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,6,2020-05-07T10:13:50Z,2020-05-07T15:52:42Z,2020-05-07T15:52:42Z,NONE,,,"## Environment
- ejabberd version: 20.04
- Erlang version: `Erlang/OTP 22 [erts-10.7.1] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:1] [hipe] [dtrace]`
- OS: MacOs (Catalina)
## Bug description
I'm using an ejabberd version 20.04, I'm following this tutorial to work my way to understand ejabberd. But when I compile my file and ejabberd deps it doesn't have a jlib.hrl and this file are being used in ejabberd controller.
defmodule TestWeb.EjabberdController do
use TestWeb, :controller
```
# This is used to import the jid record structure from ejabberd:
require Record
Record.defrecord :jid, Record.extract(:jid, from: ""deps/ejabberd/include/jlib.hrl"")
plug :action
def index(conn, _params) do
# get online jid, parse and extract the user part.
online_users = :ejabberd_sm.connected_users
|> Enum.map &(jid(:jlib.string_to_jid(&1), :user))
render conn, ""index.html"", users: online_users
end
end
```
If this is being used here and it's not able to find this file ""deps/ejabberd/include/jlib.hrl""
What should I do in this case?",
453,https://api.github.com/repos/processone/ejabberd/issues/3260,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3260/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3260/comments,https://api.github.com/repos/processone/ejabberd/issues/3260/events,https://github.com/processone/ejabberd/issues/3260,613767343,MDU6SXNzdWU2MTM3NjczNDM=,3260,Functionality to send pings from server to client irrespective of client sends packets or not. ,"{'login': 'shaggi7', 'id': 54536845, 'node_id': 'MDQ6VXNlcjU0NTM2ODQ1', 'avatar_url': 'https://avatars1.githubusercontent.com/u/54536845?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/shaggi7', 'html_url': 'https://github.com/shaggi7', 'followers_url': 'https://api.github.com/users/shaggi7/followers', 'following_url': 'https://api.github.com/users/shaggi7/following{/other_user}', 'gists_url': 'https://api.github.com/users/shaggi7/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/shaggi7/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/shaggi7/subscriptions', 'organizations_url': 'https://api.github.com/users/shaggi7/orgs', 'repos_url': 'https://api.github.com/users/shaggi7/repos', 'events_url': 'https://api.github.com/users/shaggi7/events{/privacy}', 'received_events_url': 'https://api.github.com/users/shaggi7/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/42', 'html_url': 'https://github.com/processone/ejabberd/milestone/42', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/42/labels', 'id': 5706346, 'node_id': 'MDk6TWlsZXN0b25lNTcwNjM0Ng==', 'number': 42, 'title': 'ejabberd 20.07', 'description': 'https://www.process-one.net/blog/ejabberd-20-07/', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 20, 'state': 'closed', 'created_at': '2020-07-28T07:56:43Z', 'updated_at': '2020-07-31T14:08:13Z', 'due_on': '2020-07-30T07:00:00Z', 'closed_at': '2020-07-31T14:05:45Z'}",4,2020-05-07T04:40:10Z,2020-07-31T14:04:08Z,2020-05-15T18:31:14Z,NONE,,,"Hi Guys,
I am using Ejabberd(build from source) on server side for my chat application. I have enabled **mod_ping** module also .
I know the server will send client the ping only if server did not receive pings(or any packet) from the client within a specified time. There is no problem with that.
But i need a functionality that server should send pings to client at regular interval by its own irrespective whether the user is sending something or not . It's in the project's need.
So How can i Implement that . ",
454,https://api.github.com/repos/processone/ejabberd/issues/3259,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3259/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3259/comments,https://api.github.com/repos/processone/ejabberd/issues/3259/events,https://github.com/processone/ejabberd/issues/3259,613515414,MDU6SXNzdWU2MTM1MTU0MTQ=,3259,"Could not compile dependency :fast_tls, fatal error: 'openssl/err.h' file not found #include ","{'login': 'anildigital', 'id': 266, 'node_id': 'MDQ6VXNlcjI2Ng==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/266?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/anildigital', 'html_url': 'https://github.com/anildigital', 'followers_url': 'https://api.github.com/users/anildigital/followers', 'following_url': 'https://api.github.com/users/anildigital/following{/other_user}', 'gists_url': 'https://api.github.com/users/anildigital/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/anildigital/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/anildigital/subscriptions', 'organizations_url': 'https://api.github.com/users/anildigital/orgs', 'repos_url': 'https://api.github.com/users/anildigital/repos', 'events_url': 'https://api.github.com/users/anildigital/events{/privacy}', 'received_events_url': 'https://api.github.com/users/anildigital/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179040924, 'node_id': 'MDU6TGFiZWwxNzkwNDA5MjQ=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Elixir', 'name': 'Component:Elixir', 'color': 'bfe5bf', 'default': False, 'description': None}, {'id': 352233730, 'node_id': 'MDU6TGFiZWwzNTIyMzM3MzA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Question', 'name': 'Kind:Question', 'color': 'fef2c0', 'default': False, 'description': None}]",closed,False,,[],,2,2020-05-06T18:15:32Z,2020-07-20T08:24:50Z,2020-07-20T08:24:50Z,NONE,,,"## Environment
- ejabberd version: 20.4
- Erlang version: `Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 16.8.0`
- OS: ProductName Mac OS X (Catalina) 10.15.4 19E287
- Installed from: hex package
## Errors
```
user@MacBookPro ~/C/e/p/phoenix_ejabberd (master)> echo $PKG_CONFIG_PATH
/usr/local/opt/openssl@1.1/lib/pkgconfig
user@MacBookPro ~/C/e/p/phoenix_ejabberd (master)> echo $LDFLAGS
-L/usr/local/opt/openssl@1.1/lib
user@MacBookPro ~/C/e/p/phoenix_ejabberd (master)> echo $CPPFLAGS
-I/usr/local/opt/openssl@1.1/include
user@MacBookPro ~/C/e/p/phoenix_ejabberd (master)> mix compile
===> Compiling fast_tls
===> Compiling /Users/user/Code/elixir/phoenix/phoenix_ejabberd/deps/fast_tls/c_src/fast_tls_drv.c
===> /Users/user/Code/elixir/phoenix/phoenix_ejabberd/deps/fast_tls/c_src/fast_tls_drv.c:21:10: fatal error: 'openssl/err.h' file not found
#include
^~~~~~~~~~~~~~~
1 error generated.
** (Mix) Could not compile dependency :fast_tls, ""/Users/user/.mix/rebar3 bare compile --paths=""/Users/user/Code/elixir/phoenix/phoenix_ejabberd/_build/dev/lib/*/ebin"""" command failed. You can recompile this dependency with ""mix deps.compile fast_tls"", update it with ""mix deps.update fast_tls"" or clean it with ""mix deps.clean fast_tls""
user@MacBookPro ~/C/e/p/phoenix_ejabberd (master) [1]> elixir --version
Erlang/OTP 22 [erts-10.7.1] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1] [hipe] [dtrace]
Elixir 1.10.3 (compiled with Erlang/OTP 22)
user@MacBookPro ~/C/e/p/phoenix_ejabberd (master)>
```
## Bug description
Not able to compile `ejabberd` hex package on macOS with provided details above.
```
{:ejabberd, ""~> 20.4""},
```
",
455,https://api.github.com/repos/processone/ejabberd/issues/3258,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3258/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3258/comments,https://api.github.com/repos/processone/ejabberd/issues/3258/events,https://github.com/processone/ejabberd/issues/3258,613498483,MDU6SXNzdWU2MTM0OTg0ODM=,3258,Get multiple affiliations users of MUC in a stanza failed with Too many elements,"{'login': 'kpsbhuvi', 'id': 23560674, 'node_id': 'MDQ6VXNlcjIzNTYwNjc0', 'avatar_url': 'https://avatars2.githubusercontent.com/u/23560674?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/kpsbhuvi', 'html_url': 'https://github.com/kpsbhuvi', 'followers_url': 'https://api.github.com/users/kpsbhuvi/followers', 'following_url': 'https://api.github.com/users/kpsbhuvi/following{/other_user}', 'gists_url': 'https://api.github.com/users/kpsbhuvi/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/kpsbhuvi/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/kpsbhuvi/subscriptions', 'organizations_url': 'https://api.github.com/users/kpsbhuvi/orgs', 'repos_url': 'https://api.github.com/users/kpsbhuvi/repos', 'events_url': 'https://api.github.com/users/kpsbhuvi/events{/privacy}', 'received_events_url': 'https://api.github.com/users/kpsbhuvi/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,5,2020-05-06T17:45:50Z,2020-05-11T08:50:29Z,2020-05-11T08:50:29Z,NONE,,,"## Environment
- ejabberd version: 18.01
- Erlang version: `erl +V`
- OS: Linux (Redhat)
- Installed from: official deb/rpm
## Bug description
I am trying to get the all users in the room who is having affiliation of 'owner, member, admin'.
Using Matrix XMPP from my application to interact with Ejabberd.
which sends IQ stanza to ejabberd as,
```
```
Response from Ejabberd as,
error = 400, reason = bad request, data = Too many elements
Based on the XMPP specification,
muc#admin XML schema specifies maxOccurs='unbounded'.
But for me the above stanza fails with Too many elements.
Can someone please revert ASAP.
Thanks in Advance.
Note:
Passing one in the get stanza, successfully returns the result.",
456,https://api.github.com/repos/processone/ejabberd/issues/3257,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3257/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3257/comments,https://api.github.com/repos/processone/ejabberd/issues/3257/events,https://github.com/processone/ejabberd/issues/3257,613497232,MDU6SXNzdWU2MTM0OTcyMzI=,3257,Get multiple affiliations users of MUC in a IQ stanza fails with 'Too many elements',"{'login': 'kpsbhuvi', 'id': 23560674, 'node_id': 'MDQ6VXNlcjIzNTYwNjc0', 'avatar_url': 'https://avatars2.githubusercontent.com/u/23560674?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/kpsbhuvi', 'html_url': 'https://github.com/kpsbhuvi', 'followers_url': 'https://api.github.com/users/kpsbhuvi/followers', 'following_url': 'https://api.github.com/users/kpsbhuvi/following{/other_user}', 'gists_url': 'https://api.github.com/users/kpsbhuvi/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/kpsbhuvi/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/kpsbhuvi/subscriptions', 'organizations_url': 'https://api.github.com/users/kpsbhuvi/orgs', 'repos_url': 'https://api.github.com/users/kpsbhuvi/repos', 'events_url': 'https://api.github.com/users/kpsbhuvi/events{/privacy}', 'received_events_url': 'https://api.github.com/users/kpsbhuvi/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-05-06T17:43:37Z,2020-05-06T17:46:52Z,2020-05-06T17:46:52Z,NONE,,,"## Environment
- ejabberd version: 18.01
- Erlang version: `erl +V`
- OS: Linux (Redhat)
- Installed from: official deb/rpm
## Bug description
I am trying to get the all users in the room who is having affiliation of 'owner, member, admin'.
Using Matrix XMPP from my application to interact with Ejabberd.
which sends IQ stanza to ejabberd as,
Response from Ejabberd as,
error = 400, reason = bad request, data = Too many elements
Based on the XMPP specification,
muc#admin XML schema specifies maxOccurs='unbounded'.
But for me the above stanza fails with Too many elements.
Can someone please revert ASAP.
Thanks in Advance.
Note:
Passing one in the get stanza, successfully returns the result.",
457,https://api.github.com/repos/processone/ejabberd/issues/3256,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3256/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3256/comments,https://api.github.com/repos/processone/ejabberd/issues/3256/events,https://github.com/processone/ejabberd/issues/3256,613285582,MDU6SXNzdWU2MTMyODU1ODI=,3256,webadmin muc room sorting broken,"{'login': 'mightyBroccoli', 'id': 14238117, 'node_id': 'MDQ6VXNlcjE0MjM4MTE3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/14238117?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mightyBroccoli', 'html_url': 'https://github.com/mightyBroccoli', 'followers_url': 'https://api.github.com/users/mightyBroccoli/followers', 'following_url': 'https://api.github.com/users/mightyBroccoli/following{/other_user}', 'gists_url': 'https://api.github.com/users/mightyBroccoli/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mightyBroccoli/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mightyBroccoli/subscriptions', 'organizations_url': 'https://api.github.com/users/mightyBroccoli/orgs', 'repos_url': 'https://api.github.com/users/mightyBroccoli/repos', 'events_url': 'https://api.github.com/users/mightyBroccoli/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mightyBroccoli/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179679118, 'node_id': 'MDU6TGFiZWwxNzk2NzkxMTg=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Admin%20Tools', 'name': 'Component:Admin Tools', 'color': 'f7c6c7', 'default': False, 'description': None}]",closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/42', 'html_url': 'https://github.com/processone/ejabberd/milestone/42', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/42/labels', 'id': 5706346, 'node_id': 'MDk6TWlsZXN0b25lNTcwNjM0Ng==', 'number': 42, 'title': 'ejabberd 20.07', 'description': 'https://www.process-one.net/blog/ejabberd-20-07/', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 20, 'state': 'closed', 'created_at': '2020-07-28T07:56:43Z', 'updated_at': '2020-07-31T14:08:13Z', 'due_on': '2020-07-30T07:00:00Z', 'closed_at': '2020-07-31T14:05:45Z'}",4,2020-05-06T12:35:29Z,2020-07-31T14:04:08Z,2020-05-07T20:33:15Z,NONE,,,"## Environment
- ejabberd version: 20.03
- Erlang version: `Erlang (SMP,ASYNC_THREADS) (BEAM) emulator version 10.2.4`
- OS: Linux (Debian)
- Installed from: source
## Configuration:
```yaml
-
port: 5443
ip: ""127.0.0.1""
module: ejabberd_http
request_handlers:
/http-bind: mod_bosh
/websocket: ejabberd_http_ws
/register: mod_register_web
/captcha: ejabberd_captcha
/admin: ejabberd_web_admin
tls: true
```
nginx reverse proxy configuration:
```nginx
# web admin endpoint
location ^~ /admin {
include proxy_params;
proxy_pass https://localhost:5443/admin;
}
```
## Errors from error.log/crash.log
No errors
## Bug description
On the page `/admin/muc/rooms/` the user has the ability to sort the rooms according to the given columns. But arrows to either sort decreasingly / increasingly only appends `?sort=2/` eg. to the end without changing the actual order.
Additionally if one might `/admin/muc/rooms?sort=2/` remove the slash between rooms and the URL parameter the ejabberd webserver stops serving the style.css and additionals.js file.",
458,https://api.github.com/repos/processone/ejabberd/issues/3255,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3255/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3255/comments,https://api.github.com/repos/processone/ejabberd/issues/3255/events,https://github.com/processone/ejabberd/pull/3255,612639048,MDExOlB1bGxSZXF1ZXN0NDEzNTQ1NTEz,3255,Increase default shaper values,"{'login': 'weiss', 'id': 71850, 'node_id': 'MDQ6VXNlcjcxODUw', 'avatar_url': 'https://avatars1.githubusercontent.com/u/71850?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/weiss', 'html_url': 'https://github.com/weiss', 'followers_url': 'https://api.github.com/users/weiss/followers', 'following_url': 'https://api.github.com/users/weiss/following{/other_user}', 'gists_url': 'https://api.github.com/users/weiss/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/weiss/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/weiss/subscriptions', 'organizations_url': 'https://api.github.com/users/weiss/orgs', 'repos_url': 'https://api.github.com/users/weiss/repos', 'events_url': 'https://api.github.com/users/weiss/events{/privacy}', 'received_events_url': 'https://api.github.com/users/weiss/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179683043, 'node_id': 'MDU6TGFiZWwxNzk2ODMwNDM=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Configuration', 'name': 'Component:Configuration', 'color': 'f7c6c7', 'default': False, 'description': None}, {'id': 179053016, 'node_id': 'MDU6TGFiZWwxNzkwNTMwMTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Enhancement', 'name': 'Kind:Enhancement', 'color': '009800', 'default': False, 'description': None}]",closed,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/42', 'html_url': 'https://github.com/processone/ejabberd/milestone/42', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/42/labels', 'id': 5706346, 'node_id': 'MDk6TWlsZXN0b25lNTcwNjM0Ng==', 'number': 42, 'title': 'ejabberd 20.07', 'description': 'https://www.process-one.net/blog/ejabberd-20-07/', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 20, 'state': 'closed', 'created_at': '2020-07-28T07:56:43Z', 'updated_at': '2020-07-31T14:08:13Z', 'due_on': '2020-07-30T07:00:00Z', 'closed_at': '2020-07-31T14:05:45Z'}",6,2020-05-05T14:17:43Z,2020-07-31T14:04:07Z,2020-05-15T07:11:35Z,MEMBER,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3255', 'html_url': 'https://github.com/processone/ejabberd/pull/3255', 'diff_url': 'https://github.com/processone/ejabberd/pull/3255.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3255.patch'}","The `normal` shaper value of 1,000 B/s in the example configuration, which is applied to `ejabberd_c2s` connections, delays the negotiation of audio/video streams significantly. Clients such as Movim or Conversations generate up to 15 kB of Jingle traffic to negotiate the streams, so it takes up to 15 seconds until the streams are established after a call is accepted.
On the servers I operate myself, I had bumped the `normal`/`fast` shapers to 50,000/500,000 B/s a long time ago (as the old defaults seemed too restrictive to me). Therefore, we hadn't noticed this problem during our A/V tests. This PR bumps the shaper values in the example configuration file to the slightly more conservative values 20,000 and 200,000.",
459,https://api.github.com/repos/processone/ejabberd/issues/3254,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3254/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3254/comments,https://api.github.com/repos/processone/ejabberd/issues/3254/events,https://github.com/processone/ejabberd/pull/3254,612577459,MDExOlB1bGxSZXF1ZXN0NDEzNDk1NTY5,3254,Allow room owner to enter room without password,"{'login': 'suf4dev', 'id': 18487951, 'node_id': 'MDQ6VXNlcjE4NDg3OTUx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/18487951?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/suf4dev', 'html_url': 'https://github.com/suf4dev', 'followers_url': 'https://api.github.com/users/suf4dev/followers', 'following_url': 'https://api.github.com/users/suf4dev/following{/other_user}', 'gists_url': 'https://api.github.com/users/suf4dev/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/suf4dev/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/suf4dev/subscriptions', 'organizations_url': 'https://api.github.com/users/suf4dev/orgs', 'repos_url': 'https://api.github.com/users/suf4dev/repos', 'events_url': 'https://api.github.com/users/suf4dev/events{/privacy}', 'received_events_url': 'https://api.github.com/users/suf4dev/received_events', 'type': 'User', 'site_admin': False}","[{'id': 1201869609, 'node_id': 'MDU6TGFiZWwxMjAxODY5NjA5', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/cla-missing', 'name': 'cla-missing', 'color': 'e11d21', 'default': False, 'description': 'Contributor needs to sign Contribution License Agreement'}]",open,False,,[],,6,2020-05-05T12:50:14Z,2020-07-20T08:23:10Z,,NONE,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3254', 'html_url': 'https://github.com/processone/ejabberd/pull/3254', 'diff_url': 'https://github.com/processone/ejabberd/pull/3254.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3254.patch'}","Allowing owners to enter room without password is useful as sometimes room owners forget the room password so they can not enter the room.
",
460,https://api.github.com/repos/processone/ejabberd/issues/3253,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3253/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3253/comments,https://api.github.com/repos/processone/ejabberd/issues/3253/events,https://github.com/processone/ejabberd/issues/3253,612565931,MDU6SXNzdWU2MTI1NjU5MzE=,3253,"mod_muc_room:get_config(Pid) returns {error,notfound}","{'login': 'suf4dev', 'id': 18487951, 'node_id': 'MDQ6VXNlcjE4NDg3OTUx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/18487951?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/suf4dev', 'html_url': 'https://github.com/suf4dev', 'followers_url': 'https://api.github.com/users/suf4dev/followers', 'following_url': 'https://api.github.com/users/suf4dev/following{/other_user}', 'gists_url': 'https://api.github.com/users/suf4dev/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/suf4dev/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/suf4dev/subscriptions', 'organizations_url': 'https://api.github.com/users/suf4dev/orgs', 'repos_url': 'https://api.github.com/users/suf4dev/repos', 'events_url': 'https://api.github.com/users/suf4dev/events{/privacy}', 'received_events_url': 'https://api.github.com/users/suf4dev/received_events', 'type': 'User', 'site_admin': False}","[{'id': 346842756, 'node_id': 'MDU6TGFiZWwzNDY4NDI3NTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Note:Cannot%20reproduce', 'name': 'Note:Cannot reproduce', 'color': 'c7def8', 'default': False, 'description': None}]",closed,False,,[],,7,2020-05-05T12:30:54Z,2020-05-13T18:17:17Z,2020-05-11T16:41:18Z,NONE,,,"We have about 1000 rooms running and about 5000 active users. We have developed custom plugin to list rooms and sorting rooms according to occupants number. Some times rooms disappear . When returning to error log we found that get_config() returns {error,notfound} for some rooms. We should restart server to rooms appear again.",
461,https://api.github.com/repos/processone/ejabberd/issues/3252,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3252/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3252/comments,https://api.github.com/repos/processone/ejabberd/issues/3252/events,https://github.com/processone/ejabberd/issues/3252,612038825,MDU6SXNzdWU2MTIwMzg4MjU=,3252,epmd: failed to bind socket,"{'login': 'nerijus', 'id': 591932, 'node_id': 'MDQ6VXNlcjU5MTkzMg==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/591932?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/nerijus', 'html_url': 'https://github.com/nerijus', 'followers_url': 'https://api.github.com/users/nerijus/followers', 'following_url': 'https://api.github.com/users/nerijus/following{/other_user}', 'gists_url': 'https://api.github.com/users/nerijus/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/nerijus/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/nerijus/subscriptions', 'organizations_url': 'https://api.github.com/users/nerijus/orgs', 'repos_url': 'https://api.github.com/users/nerijus/repos', 'events_url': 'https://api.github.com/users/nerijus/events{/privacy}', 'received_events_url': 'https://api.github.com/users/nerijus/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,0,2020-05-04T17:23:18Z,2020-05-04T17:23:18Z,,NONE,,,"ejabberd version: 19.02, 20.04.
We recently upgraded CentOS from version 7.7 to 7.8, and systemctl start ejabberd.service fails with (recurring messages in journalctl):
```
epmd[61103]: epmd: failed to bind socket
epmd[61184]: epmd: failed to bind socket
...
```
We then updated ejabberd from rpm version 19.02 to 20.04, it did not help.
The only way to start ejabberd is to do:
```
su - ejabberd
/opt/ejabberd-20.04/bin/epmd -daemon
exit
systemctl start ejabberd
```
Any ideas what could be wrong? Why ejabberdctl can not start epmd?",
462,https://api.github.com/repos/processone/ejabberd/issues/3251,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3251/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3251/comments,https://api.github.com/repos/processone/ejabberd/issues/3251/events,https://github.com/processone/ejabberd/issues/3251,611999904,MDU6SXNzdWU2MTE5OTk5MDQ=,3251,sql directory not included in hex release,"{'login': 'tonnenpinguin', 'id': 9628825, 'node_id': 'MDQ6VXNlcjk2Mjg4MjU=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/9628825?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/tonnenpinguin', 'html_url': 'https://github.com/tonnenpinguin', 'followers_url': 'https://api.github.com/users/tonnenpinguin/followers', 'following_url': 'https://api.github.com/users/tonnenpinguin/following{/other_user}', 'gists_url': 'https://api.github.com/users/tonnenpinguin/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/tonnenpinguin/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/tonnenpinguin/subscriptions', 'organizations_url': 'https://api.github.com/users/tonnenpinguin/orgs', 'repos_url': 'https://api.github.com/users/tonnenpinguin/repos', 'events_url': 'https://api.github.com/users/tonnenpinguin/events{/privacy}', 'received_events_url': 'https://api.github.com/users/tonnenpinguin/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179040924, 'node_id': 'MDU6TGFiZWwxNzkwNDA5MjQ=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Elixir', 'name': 'Component:Elixir', 'color': 'bfe5bf', 'default': False, 'description': None}]",open,False,,[],,1,2020-05-04T16:19:13Z,2020-05-05T10:00:41Z,,NONE,,,"## Environment
- ejabberd version: 20.4
- Erlang version: `Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.6`
- OS: Linux (Ubuntu )
- Installed from: hex
## Bug description
The latest version released on hex (20.4) does not seem to include the `sql` directory, causing the following error to be thrown when trying to assemble a release:
```
==> Release packaging failed due to errors:
ejabberd: Cannot add file _build/dev/rel/spice/lib/ejabberd-20.4.0/priv to tar file - _build/dev/rel/spice/lib/ejabberd-20.4.0/priv/sql: no such file or directory
```
The error isn't exactly right because the symlink `ejabberd/priv/sql` actually exists. However, the location it points to (`../sql` aka `ejabberd/sql`) does not.
It seems like [this line](https://github.com/processone/ejabberd/blob/master/mix.exs#L145) might be the problem, but it was last changed 4 years ago. Does assembling a release within an umbrella application work for you guys or am I missing something obvious?
",
463,https://api.github.com/repos/processone/ejabberd/issues/3250,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3250/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3250/comments,https://api.github.com/repos/processone/ejabberd/issues/3250/events,https://github.com/processone/ejabberd/issues/3250,611833532,MDU6SXNzdWU2MTE4MzM1MzI=,3250,Server does not send pong after sometime.,"{'login': 'mailtosagar', 'id': 16096109, 'node_id': 'MDQ6VXNlcjE2MDk2MTA5', 'avatar_url': 'https://avatars1.githubusercontent.com/u/16096109?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mailtosagar', 'html_url': 'https://github.com/mailtosagar', 'followers_url': 'https://api.github.com/users/mailtosagar/followers', 'following_url': 'https://api.github.com/users/mailtosagar/following{/other_user}', 'gists_url': 'https://api.github.com/users/mailtosagar/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mailtosagar/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mailtosagar/subscriptions', 'organizations_url': 'https://api.github.com/users/mailtosagar/orgs', 'repos_url': 'https://api.github.com/users/mailtosagar/repos', 'events_url': 'https://api.github.com/users/mailtosagar/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mailtosagar/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,6,2020-05-04T12:21:56Z,2020-06-15T14:32:26Z,,NONE,,,"Hi Guys,
I am using SMACK library on client side and EJABBERD on the server side.
Client is sending the stanza regularly and server is responding to that always.
But after somtime i receive ping from cleint but server not responding to that.
Here are the logs of the client.
```
D/SMACK: RECV (1):
D/SMACK: SENT (1):
D/SMACK: SENT (1):
D/SMACK: RECV (1):
D/SMACK: SENT (1):
D/SMACK: SENT (1):
D/SMACK: RECV (1):
D/SMACK: RECV (1):
D/SMACK: SENT (1):
D/SMACK: SENT (1):
D/Roster Connection Service: Service start() function called. mactive :true
D/Roster Connection: desconnect from Server.
D/SMACK: SENT (1):
D/SMACK: SENT (1):
D/SMACK: RECV (1):
```
We can see the ping with the **id=""MxEkb-325""** has been sent. I am also able to log the ping stanza on the server.
Here it is
```
16:30:46.087 [info] <<<<**************************GOT PING IQ*************************>>>>
16:30:46.087 [info] FORMAT ERROR: ""Got the IQ: =====>>>>> "" [{iq,<<""MxEkb-325"">>,get,<<""en"">>,{jid,<<""+919876543210"">>,<<""chatserver.com"">>,<<""+919876543210"">>,<<""+919876543210"">>,<<""chatserver.com"">>,<<""+919876543210"">>},{jid,<<>>,<<""chatserver.com"">>,<<>>,<<>>,<<""chatserver.com"">>,<<>>},[{ping}],#{ip => {0,0,0,0,0,65535,27351,35220}}}]
16:30:46.087 [info] <<<<**************************************************************>>>>
```
I am able to log these stanza by editing th this part of code on the in **mod_ping.erl**.
```
%%====================================================================
%% Hook callbacks
%%====================================================================
-spec iq_ping(iq()) -> iq().
iq_ping(#iq{type = get, sub_els = [#ping{}]} = IQ) ->
?INFO_MSG(""<<<<**************************GOT PING IQ*************************>>>>"",[]),
?INFO_MSG(""Got the IQ: =====>>>>> "",[IQ]),
?INFO_MSG(""<<<<**************************************************************>>>>"",[]),
xmpp:make_iq_result(IQ);
iq_ping(#iq{lang = Lang} = IQ) ->
Txt = ?T(""Ping query is incorrect""),
xmpp:make_error(IQ, xmpp:err_bad_request(Txt, Lang)).
```
Why the server stops ping response all of a sudden??
Please help if ia m doing something wrong.",
464,https://api.github.com/repos/processone/ejabberd/issues/3249,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3249/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3249/comments,https://api.github.com/repos/processone/ejabberd/issues/3249/events,https://github.com/processone/ejabberd/issues/3249,611399299,MDU6SXNzdWU2MTEzOTkyOTk=,3249,MUC Service Crash and Make all members disconnected from Service,"{'login': 'axcl', 'id': 10355434, 'node_id': 'MDQ6VXNlcjEwMzU1NDM0', 'avatar_url': 'https://avatars2.githubusercontent.com/u/10355434?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/axcl', 'html_url': 'https://github.com/axcl', 'followers_url': 'https://api.github.com/users/axcl/followers', 'following_url': 'https://api.github.com/users/axcl/following{/other_user}', 'gists_url': 'https://api.github.com/users/axcl/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/axcl/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/axcl/subscriptions', 'organizations_url': 'https://api.github.com/users/axcl/orgs', 'repos_url': 'https://api.github.com/users/axcl/repos', 'events_url': 'https://api.github.com/users/axcl/events{/privacy}', 'received_events_url': 'https://api.github.com/users/axcl/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,12,2020-05-03T12:13:56Z,2020-05-04T08:49:58Z,2020-05-04T08:10:59Z,NONE,,,"## Environment
- ejabberd version: 20.03
- Erlang version: `erl +V`
- OS: Linux (Debian)
- Installed from: official deb/rpm
## Ejabberd Config
```
loglevel: 2
log_rotate_size: 10485760
log_rotate_date: """"
log_rotate_count: 1
log_rate_limit: 100
hosts:
- ""domain.com""
define_macro:
'CERTFILE': ""/opt/ejabberd-20.03/conf/server.pem""
'TLSOPTS':
- ""no_sslv3""
listen:
-
port: 5222
ip: ""::""
module: ejabberd_c2s
starttls: true
certfile: 'CERTFILE'
protocol_options: 'TLSOPTS'
max_stanza_size: 65536
shaper: c2s_shaper
access: c2s
-
port: 5269
ip: ""::""
module: ejabberd_s2s_in
max_stanza_size: 131072
shaper: s2s_shaper
-
port: 5280
ip: ""::""
module: ejabberd_http
request_handlers:
""/ws"": ejabberd_http_ws
""/bosh"": mod_bosh
""/api"": mod_http_api
web_admin: true
http_bind: true
register: true
captcha: true
auth_method: sql
sql_type: mysql
sql_server: ""localhost""
sql_database: ""ejabberd""
sql_username: ""ejabberd""
sql_password: ""password""
sql_port: 3306
default_db: sql
shaper:
normal: 1000
fast: 50000
max_fsm_queue: 1000
acl:
admin:
user:
- ""admin@domain.com""
local:
user_regexp: """"
loopback:
ip:
- ""127.0.0.0/8""
- ""::1/128""
- ""::FFFF:127.0.0.1/128""
shaper_rules:
max_user_sessions: 10
max_user_offline_messages:
- 5000: admin
- 100
c2s_shaper:
- none: admin
- normal
s2s_shaper: fast
access_rules:
local:
- allow: local
c2s:
- deny: blocked
- allow
announce:
- allow: admin
configure:
- allow: admin
muc_create:
- allow: local
pubsub_createnode:
- allow: local
register:
- deny
trusted_network:
- allow: loopback
api_permissions:
""console commands"":
from:
- ejabberd_ctl
who: all
what: ""*""
""admin access"":
who:
- access:
- allow:
- acl: loopback
- acl: admin
- oauth:
- scope: ""ejabberd:admin""
- access:
- allow:
- acl: loopback
- acl: admin
what:
- ""*""
- ""!stop""
- ""!start""
""public commands"":
who:
- ip: ""127.0.0.1/8""
what:
- ""status""
- ""connected_users_number""
language: ""en""
captcha_cmd: ""/opt/ejabberd-17.09/lib/ejabberd-17.09/priv/bin/captcha.sh""
captcha_host: ""domain.com:4000""
captcha_limit: 3
modules:
mod_adhoc: {}
mod_admin_extra: {}
mod_announce: # recommends mod_adhoc
access: announce
mod_blocking: {} # requires mod_privacy
mod_caps: {}
mod_carboncopy: {}
mod_client_state: {}
mod_configure: {} # requires mod_adhoc
mod_disco: {}
mod_bosh: {}
mod_last: {}
mod_muc:
access:
- allow
access_admin:
- allow: admin
access_create: muc_create
access_persistent: muc_create
max_users: 30
history_size: 0
max_room_id: 20
max_room_name: 20
max_room_desc: 200
min_message_interval: 0.4
min_presence_interval: 4
default_room_options:
allow_change_subj: false
allow_query_users: false
allow_private_messages: true
members_by_default: false
persistent: true
mod_muc_admin: {}
mod_offline:
access_max_user_messages: max_user_offline_messages
mod_ping: {}
mod_pres_counter:
count: 5
interval: 60
mod_privacy: {}
mod_private: {}
mod_push: {}
mod_push_keepalive: {}
mod_register:
captcha_protected: true
welcome_message:
subject: ""Welcome!""
body: |-
Hi.
Welcome to domain.
ip_access: trusted_network
access: register
mod_roster: {}
mod_shared_roster: {}
mod_version: {}
mod_stream_mgmt: {}
mod_s2s_dialback: {}
mod_http_api: {}
allow_contrib_modules: true
```
## Errors from error.log/crash.log
```
2020-05-03 17:29:34.732 [info] <0.7353.0>@ejabberd_c2s:bind:434 (tls|<0.7353.0>) Opened c2s session for slayer@domain.com/xabber-android-S6I7i4E6
2020-05-03 17:31:09.917 [info] <0.7342.0>@mod_muc_room:terminate:884 Stopping MUC room support@conference.domain.com
2020-05-03 17:31:09.920 [error] <0.7342.0>@mod_muc_room:normal_state:497 gen_fsm <0.7342.0> in state normal_state terminated with reason: no case clause matching 1588507068043950 in mod_muc_room:normal_state/2 line 497
2020-05-03 17:31:09.920 [error] <0.7342.0>@mod_muc_room:normal_state:497 CRASH REPORT Process <0.7342.0> with 0 neighbours exited with reason: no case clause matching 1588507068043950 in mod_muc_room:normal_state/2 line 497 in p1_fsm:terminate/8 line 760
2020-05-03 17:31:09.921 [error] <0.446.0>@mod_muc_room:normal_state:497 Supervisor 'mod_muc_room_sup_domain.com' had child undefined started with {mod_muc_room,start_link,undefined} at <0.7342.0> exit with reason no case clause matching 1588507068043950 in mod_muc_room:normal_state/2 line 497 in context child_terminated
```
## Bug description
MUC Service Crash and Make all members disconnected from Service without sending any presence and members can not send any message after that until they left and renenter again.
Also this happens to specific rooms only other rooms are working as expected.
05:31:37 PM IST] error while sending .. ( Only occupants are allowed to send messages to the conference )
",
465,https://api.github.com/repos/processone/ejabberd/issues/3248,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3248/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3248/comments,https://api.github.com/repos/processone/ejabberd/issues/3248/events,https://github.com/processone/ejabberd/issues/3248,611204816,MDU6SXNzdWU2MTEyMDQ4MTY=,3248,ejabberdctl import_prosody just returns error: nofile,"{'login': 'DrAzraelTod', 'id': 1324692, 'node_id': 'MDQ6VXNlcjEzMjQ2OTI=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1324692?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/DrAzraelTod', 'html_url': 'https://github.com/DrAzraelTod', 'followers_url': 'https://api.github.com/users/DrAzraelTod/followers', 'following_url': 'https://api.github.com/users/DrAzraelTod/following{/other_user}', 'gists_url': 'https://api.github.com/users/DrAzraelTod/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/DrAzraelTod/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/DrAzraelTod/subscriptions', 'organizations_url': 'https://api.github.com/users/DrAzraelTod/orgs', 'repos_url': 'https://api.github.com/users/DrAzraelTod/repos', 'events_url': 'https://api.github.com/users/DrAzraelTod/events{/privacy}', 'received_events_url': 'https://api.github.com/users/DrAzraelTod/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,15,2020-05-02T14:43:09Z,2020-05-04T08:00:48Z,2020-05-04T08:00:48Z,NONE,,,"tried to use the import_prosody command from ejabberdctl
> \# ejabberdctl status
> The node ejabberd@localhost is started with status: started
> ejabberd 18.12.1-2 is running in that node
> \# chmod a+rw -R /var/lib/prosody/
> \# ejabberdctl import_prosody /var/lib/prosody/migration
> Error: nofile
there seems to be no way to debug what's happening, nor is there a verbose-flag or any documentation what type of file is expected.
I would like to migrate to ejabberd, but that just doesn't seem possible currently. Any hints?",
466,https://api.github.com/repos/processone/ejabberd/issues/3247,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3247/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3247/comments,https://api.github.com/repos/processone/ejabberd/issues/3247/events,https://github.com/processone/ejabberd/issues/3247,610676476,MDU6SXNzdWU2MTA2NzY0NzY=,3247,Not able to run SQL query in a specific custom module,"{'login': 'mailtosagar', 'id': 16096109, 'node_id': 'MDQ6VXNlcjE2MDk2MTA5', 'avatar_url': 'https://avatars1.githubusercontent.com/u/16096109?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mailtosagar', 'html_url': 'https://github.com/mailtosagar', 'followers_url': 'https://api.github.com/users/mailtosagar/followers', 'following_url': 'https://api.github.com/users/mailtosagar/following{/other_user}', 'gists_url': 'https://api.github.com/users/mailtosagar/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mailtosagar/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mailtosagar/subscriptions', 'organizations_url': 'https://api.github.com/users/mailtosagar/orgs', 'repos_url': 'https://api.github.com/users/mailtosagar/repos', 'events_url': 'https://api.github.com/users/mailtosagar/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mailtosagar/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-05-01T10:07:59Z,2020-05-01T11:20:13Z,2020-05-01T11:20:13Z,NONE,,,"Hi Guys,
I am making a custom module in which i want to run an SQL query. Since i try to run a basic query just to fetch users from user table.
Here is the piece of code i am running
```
%% get all unack messages from unack_msgs table
get_all_unack_msg(UserName, LServer) ->
?INFO_MSG(""<<<<======================GETTING ALL UNACK MSAGES=======================>>>>"",[UserName]),
?INFO_MSG(""unack_msgs list: "",[ejabberd_sql:sql_query(
LServer,
?SQL(""select @(xml)s from unack_msgs""
"" where username=%(UserName)s and %(LServer)s""))]),
case ejabberd_sql:sql_query(
LServer,
?SQL(""select @(xml)s from unack_msgs""
"" where username=%(UserName)s and %(LServer)s"")) of
{selected,[]} -> ?INFO_MSG(""<<<++++++++++++++++NO UNACK MESSAGES+++++++++++++++++>>>"", []),
[];
{selected, StanzaList} -> ?INFO_MSG(""<<<++++++++++++++++ALL UNACK MESSAGES++++++++++++++++++++>>>"",[]),
StanzaList
end.
```
Here **LServer** is the server domain name i am using. every time i run this query i get an empty set.
```
15:27:10.737 [info] FORMAT ERROR: ""<<<<======================GETTING ALL UNACK MSAGES=======================>>>>"" [<<""chatserver.com"">>]
15:27:10.738 [info] FORMAT ERROR: ""unack_msgs list: "" [{selected,[]}]
```
This code is runnig fine in a local instance of server but not on the main server(using AWS EC2 ubuntu machine) .
What i am doing wrong here.",
467,https://api.github.com/repos/processone/ejabberd/issues/3246,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3246/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3246/comments,https://api.github.com/repos/processone/ejabberd/issues/3246/events,https://github.com/processone/ejabberd/pull/3246,610442615,MDExOlB1bGxSZXF1ZXN0NDExODgyMzU3,3246,Little changes,"{'login': 'Neustradamus', 'id': 104737, 'node_id': 'MDQ6VXNlcjEwNDczNw==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/104737?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Neustradamus', 'html_url': 'https://github.com/Neustradamus', 'followers_url': 'https://api.github.com/users/Neustradamus/followers', 'following_url': 'https://api.github.com/users/Neustradamus/following{/other_user}', 'gists_url': 'https://api.github.com/users/Neustradamus/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Neustradamus/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Neustradamus/subscriptions', 'organizations_url': 'https://api.github.com/users/Neustradamus/orgs', 'repos_url': 'https://api.github.com/users/Neustradamus/repos', 'events_url': 'https://api.github.com/users/Neustradamus/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Neustradamus/received_events', 'type': 'User', 'site_admin': False}","[{'id': 1201869609, 'node_id': 'MDU6TGFiZWwxMjAxODY5NjA5', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/cla-missing', 'name': 'cla-missing', 'color': 'e11d21', 'default': False, 'description': 'Contributor needs to sign Contribution License Agreement'}]",closed,False,,[],,3,2020-04-30T22:57:03Z,2020-05-19T14:40:40Z,2020-05-19T14:40:39Z,NONE,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3246', 'html_url': 'https://github.com/processone/ejabberd/pull/3246', 'diff_url': 'https://github.com/processone/ejabberd/pull/3246.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3246.patch'}",Good order: A->Z,
468,https://api.github.com/repos/processone/ejabberd/issues/3245,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3245/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3245/comments,https://api.github.com/repos/processone/ejabberd/issues/3245/events,https://github.com/processone/ejabberd/issues/3245,609724590,MDU6SXNzdWU2MDk3MjQ1OTA=,3245,"Ejabberd does not send ""unavailable"" presence for users after closing c2s session","{'login': 'NataliaDobryaeva', 'id': 63799911, 'node_id': 'MDQ6VXNlcjYzNzk5OTEx', 'avatar_url': 'https://avatars2.githubusercontent.com/u/63799911?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/NataliaDobryaeva', 'html_url': 'https://github.com/NataliaDobryaeva', 'followers_url': 'https://api.github.com/users/NataliaDobryaeva/followers', 'following_url': 'https://api.github.com/users/NataliaDobryaeva/following{/other_user}', 'gists_url': 'https://api.github.com/users/NataliaDobryaeva/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/NataliaDobryaeva/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/NataliaDobryaeva/subscriptions', 'organizations_url': 'https://api.github.com/users/NataliaDobryaeva/orgs', 'repos_url': 'https://api.github.com/users/NataliaDobryaeva/repos', 'events_url': 'https://api.github.com/users/NataliaDobryaeva/events{/privacy}', 'received_events_url': 'https://api.github.com/users/NataliaDobryaeva/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/42', 'html_url': 'https://github.com/processone/ejabberd/milestone/42', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/42/labels', 'id': 5706346, 'node_id': 'MDk6TWlsZXN0b25lNTcwNjM0Ng==', 'number': 42, 'title': 'ejabberd 20.07', 'description': 'https://www.process-one.net/blog/ejabberd-20-07/', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 20, 'state': 'closed', 'created_at': '2020-07-28T07:56:43Z', 'updated_at': '2020-07-31T14:08:13Z', 'due_on': '2020-07-30T07:00:00Z', 'closed_at': '2020-07-31T14:05:45Z'}",8,2020-04-30T08:48:31Z,2020-07-31T14:04:07Z,2020-05-07T08:44:43Z,NONE,,,"## Environment
- ejabberd version: 20.03
- OS: Windows server
- Installed from: official binary installer
## Bug description
When we are closing XMPP session, ejabberd.log shows that c2s session is closing, but ""unavailable"" presence for users is not send after it: uses are still connected to the muc room after closing the session:
`
2020-04-24 15:47:13.932 [info] <0.1822.0>@ejabberd_c2s:process_terminated:294 (tcp|<0.1822.0>) Closing c2s session for 9113983327415068954675@public.localhost/x: Stream reset by peer
`
We were using ejabberd 15.07 version before and with this ejabberd version right after closing the session the ""unavailable"" presence was sent for users and they were disconnected from the muc room. Could you please clarify why this behaviour was changed? Maybe some config settings could fix it with ejabberd 20.3?",
469,https://api.github.com/repos/processone/ejabberd/issues/3244,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3244/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3244/comments,https://api.github.com/repos/processone/ejabberd/issues/3244/events,https://github.com/processone/ejabberd/issues/3244,609355375,MDU6SXNzdWU2MDkzNTUzNzU=,3244,"Harmonization of the code: "" "" vs "" ""","{'login': 'Neustradamus', 'id': 104737, 'node_id': 'MDQ6VXNlcjEwNDczNw==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/104737?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Neustradamus', 'html_url': 'https://github.com/Neustradamus', 'followers_url': 'https://api.github.com/users/Neustradamus/followers', 'following_url': 'https://api.github.com/users/Neustradamus/following{/other_user}', 'gists_url': 'https://api.github.com/users/Neustradamus/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Neustradamus/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Neustradamus/subscriptions', 'organizations_url': 'https://api.github.com/users/Neustradamus/orgs', 'repos_url': 'https://api.github.com/users/Neustradamus/repos', 'events_url': 'https://api.github.com/users/Neustradamus/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Neustradamus/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179053610, 'node_id': 'MDU6TGFiZWwxNzkwNTM2MTA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Note:Discussion', 'name': 'Note:Discussion', 'color': 'bfd4f2', 'default': False, 'description': None}]",closed,False,,[],,6,2020-04-29T20:58:12Z,2020-05-07T08:37:08Z,2020-05-05T09:45:31Z,NONE,,,"Currently there are several differences in and between files:
- "" "" (normal spaces)
- "" "" (tab key)
It will be nice to harmonize the code with same ""technical"".
Of course, this ticket is about all ProcessOne projects/repositories.",
470,https://api.github.com/repos/processone/ejabberd/issues/3243,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3243/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3243/comments,https://api.github.com/repos/processone/ejabberd/issues/3243/events,https://github.com/processone/ejabberd/issues/3243,608944943,MDU6SXNzdWU2MDg5NDQ5NDM=,3243,Core docs contribution for JWT auth guide,"{'login': 'ghenry', 'id': 159608, 'node_id': 'MDQ6VXNlcjE1OTYwOA==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/159608?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ghenry', 'html_url': 'https://github.com/ghenry', 'followers_url': 'https://api.github.com/users/ghenry/followers', 'following_url': 'https://api.github.com/users/ghenry/following{/other_user}', 'gists_url': 'https://api.github.com/users/ghenry/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ghenry/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ghenry/subscriptions', 'organizations_url': 'https://api.github.com/users/ghenry/orgs', 'repos_url': 'https://api.github.com/users/ghenry/repos', 'events_url': 'https://api.github.com/users/ghenry/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ghenry/received_events', 'type': 'User', 'site_admin': False}",[],open,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]",,4,2020-04-29T10:28:02Z,2020-05-11T08:35:41Z,,NONE,,,"## Environment
- ejabberd version: 20.03
Hi all,
I'm on the latest ejabberd and have found the JWT auth docs somewhat lacking - https://docs.ejabberd.im/admin/configuration/authentication/#jwt-authentication
I've created this post https://stackoverflow.com/questions/61490726/jwt-secret-to-use-with-ejabberd and once I have the solution I'd like to update the core docs as the [ProccessOne JWT blog](https://www.process-one.net/blog/ejabberd-19-08/) post has some missing pieces, but not all the required info in my opinion.
What's the best way to submit a patch for docs once I'm sorted? PR?
Thanks,
Gavin.",
471,https://api.github.com/repos/processone/ejabberd/issues/3242,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3242/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3242/comments,https://api.github.com/repos/processone/ejabberd/issues/3242/events,https://github.com/processone/ejabberd/issues/3242,608801401,MDU6SXNzdWU2MDg4MDE0MDE=,3242,Getting added elements and tags from ejabberd server when message received.,"{'login': 'mailtosagar', 'id': 16096109, 'node_id': 'MDQ6VXNlcjE2MDk2MTA5', 'avatar_url': 'https://avatars1.githubusercontent.com/u/16096109?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mailtosagar', 'html_url': 'https://github.com/mailtosagar', 'followers_url': 'https://api.github.com/users/mailtosagar/followers', 'following_url': 'https://api.github.com/users/mailtosagar/following{/other_user}', 'gists_url': 'https://api.github.com/users/mailtosagar/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mailtosagar/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mailtosagar/subscriptions', 'organizations_url': 'https://api.github.com/users/mailtosagar/orgs', 'repos_url': 'https://api.github.com/users/mailtosagar/repos', 'events_url': 'https://api.github.com/users/mailtosagar/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mailtosagar/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-04-29T06:03:40Z,2020-04-29T08:12:39Z,2020-04-29T08:12:39Z,NONE,,,"Hi Guys,
I am getting additional elements and tags within the message stanza when received at other end in android client .
Message stanza sent:
```
cvhj
```
Message Stanza Received:
```
cvhj
```
1. I am getting but i do not want message to be archieved nor i want .
2. I am also getting **xmlns:stream='http://etherx.jabber.org/streams'** in and stanza. But they are the custom elements added by us to serve specific purposes .
Thanks
",
472,https://api.github.com/repos/processone/ejabberd/issues/3241,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3241/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3241/comments,https://api.github.com/repos/processone/ejabberd/issues/3241/events,https://github.com/processone/ejabberd/issues/3241,608778567,MDU6SXNzdWU2MDg3Nzg1Njc=,3241,Ejabberd server including custom elements and tags in the message stanza.,"{'login': 'mailtosagar', 'id': 16096109, 'node_id': 'MDQ6VXNlcjE2MDk2MTA5', 'avatar_url': 'https://avatars1.githubusercontent.com/u/16096109?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mailtosagar', 'html_url': 'https://github.com/mailtosagar', 'followers_url': 'https://api.github.com/users/mailtosagar/followers', 'following_url': 'https://api.github.com/users/mailtosagar/following{/other_user}', 'gists_url': 'https://api.github.com/users/mailtosagar/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mailtosagar/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mailtosagar/subscriptions', 'organizations_url': 'https://api.github.com/users/mailtosagar/orgs', 'repos_url': 'https://api.github.com/users/mailtosagar/repos', 'events_url': 'https://api.github.com/users/mailtosagar/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mailtosagar/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-04-29T04:59:36Z,2020-04-29T05:14:17Z,2020-04-29T05:14:17Z,NONE,,,,
473,https://api.github.com/repos/processone/ejabberd/issues/3240,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3240/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3240/comments,https://api.github.com/repos/processone/ejabberd/issues/3240/events,https://github.com/processone/ejabberd/issues/3240,608513063,MDU6SXNzdWU2MDg1MTMwNjM=,3240,Errors when compiling ejabberd in Phoenix project,"{'login': 'ghost', 'id': 10137, 'node_id': 'MDQ6VXNlcjEwMTM3', 'avatar_url': 'https://avatars3.githubusercontent.com/u/10137?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ghost', 'html_url': 'https://github.com/ghost', 'followers_url': 'https://api.github.com/users/ghost/followers', 'following_url': 'https://api.github.com/users/ghost/following{/other_user}', 'gists_url': 'https://api.github.com/users/ghost/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ghost/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ghost/subscriptions', 'organizations_url': 'https://api.github.com/users/ghost/orgs', 'repos_url': 'https://api.github.com/users/ghost/repos', 'events_url': 'https://api.github.com/users/ghost/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ghost/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179040924, 'node_id': 'MDU6TGFiZWwxNzkwNDA5MjQ=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Elixir', 'name': 'Component:Elixir', 'color': 'bfe5bf', 'default': False, 'description': None}]",open,False,,[],,3,2020-04-28T18:09:37Z,2020-08-23T23:11:57Z,,NONE,,,"## Environment
- ejabberd version: 20.3.0
- Erlang version: `Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.7.1`
- OS: Linux (Fedora 32)
- Installed from: Hex
- Phoenix: 1.5.1
## Bug description
I am embedding ejabberd in an Elixir Phoenix project. Running `mix do deps.get, compile` throws an error towards the end of compiling:
```
==> phoenix_live_reload
Compiling 4 files (.ex)
Generated phoenix_live_reload app
==> phoenix_ecto
Compiling 7 files (.ex)
Generated phoenix_ecto app
19:07:52.085 [info] Application phoenix exited: exited in: Phoenix.start(:normal, [])
** (EXIT) exited in: :gen_server.call(:telemetry_handler_table, {:insert, {Phoenix.Logger, [:phoenix, :channel_handled_in]}, [[:phoenix, :channel_handled_in]], #Function<8.100890372/4 in Phoenix.Logger.install/0>, :ok})
** (EXIT) no process: the process is not alive or there's no process currently associated with the given name, possibly because its application isn't started
19:07:52.086 [info] Application eex exited: :stopped
** (MatchError) no match of right hand side value: {:error, {:phoenix, {:bad_return, {{Phoenix, :start, [:normal, []]}, {:EXIT, {:noproc, {:gen_server, :call, [:telemetry_handler_table, {:insert, {Phoenix.Logger, [:phoenix, :channel_handled_in]}, [[:phoenix, :channel_handled_in]], #Function<8.100890372/4 in Phoenix.Logger.install/0>, :ok}]}}}}}}}
(phoenix) lib/mix/tasks/compile.phoenix.ex:11: Mix.Tasks.Compile.Phoenix.run/1
(mix) lib/mix/task.ex:331: Mix.Task.run_task/3
(mix) lib/mix/tasks/compile.all.ex:73: Mix.Tasks.Compile.All.run_compiler/2
(mix) lib/mix/tasks/compile.all.ex:53: Mix.Tasks.Compile.All.do_compile/4
(mix) lib/mix/tasks/compile.all.ex:24: anonymous fn/1 in Mix.Tasks.Compile.All.run/1
(mix) lib/mix/tasks/compile.all.ex:40: Mix.Tasks.Compile.All.with_logger_app/1
(mix) lib/mix/task.ex:331: Mix.Task.run_task/3
(mix) lib/mix/tasks/compile.ex:96: Mix.Tasks.Compile.run/1
(mix) lib/mix/task.ex:331: Mix.Task.run_task/3
(elixir) lib/enum.ex:783: Enum.""-each/2-lists^foreach/1-0-""/2
(elixir) lib/enum.ex:783: Enum.each/2
(mix) lib/mix/task.ex:331: Mix.Task.run_task/3
(mix) lib/mix/cli.ex:79: Mix.CLI.run_task/2
(elixir) lib/code.ex:813: Code.require_file/2
```
After this, commands like `mix ecto.setup` or `mix phx.start` throw the same error.
There is a workaround:
* clean out the `_build` and `deps` folders
* comment out the ejabberd dependency in `mix.exs`
* run `mix do deps.get, compile`
* uncomment the ejabberd dependency
* run `mix do deps.get, compile` again
Then everything works as expected! So for some reason, compiling the ejabberd at the same time as the rest of the project breaks it. I have no idea how to debug this further, but perhaps someone here can point me in the right direction?
(This same project was raised back in September 2019 on the [Elixir forums](https://elixirforum.com/t/embedding-ejabberd-in-a-phoenix-app/25584), but no-one opened a Github issue).",
474,https://api.github.com/repos/processone/ejabberd/issues/3239,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3239/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3239/comments,https://api.github.com/repos/processone/ejabberd/issues/3239/events,https://github.com/processone/ejabberd/issues/3239,607097022,MDU6SXNzdWU2MDcwOTcwMjI=,3239,Get archived messages ,"{'login': 'prafulbagai708', 'id': 52816636, 'node_id': 'MDQ6VXNlcjUyODE2NjM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/52816636?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/prafulbagai708', 'html_url': 'https://github.com/prafulbagai708', 'followers_url': 'https://api.github.com/users/prafulbagai708/followers', 'following_url': 'https://api.github.com/users/prafulbagai708/following{/other_user}', 'gists_url': 'https://api.github.com/users/prafulbagai708/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/prafulbagai708/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/prafulbagai708/subscriptions', 'organizations_url': 'https://api.github.com/users/prafulbagai708/orgs', 'repos_url': 'https://api.github.com/users/prafulbagai708/repos', 'events_url': 'https://api.github.com/users/prafulbagai708/events{/privacy}', 'received_events_url': 'https://api.github.com/users/prafulbagai708/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]",,2,2020-04-26T19:45:05Z,2020-06-24T11:30:01Z,2020-06-24T11:30:01Z,NONE,,,"## Environment
- ejabberd version: 20.03.50
- Erlang version: `10.7.1`
- OS: Linux (Debian) Linux
- Installed from: source
## Errors from error.log/crash.log
```
Unhandled exception occurred executing the command:
** exception error: no function clause matching
ejabberd_ctl:format_result([],
{messages,list,
{message,
{tuple,
[{timestamp,string},
{xml,string},
{peer,integer},
{kind,integer},
{nick,string}]}}}) (src/ejabberd_ctl.erl, line 405)
in function ejabberd_ctl:format_result/2 (src/ejabberd_ctl.erl, line 461)
in call from ejabberd_ctl:try_call_command/4 (src/ejabberd_ctl.erl, line 321)
in call from ejabberd_ctl:process2/4 (src/ejabberd_ctl.erl, line 274)
in call from ejabberd_ctl:process/2 (src/ejabberd_ctl.erl, line 252)
in call from rpc:'-handle_call_call/6-fun-0-'/5 (rpc.erl, line 197)
```
## Bug description
Please, give us a precise description (what does not work, what is expected, etc.)
I created a new command to fetch messages from `archive` table. The command is as follow:-
`ejabberdctl get_messages HOST FROM_JID TO_JID START_TIME END_TIME`
I wrote a custom command in `mod_admin_extra.erl`
```
% ----------------- Custom Command Get Message ----------------------
#ejabberd_commands{name = get_message, tags = [stanza],
desc = ""Get messages from a local or remote bare of full JID"",
longdesc = ""Get messages of a specific JID sent to a JID"",
module = ?MODULE, function = get_message,
args = [{host, binary}, {from, binary}, {to, binary},
{start_time, binary}, {end_time, binary}],
args_example = [<<""localhost"">>, <<""admin"">>, <<""user1"">>,
<<""2015-07-00T00:00:00Z"">>, <<""2015-07-029T13:23:54Z"">>],
args_desc = [""Host"", ""From JID"", ""Receiver JID"", ""Start Time"", ""End Time""],
result = {result, {
tuple, [{messages, list, {message, {tuple,
[
{timestamp, string},
{xml, string},
{txt, string},
{peer, integer},
{kind, integer},
{nick, string}
]}}},
{status, string},
{count, integer}]}}
},
% ----------------- Custom Command Ends -----------------------------
```
This is my function that gets called when the command is received.
```
% ----------------- Custom Function Get Message ----------------------
get_message(Host, From, To, StartTime, EndTime) ->
mod_mam:select(
Host,
jid:make(From, Host),
jid:make(From, Host),
[{start, xmpp_util:decode_timestamp(StartTime)},
{'end', xmpp_util:decode_timestamp(EndTime)},
{with, jid:make(To, Host)}],
#rsm_set{},
chat,
all
).
% ----------------- Custom Function Get Message ----------------------
```
However, it returns an error response mentioned in the above section. I believe the formatting of the result is not right.
The response that I want to have is:=```
```
{ 'count': integer,
'status': 'ok',
'messages': [{list of dictionaries}]
}
```
",
475,https://api.github.com/repos/processone/ejabberd/issues/3238,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3238/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3238/comments,https://api.github.com/repos/processone/ejabberd/issues/3238/events,https://github.com/processone/ejabberd/issues/3238,607093720,MDU6SXNzdWU2MDcwOTM3MjA=,3238,Dynamically adding vhosts does not shows on Admin,"{'login': 'prafulbagai708', 'id': 52816636, 'node_id': 'MDQ6VXNlcjUyODE2NjM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/52816636?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/prafulbagai708', 'html_url': 'https://github.com/prafulbagai708', 'followers_url': 'https://api.github.com/users/prafulbagai708/followers', 'following_url': 'https://api.github.com/users/prafulbagai708/following{/other_user}', 'gists_url': 'https://api.github.com/users/prafulbagai708/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/prafulbagai708/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/prafulbagai708/subscriptions', 'organizations_url': 'https://api.github.com/users/prafulbagai708/orgs', 'repos_url': 'https://api.github.com/users/prafulbagai708/repos', 'events_url': 'https://api.github.com/users/prafulbagai708/events{/privacy}', 'received_events_url': 'https://api.github.com/users/prafulbagai708/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-04-26T19:29:26Z,2020-04-27T06:25:44Z,2020-04-26T22:45:33Z,NONE,,,"## Environment
- ejabberd version: 20.03.50
- Erlang version: `10.7.1`
- OS: Linux (Debian) Linux
- Installed from: source
## Errors from error.log/crash.log
No errors
## Bug description
Upon configuring a new virtual host via `ejabberd_config:set_options(hosts, [<<""host1"">>, <<""host2"">>]).`, it neither shows on Admin UI nor able to register a new user with the added host.
However, `ejabberd_config:get_options(hosts).` returns the updated list of virtual host. What's the issue?",
476,https://api.github.com/repos/processone/ejabberd/issues/3237,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3237/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3237/comments,https://api.github.com/repos/processone/ejabberd/issues/3237/events,https://github.com/processone/ejabberd/issues/3237,606776800,MDU6SXNzdWU2MDY3NzY4MDA=,3237,Add custom metadata from JWT fields to c2s state,"{'login': 'pouriya', 'id': 20663776, 'node_id': 'MDQ6VXNlcjIwNjYzNzc2', 'avatar_url': 'https://avatars3.githubusercontent.com/u/20663776?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/pouriya', 'html_url': 'https://github.com/pouriya', 'followers_url': 'https://api.github.com/users/pouriya/followers', 'following_url': 'https://api.github.com/users/pouriya/following{/other_user}', 'gists_url': 'https://api.github.com/users/pouriya/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/pouriya/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/pouriya/subscriptions', 'organizations_url': 'https://api.github.com/users/pouriya/orgs', 'repos_url': 'https://api.github.com/users/pouriya/repos', 'events_url': 'https://api.github.com/users/pouriya/events{/privacy}', 'received_events_url': 'https://api.github.com/users/pouriya/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",open,False,,[],,1,2020-04-25T14:06:39Z,2020-06-05T13:15:40Z,,CONTRIBUTOR,,,"**Describe the solution you'd like**
something like:
```erlang
{NewC2SState, NewAuthResult} = ejabberd_hooks:run_fold(
jwt_check,
LServer,
{C2SState, AuthResult=true},
[JWTFields]
)
```
So I can check my custom metadata in given fields and update state and so on.
**Describe alternatives you've considered**
Since `ejabberd_c2s` uses `ejabberd_auth:*` API and the entire API does not accept `C2SState`, We can not put above hook [here](https://github.com/processone/ejabberd/blob/20.03/src/ejabberd_auth_jwt.erl#L111). So I think the fastest (and dirtiest) way is using for example `c2s_handle_recv` hook and check if auth method for detected server is JWT, if yes then I have to check JWT myself and it's error prone !
",
477,https://api.github.com/repos/processone/ejabberd/issues/3236,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3236/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3236/comments,https://api.github.com/repos/processone/ejabberd/issues/3236/events,https://github.com/processone/ejabberd/issues/3236,606651831,MDU6SXNzdWU2MDY2NTE4MzE=,3236,How to clean up caps_features,"{'login': 'licaon-kter', 'id': 2282799, 'node_id': 'MDQ6VXNlcjIyODI3OTk=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2282799?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/licaon-kter', 'html_url': 'https://github.com/licaon-kter', 'followers_url': 'https://api.github.com/users/licaon-kter/followers', 'following_url': 'https://api.github.com/users/licaon-kter/following{/other_user}', 'gists_url': 'https://api.github.com/users/licaon-kter/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/licaon-kter/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/licaon-kter/subscriptions', 'organizations_url': 'https://api.github.com/users/licaon-kter/orgs', 'repos_url': 'https://api.github.com/users/licaon-kter/repos', 'events_url': 'https://api.github.com/users/licaon-kter/events{/privacy}', 'received_events_url': 'https://api.github.com/users/licaon-kter/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,11,2020-04-25T00:38:26Z,2020-04-27T15:25:02Z,,CONTRIBUTOR,,,"#### Environment
- ejabberd version: 20.03.xx
- Erlang version: 10.2.4
- OS: Debian Buster arm64
- Installed from: source
Jitsi Meet has the bad habit of [creating and destroying a room every 10 seconds](https://github.com/jitsi/jicofo/issues/470) which is annoying for the logs but whatever.
Now, I'm looking at my DB size and it just balooned:
```
ejabberd=# \dt+
List of relations
Schema | Name | Type | Owner | Size |
--------+---------------+-------+----------+------------+
public | archive | table | ejabberd | 97 MB |
public | caps_features | table | ejabberd | 219 MB |
```
...with ejabberd/db going crazy, as every 10 seconds a new entry is added:
```
http://www.process-one.net/en/ejabberd/ HPfX98vYid8OeIH43MWXhi0+aVw= vcard-temp 2020-04-14 00:55:54.142218
http://www.process-one.net/en/ejabberd/ HPfX98vYid8OeIH43MWXhi0+aVw= http://jabber.org/protocol/muc 2020-04-14 00:55:54.142218
http://www.process-one.net/en/ejabberd/ HPfX98vYid8OeIH43MWXhi0+aVw= http://jabber.org/protocol/disco#info 2020-04-14 00:55:54.142218
http://www.process-one.net/en/ejabberd/ HPfX98vYid8OeIH43MWXhi0+aVw= http://jabber.org/protocol/disco#items 2020-04-14 00:55:54.142218
http://www.process-one.net/en/ejabberd/ HPfX98vYid8OeIH43MWXhi0+aVw= muc_public 2020-04-14 00:55:54.142218
http://www.process-one.net/en/ejabberd/ HPfX98vYid8OeIH43MWXhi0+aVw= muc_temporary 2020-04-14 00:55:54.142218
http://www.process-one.net/en/ejabberd/ HPfX98vYid8OeIH43MWXhi0+aVw= muc_open 2020-04-14 00:55:54.142218
http://www.process-one.net/en/ejabberd/ HPfX98vYid8OeIH43MWXhi0+aVw= muc_semianonymous 2020-04-14 00:55:54.142218
http://www.process-one.net/en/ejabberd/ HPfX98vYid8OeIH43MWXhi0+aVw= muc_moderated 2020-04-14 00:55:54.142218
http://www.process-one.net/en/ejabberd/ HPfX98vYid8OeIH43MWXhi0+aVw= muc_unsecured 2020-04-14 00:55:54.142218
```
I'm looking at https://docs.ejabberd.im/admin/configuration/modules/#mod-caps to try to clean this up.
All those cache options are used for what exactly? I see caps from 2018 in the DB, when/how is this table cleaned up?
/PS: I guess I can just clean up the table in the DB, but _""The plugin that implements PEP (XEP-0163: Personal Eventing via Pubsub) is enabled in the default ejabberd configuration file, and it requires mod_caps.""_ so I'm not sure what side effects that would have.
/LE: so maybe [I've dreamed of a command](https://process-one.net/logs/ejabberd@conference.process-one.net/2019/10/29.html#15:17:05.793330) then",
478,https://api.github.com/repos/processone/ejabberd/issues/3235,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3235/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3235/comments,https://api.github.com/repos/processone/ejabberd/issues/3235/events,https://github.com/processone/ejabberd/pull/3235,606256769,MDExOlB1bGxSZXF1ZXN0NDA4NTA1MzA2,3235,Support STUN/TURN service discovery,"{'login': 'weiss', 'id': 71850, 'node_id': 'MDQ6VXNlcjcxODUw', 'avatar_url': 'https://avatars1.githubusercontent.com/u/71850?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/weiss', 'html_url': 'https://github.com/weiss', 'followers_url': 'https://api.github.com/users/weiss/followers', 'following_url': 'https://api.github.com/users/weiss/following{/other_user}', 'gists_url': 'https://api.github.com/users/weiss/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/weiss/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/weiss/subscriptions', 'organizations_url': 'https://api.github.com/users/weiss/orgs', 'repos_url': 'https://api.github.com/users/weiss/repos', 'events_url': 'https://api.github.com/users/weiss/events{/privacy}', 'received_events_url': 'https://api.github.com/users/weiss/received_events', 'type': 'User', 'site_admin': False}","[{'id': 186046548, 'node_id': 'MDU6TGFiZWwxODYwNDY1NDg=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Misc%20XEP', 'name': 'Component:Misc XEP', 'color': 'bfd4f2', 'default': False, 'description': None}, {'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",closed,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/41', 'html_url': 'https://github.com/processone/ejabberd/milestone/41', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/41/labels', 'id': 5368239, 'node_id': 'MDk6TWlsZXN0b25lNTM2ODIzOQ==', 'number': 41, 'title': 'ejabberd 20.04', 'description': 'https://www.process-one.net/blog/ejabberd-20-04/', 'creator': {'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 18, 'state': 'closed', 'created_at': '2020-04-30T16:07:38Z', 'updated_at': '2020-04-30T16:08:55Z', 'due_on': '2020-04-29T07:00:00Z', 'closed_at': '2020-04-30T16:08:55Z'}",5,2020-04-24T11:52:01Z,2020-05-14T06:08:45Z,2020-04-28T14:03:22Z,MEMBER,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3235', 'html_url': 'https://github.com/processone/ejabberd/pull/3235', 'diff_url': 'https://github.com/processone/ejabberd/pull/3235.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3235.patch'}","Add the `mod_stun_disco` module, which allows XMPP clients to discover STUN/TURN services and to obtain temporary credentials for using them as per [XEP-0215: External Service Discovery][1]. The upcoming A/V support in the Android client Conversations will hard-depend on this server feature, and it's also used by clients such as Movim (and Jitsi Meet, though they [currently use an outdated version][2] of XEP-0215).
The format of the temporary credentials handed out to clients is described in an [IETF draft][3]. Therefore, the module cannot only be used with ejabberd's built-in STUN/TURN support, but also with external STUN/TURN servers that support the same draft ([such as coturn][4] or restund). It also allows (non-XMPP) WebRTC applications to use ejabberd's built-in STUN/TURN support.
This PR doesn't touch existing code except for:
- making sure modules [won't be reloaded before listeners][5],
- bumping the `xmpp` and `stun` dependencies in [rebar.config][6]/[mix.exs][7],
- [replacing][8] the `[warning]` logged by `ejabberd_stun` when multiple domains are configured and no auth realm is specified with a less alarming `[info]` message (as the realm is [irrelevant][9] for XEP-0215 authentication), and
- [adding][10] the module to the sample configuration file.
The module is shipped with [test cases][11], has already been tested by several admins, and is running in production on two of the servers I operate myself.
Many thanks to @ChaosKid42, @licaon-kter, @rom1dep and others for testing things and giving very useful feedback.
Closes #2947.
[1]: https://xmpp.org/extensions/xep-0215.html
[2]: https://github.com/jitsi/jitsi-meet/issues/5786
[3]: https://tools.ietf.org/html/draft-uberti-behave-turn-rest-00
[4]: https://github.com/coturn/coturn/wiki/turnserver#webrtc-usage
[5]: https://github.com/processone/ejabberd/pull/3235/commits/88f392721b254f18dd87d34e91416e7b19f7dd29
[6]: https://github.com/processone/ejabberd/pull/3235/commits/fc444ce5032fb1039742d9497e2e93f18b4126e7
[7]: https://github.com/processone/ejabberd/pull/3235/commits/d7c696f97cd137e8a5ebae5e6638e9542e744882
[8]: https://github.com/processone/ejabberd/pull/3235/commits/6edc8af16032d4ddad9ce5ec8675515281dd7ade
[9]: https://tools.ietf.org/html/draft-uberti-behave-turn-rest-00#section-4.2
[10]: https://github.com/weiss/ejabberd/blob/xep-0215/ejabberd.yml.example#L206
[11]: https://github.com/processone/ejabberd/pull/3235/commits/223eb01b3ea50424173aa3dc1dc7623a27c1477f",
479,https://api.github.com/repos/processone/ejabberd/issues/3234,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3234/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3234/comments,https://api.github.com/repos/processone/ejabberd/issues/3234/events,https://github.com/processone/ejabberd/issues/3234,606161889,MDU6SXNzdWU2MDYxNjE4ODk=,3234,Logging all in coming and outgoing stanza from server.,"{'login': 'shaggi7', 'id': 54536845, 'node_id': 'MDQ6VXNlcjU0NTM2ODQ1', 'avatar_url': 'https://avatars1.githubusercontent.com/u/54536845?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/shaggi7', 'html_url': 'https://github.com/shaggi7', 'followers_url': 'https://api.github.com/users/shaggi7/followers', 'following_url': 'https://api.github.com/users/shaggi7/following{/other_user}', 'gists_url': 'https://api.github.com/users/shaggi7/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/shaggi7/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/shaggi7/subscriptions', 'organizations_url': 'https://api.github.com/users/shaggi7/orgs', 'repos_url': 'https://api.github.com/users/shaggi7/repos', 'events_url': 'https://api.github.com/users/shaggi7/events{/privacy}', 'received_events_url': 'https://api.github.com/users/shaggi7/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",closed,False,,[],,6,2020-04-24T09:07:49Z,2020-05-04T14:47:24Z,2020-05-04T14:47:24Z,NONE,,,"HI guys,
I want to see all the incoming and outgoing stanza in ejabberd server that can be seen while we run command **ejabberdctl live** . it's a great need of ours.
I have googled about it and i found a [module](https://gist.github.com/developerworks/34bf6015f1f4890a210e#file-mod_logxml-erl) developed by @badlop . but seems like it uses some old files or code architecture to work with.
Is there any default setting or module for it.
",
480,https://api.github.com/repos/processone/ejabberd/issues/3233,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3233/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3233/comments,https://api.github.com/repos/processone/ejabberd/issues/3233/events,https://github.com/processone/ejabberd/issues/3233,603065912,MDU6SXNzdWU2MDMwNjU5MTI=,3233,Ejabberd 20.03 in Docker Hub Does Not Exist,"{'login': 'alamse', 'id': 19145566, 'node_id': 'MDQ6VXNlcjE5MTQ1NTY2', 'avatar_url': 'https://avatars2.githubusercontent.com/u/19145566?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/alamse', 'html_url': 'https://github.com/alamse', 'followers_url': 'https://api.github.com/users/alamse/followers', 'following_url': 'https://api.github.com/users/alamse/following{/other_user}', 'gists_url': 'https://api.github.com/users/alamse/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/alamse/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/alamse/subscriptions', 'organizations_url': 'https://api.github.com/users/alamse/orgs', 'repos_url': 'https://api.github.com/users/alamse/repos', 'events_url': 'https://api.github.com/users/alamse/events{/privacy}', 'received_events_url': 'https://api.github.com/users/alamse/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",closed,False,,[],,5,2020-04-20T09:00:06Z,2020-05-04T06:56:33Z,2020-05-04T06:56:33Z,NONE,,,"**Is your feature request related to a problem? Please describe.**
I am very enthusiast to update my Docker Ejabberd version to 20.03, to know, how the cache and optimizing queries in `mod_shared_roster` works. But i've problem, because the tag `20.03` in Docker Hub does not exist.
**Describe the solution you'd like**
Would be nice, if the maintainer could push the tag `20.03` to Docker Hub
",
481,https://api.github.com/repos/processone/ejabberd/issues/3232,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3232/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3232/comments,https://api.github.com/repos/processone/ejabberd/issues/3232/events,https://github.com/processone/ejabberd/pull/3232,602970043,MDExOlB1bGxSZXF1ZXN0NDA1ODQ4MzQ2,3232,Enable STUN/TURN support by default,"{'login': 'weiss', 'id': 71850, 'node_id': 'MDQ6VXNlcjcxODUw', 'avatar_url': 'https://avatars1.githubusercontent.com/u/71850?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/weiss', 'html_url': 'https://github.com/weiss', 'followers_url': 'https://api.github.com/users/weiss/followers', 'following_url': 'https://api.github.com/users/weiss/following{/other_user}', 'gists_url': 'https://api.github.com/users/weiss/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/weiss/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/weiss/subscriptions', 'organizations_url': 'https://api.github.com/users/weiss/orgs', 'repos_url': 'https://api.github.com/users/weiss/repos', 'events_url': 'https://api.github.com/users/weiss/events{/privacy}', 'received_events_url': 'https://api.github.com/users/weiss/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179683043, 'node_id': 'MDU6TGFiZWwxNzk2ODMwNDM=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Configuration', 'name': 'Component:Configuration', 'color': 'f7c6c7', 'default': False, 'description': None}, {'id': 179053016, 'node_id': 'MDU6TGFiZWwxNzkwNTMwMTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Enhancement', 'name': 'Kind:Enhancement', 'color': '009800', 'default': False, 'description': None}]",closed,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/41', 'html_url': 'https://github.com/processone/ejabberd/milestone/41', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/41/labels', 'id': 5368239, 'node_id': 'MDk6TWlsZXN0b25lNTM2ODIzOQ==', 'number': 41, 'title': 'ejabberd 20.04', 'description': 'https://www.process-one.net/blog/ejabberd-20-04/', 'creator': {'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 18, 'state': 'closed', 'created_at': '2020-04-30T16:07:38Z', 'updated_at': '2020-04-30T16:08:55Z', 'due_on': '2020-04-29T07:00:00Z', 'closed_at': '2020-04-30T16:08:55Z'}",0,2020-04-20T06:10:17Z,2020-04-30T16:08:11Z,2020-04-29T08:29:06Z,MEMBER,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3232', 'html_url': 'https://github.com/processone/ejabberd/pull/3232', 'diff_url': 'https://github.com/processone/ejabberd/pull/3232.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3232.patch'}","The popularity of audio/video calls, which usually require a STUN/TURN server, is increasing. It would therefore be nice to build ejabberd with STUN/TURN support by default, and to have it enabled in the sample configuration file.",
482,https://api.github.com/repos/processone/ejabberd/issues/3231,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3231/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3231/comments,https://api.github.com/repos/processone/ejabberd/issues/3231/events,https://github.com/processone/ejabberd/issues/3231,602722489,MDU6SXNzdWU2MDI3MjI0ODk=,3231,Relative paths in erl.ini,"{'login': 'NataliaDobryaeva', 'id': 63799911, 'node_id': 'MDQ6VXNlcjYzNzk5OTEx', 'avatar_url': 'https://avatars2.githubusercontent.com/u/63799911?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/NataliaDobryaeva', 'html_url': 'https://github.com/NataliaDobryaeva', 'followers_url': 'https://api.github.com/users/NataliaDobryaeva/followers', 'following_url': 'https://api.github.com/users/NataliaDobryaeva/following{/other_user}', 'gists_url': 'https://api.github.com/users/NataliaDobryaeva/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/NataliaDobryaeva/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/NataliaDobryaeva/subscriptions', 'organizations_url': 'https://api.github.com/users/NataliaDobryaeva/orgs', 'repos_url': 'https://api.github.com/users/NataliaDobryaeva/repos', 'events_url': 'https://api.github.com/users/NataliaDobryaeva/events{/privacy}', 'received_events_url': 'https://api.github.com/users/NataliaDobryaeva/received_events', 'type': 'User', 'site_admin': False}","[{'id': 231569227, 'node_id': 'MDU6TGFiZWwyMzE1NjkyMjc=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Installers', 'name': 'Component:Installers', 'color': 'fef2c0', 'default': False, 'description': None}, {'id': 352233730, 'node_id': 'MDU6TGFiZWwzNTIyMzM3MzA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Question', 'name': 'Kind:Question', 'color': 'fef2c0', 'default': False, 'description': None}]",open,False,,[],,0,2020-04-19T14:03:05Z,2020-04-30T12:07:50Z,,NONE,,,"## Environment
- ejabberd version: 20.3
- Erlang version: `erl +V`
- OS: Windows
- Installed from: official binary installer
## Bug description
Is it possible to define relative paths in erl.ini file? I've tried the following:
```
[erlang]
Bindir=.
Progname=erl
Rootdir=..
```
But it does not work: when I run the command ""ejabberdctl status"" it returns ""error spawning .\epmd -daemon"".
I've used ejabberd 15.07 version before and such relative paths worked with it. ",
483,https://api.github.com/repos/processone/ejabberd/issues/3230,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3230/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3230/comments,https://api.github.com/repos/processone/ejabberd/issues/3230/events,https://github.com/processone/ejabberd/issues/3230,602681136,MDU6SXNzdWU2MDI2ODExMzY=,3230,Accepted c2s PLAIN authentication - what does this mean?,"{'login': 'n00b712', 'id': 45947643, 'node_id': 'MDQ6VXNlcjQ1OTQ3NjQz', 'avatar_url': 'https://avatars2.githubusercontent.com/u/45947643?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/n00b712', 'html_url': 'https://github.com/n00b712', 'followers_url': 'https://api.github.com/users/n00b712/followers', 'following_url': 'https://api.github.com/users/n00b712/following{/other_user}', 'gists_url': 'https://api.github.com/users/n00b712/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/n00b712/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/n00b712/subscriptions', 'organizations_url': 'https://api.github.com/users/n00b712/orgs', 'repos_url': 'https://api.github.com/users/n00b712/repos', 'events_url': 'https://api.github.com/users/n00b712/events{/privacy}', 'received_events_url': 'https://api.github.com/users/n00b712/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-04-19T10:36:35Z,2020-04-19T12:13:46Z,2020-04-19T12:13:46Z,NONE,,,"Hello all,
After upgrade from 16.09-4 to 18.12.1-2 on Debian 10 I found this in the logs on the new version 18.12.1-2:
Accepted connection ::ffff:192.168.1.1:49036 -> ::ffff:192.168.1.5:5222
2020-04-19 13:18:16.132 [info] <0.509.0>@ejabberd_c2s:handle_auth_success:442 (tls|<0.509.0>) **Accepted c2s PLAIN authentication** for _user_ by mnesia backend from
_user_
2020-04-19 13:06:59.838 [info] <0.529.0>@ejabberd_c2s:bind:411 (tls|<0.529.0>) Opened c2s session for _user_
On old version 16.09-4 there are no PLAIN authentication :
2020-04-19 13:42:23.761 [info] <0.534.0>@ejabberd_listener:accept:333 (#Port<0.8622>) Accepted connection ::FFFF:192.168.1.1:49514 -> ::FFFF:192.168.1.5:5222
2020-04-19 13:42:23.902 [info] <0.621.0>@ejabberd_c2s:wait_for_feature_request:801 ({socket_state,fast_tls,{tlssock,#Port<0.8622>,#Port<0.8623>},<0.620.0>}) Accepted authentication for _user_ by ejabberd_auth_mnesia from ::FFFF:192.168.1.1
2020-04-19 13:42:24.049 [info] <0.621.0>@ejabberd_c2s:open_session:1153 ({socket_state,fast_tls,{tlssock,#Port<0.8622>,#Port<0.8623>},<0.620.0>}) Opened session for _user_
I'm wondering what does this mean in this particular case and is there anything wrong with TLS authentication.
Thank you!",
484,https://api.github.com/repos/processone/ejabberd/issues/3228,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3228/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3228/comments,https://api.github.com/repos/processone/ejabberd/issues/3228/events,https://github.com/processone/ejabberd/issues/3228,601666299,MDU6SXNzdWU2MDE2NjYyOTk=,3228,Message loss when client is online on server for sometime even after connection loss.,"{'login': 'mailtosagar', 'id': 16096109, 'node_id': 'MDQ6VXNlcjE2MDk2MTA5', 'avatar_url': 'https://avatars1.githubusercontent.com/u/16096109?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mailtosagar', 'html_url': 'https://github.com/mailtosagar', 'followers_url': 'https://api.github.com/users/mailtosagar/followers', 'following_url': 'https://api.github.com/users/mailtosagar/following{/other_user}', 'gists_url': 'https://api.github.com/users/mailtosagar/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mailtosagar/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mailtosagar/subscriptions', 'organizations_url': 'https://api.github.com/users/mailtosagar/orgs', 'repos_url': 'https://api.github.com/users/mailtosagar/repos', 'events_url': 'https://api.github.com/users/mailtosagar/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mailtosagar/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}, {'id': 179053760, 'node_id': 'MDU6TGFiZWwxNzkwNTM3NjA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Note:Needs%20more%20info', 'name': 'Note:Needs more info', 'color': 'c7def8', 'default': False, 'description': None}]",closed,False,"{'login': 'weiss', 'id': 71850, 'node_id': 'MDQ6VXNlcjcxODUw', 'avatar_url': 'https://avatars1.githubusercontent.com/u/71850?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/weiss', 'html_url': 'https://github.com/weiss', 'followers_url': 'https://api.github.com/users/weiss/followers', 'following_url': 'https://api.github.com/users/weiss/following{/other_user}', 'gists_url': 'https://api.github.com/users/weiss/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/weiss/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/weiss/subscriptions', 'organizations_url': 'https://api.github.com/users/weiss/orgs', 'repos_url': 'https://api.github.com/users/weiss/repos', 'events_url': 'https://api.github.com/users/weiss/events{/privacy}', 'received_events_url': 'https://api.github.com/users/weiss/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'weiss', 'id': 71850, 'node_id': 'MDQ6VXNlcjcxODUw', 'avatar_url': 'https://avatars1.githubusercontent.com/u/71850?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/weiss', 'html_url': 'https://github.com/weiss', 'followers_url': 'https://api.github.com/users/weiss/followers', 'following_url': 'https://api.github.com/users/weiss/following{/other_user}', 'gists_url': 'https://api.github.com/users/weiss/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/weiss/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/weiss/subscriptions', 'organizations_url': 'https://api.github.com/users/weiss/orgs', 'repos_url': 'https://api.github.com/users/weiss/repos', 'events_url': 'https://api.github.com/users/weiss/events{/privacy}', 'received_events_url': 'https://api.github.com/users/weiss/received_events', 'type': 'User', 'site_admin': False}]",,5,2020-04-17T02:58:03Z,2020-04-25T08:44:15Z,2020-04-25T08:44:04Z,NONE,,,"HI Guys,
I have asked this before in this [issue](https://github.com/processone/ejabberd/issues/3225) and also read the [old FAQ](https://www.ejabberd.im/faq/tcp/) . But still the problem remains the same .
resend_on_timeout
1. true: If true, the message will be send again when receiver resume session after becoming online again. But even disconnected receiver is online on server for a short while, server send s the message and deletes it.
2. Since message once send by server gets deleted. If receiver told server that it has not received some messages (Stream resumption or restart) from where server will bring them back.
3. If senders sends back when the error bounce back received. The message order will get changed.
4. if_offline: this will work only when all client of a user are offline. So it won't work in this case.
The functionality i offer is (considering no other stanza type except message is not transferring between clients ) :
1. Every Message that come to server should be sent to storage and must be deleted only when server gets the ack for that stanza.
2. when user becomes online again, the stored messages which were not received by the receiver will be sent back to the receiver and deleted when acknowledgment received. (They may or may not be treated as the part of the new stream).
Also if bug points can have a solution in the existing architecture. I will gratefull to know them point wise .
Thank you,
",
485,https://api.github.com/repos/processone/ejabberd/issues/3227,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3227/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3227/comments,https://api.github.com/repos/processone/ejabberd/issues/3227/events,https://github.com/processone/ejabberd/issues/3227,601640746,MDU6SXNzdWU2MDE2NDA3NDY=,3227,Message Lost with every option of stream management resend on time out.,"{'login': 'mailtosagar', 'id': 16096109, 'node_id': 'MDQ6VXNlcjE2MDk2MTA5', 'avatar_url': 'https://avatars1.githubusercontent.com/u/16096109?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mailtosagar', 'html_url': 'https://github.com/mailtosagar', 'followers_url': 'https://api.github.com/users/mailtosagar/followers', 'following_url': 'https://api.github.com/users/mailtosagar/following{/other_user}', 'gists_url': 'https://api.github.com/users/mailtosagar/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mailtosagar/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mailtosagar/subscriptions', 'organizations_url': 'https://api.github.com/users/mailtosagar/orgs', 'repos_url': 'https://api.github.com/users/mailtosagar/repos', 'events_url': 'https://api.github.com/users/mailtosagar/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mailtosagar/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",closed,False,,[],,3,2020-04-17T01:36:21Z,2020-04-19T13:50:51Z,2020-04-17T01:36:28Z,NONE,,,"**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
**Describe the solution you'd like**
A clear and concise description of what you want to happen.
**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.
**Additional context**
Add any other context or screenshots about the feature request here.
",
486,https://api.github.com/repos/processone/ejabberd/issues/3226,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3226/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3226/comments,https://api.github.com/repos/processone/ejabberd/issues/3226/events,https://github.com/processone/ejabberd/issues/3226,601123334,MDU6SXNzdWU2MDExMjMzMzQ=,3226,Database files and logs are not written to the directories with spaces in directory name,"{'login': 'NataliaDobryaeva', 'id': 63799911, 'node_id': 'MDQ6VXNlcjYzNzk5OTEx', 'avatar_url': 'https://avatars2.githubusercontent.com/u/63799911?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/NataliaDobryaeva', 'html_url': 'https://github.com/NataliaDobryaeva', 'followers_url': 'https://api.github.com/users/NataliaDobryaeva/followers', 'following_url': 'https://api.github.com/users/NataliaDobryaeva/following{/other_user}', 'gists_url': 'https://api.github.com/users/NataliaDobryaeva/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/NataliaDobryaeva/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/NataliaDobryaeva/subscriptions', 'organizations_url': 'https://api.github.com/users/NataliaDobryaeva/orgs', 'repos_url': 'https://api.github.com/users/NataliaDobryaeva/repos', 'events_url': 'https://api.github.com/users/NataliaDobryaeva/events{/privacy}', 'received_events_url': 'https://api.github.com/users/NataliaDobryaeva/received_events', 'type': 'User', 'site_admin': False}","[{'id': 231569227, 'node_id': 'MDU6TGFiZWwyMzE1NjkyMjc=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Installers', 'name': 'Component:Installers', 'color': 'fef2c0', 'default': False, 'description': None}, {'id': 352233730, 'node_id': 'MDU6TGFiZWwzNTIyMzM3MzA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Question', 'name': 'Kind:Question', 'color': 'fef2c0', 'default': False, 'description': None}]",open,False,,[],,4,2020-04-16T14:47:19Z,2020-04-30T12:16:58Z,,NONE,,,"## Environment
- ejabberd version: 20.3
- Erlang version: Erlang/OTP 21
- OS: Windows Server
- Installed from: official binary installer
## Bug description
I've modified ejabberctl administration script and changed HOME_DIR variable to point to the same directory as ROOT_DIR (I'd like to store all ejabberd files in one directory):
```
# define default environment variables
ROOT_DIR=""D:\My Programs\eJabberd""
export PATH=""$ROOT_DIR/bin:$PATH""
HOME_DIR=""D:\My Programs\eJabberd""
export HOME=""$HOME_DIR""
```
Note that this directory contains a""space"" in directory name. And after setting such directory as a HOME ejabberd stops writing logs (D:\My Programs\eJabberd\logs is empty) and does not create any database files (directory ""D:\My Programs\eJabberd\database\ejabberd@MYSERVER"" is created, but it's empty). Even so, command ""ejabberdctl status"" shows correct paths for database and logs in the output:
```
...
Optional parameters when starting an ejabberd node:
--config-dir dir Config ejabberd: D:/My Programs/eJabberd/conf
--config file Config ejabberd: D:/My Programs/eJabberd/conf/ejabberd.yml
--ctl-config file Config ejabberdctl: D:/My Programs/eJabberd/conf/ejabberdctl.cfg
--logs dir Directory for logs: D:/My Programs/eJabberd/logs
--spool dir Database spool dir: D:/My Programs/eJabberd/database/ejabberd@MYSERVER
--node nodename ejabberd node name: ejabberd@MYSERVER
```
If I change HOME_DIR variable to the directory without spaces, for example ""D:\MyPrograms\eJabberd"" everything works correct.
Could you please advise how to fix it? (I've used ejabberd 15.07 before and such directories were processed correctly there).
",
487,https://api.github.com/repos/processone/ejabberd/issues/3225,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3225/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3225/comments,https://api.github.com/repos/processone/ejabberd/issues/3225/events,https://github.com/processone/ejabberd/issues/3225,600919560,MDU6SXNzdWU2MDA5MTk1NjA=,3225,Message lost in mobile chat application.,"{'login': 'mailtosagar', 'id': 16096109, 'node_id': 'MDQ6VXNlcjE2MDk2MTA5', 'avatar_url': 'https://avatars1.githubusercontent.com/u/16096109?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mailtosagar', 'html_url': 'https://github.com/mailtosagar', 'followers_url': 'https://api.github.com/users/mailtosagar/followers', 'following_url': 'https://api.github.com/users/mailtosagar/following{/other_user}', 'gists_url': 'https://api.github.com/users/mailtosagar/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mailtosagar/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mailtosagar/subscriptions', 'organizations_url': 'https://api.github.com/users/mailtosagar/orgs', 'repos_url': 'https://api.github.com/users/mailtosagar/repos', 'events_url': 'https://api.github.com/users/mailtosagar/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mailtosagar/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",closed,False,,[],,7,2020-04-16T10:14:41Z,2020-04-17T02:58:34Z,2020-04-16T14:39:32Z,NONE,,,"Hi Guys,
I have some issues regarding message lost on dead connections.
1. A sends B a message
2. B has gone offline, but still online on the server.
Consider these points
1. In mod_stream_mgmt
1. if resend_on_timeout : true, then no error bounce back message will be sent until the user session does not time out. A will get the error message after stream resumption timeout.
2. If resend_on_timeout : false. then error bounce back will be generated and send to the sender. But in the meanwhile before receiving the error stanza the sender connection is cut and it is online on server, then this message also lost .
3. resend_on_timeout : if_offline then it will not send the message error bounch back to the sender. It will store the message to archieves if no resource is online. But the main problem here is it remains online after connection intrupted by the client(net issues) .
why??? suggestions how the ensure that the message do not lost in any case.
thanks,
",
488,https://api.github.com/repos/processone/ejabberd/issues/3224,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3224/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3224/comments,https://api.github.com/repos/processone/ejabberd/issues/3224/events,https://github.com/processone/ejabberd/issues/3224,600725205,MDU6SXNzdWU2MDA3MjUyMDU=,3224,ejabberdctl start permission denied ,"{'login': 'Danissss', 'id': 21318412, 'node_id': 'MDQ6VXNlcjIxMzE4NDEy', 'avatar_url': 'https://avatars0.githubusercontent.com/u/21318412?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Danissss', 'html_url': 'https://github.com/Danissss', 'followers_url': 'https://api.github.com/users/Danissss/followers', 'following_url': 'https://api.github.com/users/Danissss/following{/other_user}', 'gists_url': 'https://api.github.com/users/Danissss/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Danissss/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Danissss/subscriptions', 'organizations_url': 'https://api.github.com/users/Danissss/orgs', 'repos_url': 'https://api.github.com/users/Danissss/repos', 'events_url': 'https://api.github.com/users/Danissss/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Danissss/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-04-16T03:43:09Z,2020-04-16T16:19:41Z,2020-04-16T16:19:41Z,NONE,,,"Hi,
I install the ejabberdctl from the source.
```
./autogen.sh
./configure
make
sudo make install
```
When I execute `ejabberdctl start`, I got `bash: /usr/local/sbin/ejabberdctl: Permission denied`
And then it's not run-able with root.
I checked the code
```bash
...
# check the proper system user is used
case $(id -un) in
""$INSTALLUSER"")
EXEC_CMD=""as_current_user""
;;
root)
EXEC_CMD=""as_current_user""
if [ -n ""$INSTALLUSER"" ] ; then
EXEC_CMD=""as_install_user""
else
EXEC_CMD=""as_current_user""
echo ""WARNING: It is not recommended to run ejabberd as root"" >&2
fi
;;
*)
echo ""random user""
if [ -n ""$INSTALLUSER"" ] ; then
...
```
Could I ask what is $INSTALLUSER? Should I create a new linux user for running ejabberd?
Thanks!
PS.
Ubuntu: 18.04
ejabberd: latest from github",
489,https://api.github.com/repos/processone/ejabberd/issues/3223,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3223/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3223/comments,https://api.github.com/repos/processone/ejabberd/issues/3223/events,https://github.com/processone/ejabberd/issues/3223,600645807,MDU6SXNzdWU2MDA2NDU4MDc=,3223,Support TLS-SRP,"{'login': 'SoniEx2', 'id': 1779619, 'node_id': 'MDQ6VXNlcjE3Nzk2MTk=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1779619?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/SoniEx2', 'html_url': 'https://github.com/SoniEx2', 'followers_url': 'https://api.github.com/users/SoniEx2/followers', 'following_url': 'https://api.github.com/users/SoniEx2/following{/other_user}', 'gists_url': 'https://api.github.com/users/SoniEx2/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/SoniEx2/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/SoniEx2/subscriptions', 'organizations_url': 'https://api.github.com/users/SoniEx2/orgs', 'repos_url': 'https://api.github.com/users/SoniEx2/repos', 'events_url': 'https://api.github.com/users/SoniEx2/events{/privacy}', 'received_events_url': 'https://api.github.com/users/SoniEx2/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",open,False,,[],,0,2020-04-15T23:24:06Z,2020-04-15T23:24:06Z,,NONE,,,"**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
Sending passwords to a server is always fun because:
- the server could be compromised
- the server could be mitm'd
- the server could be hijacked (e.g. DNS poisoning, etc)
- the server could be the wrong server (e.g. phishing)
- the server could be logging passwords in plaintext (so common that even twitter had to nuke sessions and force password resets over this)
**Describe the solution you'd like**
A clear and concise description of what you want to happen.
TLS-SRP mitigates some of those problems:
- it encourages the use of a strongly-hashed password (you can technically store the password in plaintext in the DB but please don't)
- it authenticates the server to the client (prevents mitm, hijack, phishing)
- it doesn't provide a password to the server (prevents logging, phishing)
It goes through SASL EXTERNAL, obviously.
**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.
N/A
**Additional context**
Add any other context or screenshots about the feature request here.
N/A",
490,https://api.github.com/repos/processone/ejabberd/issues/3222,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3222/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3222/comments,https://api.github.com/repos/processone/ejabberd/issues/3222/events,https://github.com/processone/ejabberd/issues/3222,600298594,MDU6SXNzdWU2MDAyOTg1OTQ=,3222,Subscriber should not send message to moderated room,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179040838, 'node_id': 'MDU6TGFiZWwxNzkwNDA4Mzg=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:MUC', 'name': 'Component:MUC', 'color': 'fad8c7', 'default': False, 'description': None}]",closed,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/42', 'html_url': 'https://github.com/processone/ejabberd/milestone/42', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/42/labels', 'id': 5706346, 'node_id': 'MDk6TWlsZXN0b25lNTcwNjM0Ng==', 'number': 42, 'title': 'ejabberd 20.07', 'description': 'https://www.process-one.net/blog/ejabberd-20-07/', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 20, 'state': 'closed', 'created_at': '2020-07-28T07:56:43Z', 'updated_at': '2020-07-31T14:08:13Z', 'due_on': '2020-07-30T07:00:00Z', 'closed_at': '2020-07-31T14:05:45Z'}",0,2020-04-15T13:29:04Z,2020-07-31T14:04:07Z,2020-06-24T11:17:54Z,MEMBER,,,"Right now, a MUC room can be configured to be _moderated_, which means that an occupant needs to be _participant_ to send messages to the room. https://xmpp.org/extensions/xep-0045.html#table-3
There's an option to ""Default users as participants"". This is useful in a moderated room: when a new user joins, he gets voice automatically. Later, if he behaves incorrectly, an admin can revoke voice to him by degrading from _participant_ to _visitor_.
However, if _subscriptions_ are allowed in the room, using MucSub, a user can bypass all this: if he subscribes, he can send messages to the room even when the room is moderated and doesn't make users participants by default.
This is the original behaviour:
```
None Subs Visi Part Mode
-mod -par no yes yes yes yes
-mod par no yes yes yes yes
mod -par no yes! no yes yes
mod par no yes yes* yes yes
* If visitor joins the room after the ""Make occupants participants"" is enabled
where
mod: room is moderated
par: room makes visitors as participants by default
Subs: Subscribed
Visi: Visitor
Part: Participant
Mode: Moderator
```
I propose that in relation to sending messages to the room, _subscribers_ behave like _visitors_. There is only one change in the behaviour:
```
None Subs Visi Part Mode
-mod -par no yes yes yes yes
-mod par no yes yes yes yes
mod -par no no! no yes yes
mod par no yes yes* yes yes
```
Proposed patch:
```diff
diff --git a/src/mod_muc_room.erl b/src/mod_muc_room.erl
index 03faa6a06..f7ebf7f27 100644
--- a/src/mod_muc_room.erl
+++ b/src/mod_muc_room.erl
@@ -935,7 +935,8 @@ process_groupchat_message(#message{from = From, lang = Lang} = Packet, StateData
of
true ->
{FromNick, Role} = get_participant_data(From, StateData),
- if (Role == moderator) or (Role == participant) or IsSubscriber or
+ if (Role == moderator) or (Role == participant) or
+ (IsSubscriber andalso ((StateData#state.config)#config.members_by_default == true)) or
((StateData#state.config)#config.moderated == false) ->
Subject = check_subject(Packet),
{NewStateData1, IsAllowed} = case Subject of
```
",
491,https://api.github.com/repos/processone/ejabberd/issues/3221,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3221/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3221/comments,https://api.github.com/repos/processone/ejabberd/issues/3221/events,https://github.com/processone/ejabberd/issues/3221,600261993,MDU6SXNzdWU2MDAyNjE5OTM=,3221,Android Client not receiving server pings while Web client is,"{'login': 'mailtosagar', 'id': 16096109, 'node_id': 'MDQ6VXNlcjE2MDk2MTA5', 'avatar_url': 'https://avatars1.githubusercontent.com/u/16096109?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mailtosagar', 'html_url': 'https://github.com/mailtosagar', 'followers_url': 'https://api.github.com/users/mailtosagar/followers', 'following_url': 'https://api.github.com/users/mailtosagar/following{/other_user}', 'gists_url': 'https://api.github.com/users/mailtosagar/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mailtosagar/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mailtosagar/subscriptions', 'organizations_url': 'https://api.github.com/users/mailtosagar/orgs', 'repos_url': 'https://api.github.com/users/mailtosagar/repos', 'events_url': 'https://api.github.com/users/mailtosagar/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mailtosagar/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,4,2020-04-15T12:31:55Z,2020-04-15T16:00:15Z,2020-04-15T16:00:15Z,NONE,,,"Hi Guys,
I have two types of client
1. WebApp : Strophe
2. Android : Smack
These are my Ejabberd Configuration
```
mod_ping:
send_pings: true
ping_interval: 10
ping_ack_timeout: 5
timeout_action: kill
```
In accordance to documentation this conf should regularly(every 10 s) send pings to all connected client . and kill the connection if ping response not received from client within 5 sec.
WebApp is receiving pings from the server but Android App it is not
here are some logs
WebApp logs:
```
```
Android
```
SENT (0):
D/SMACK: SENT (0):
D/SMACK: RECV (0):
D/SMACK: RECV (0):
D/SMACK: SENT (0):
D/SMACK: SENT (0):
D/SMACK: RECV (0):
D/SMACK: SENT (0):
D/SMACK: SENT (0):
D/SMACK: RECV (0):
D/SMACK: SENT (0):
D/SMACK: SENT (0):
D/SMACK: RECV (0):
D/SMACK: SENT (0):
D/SMACK: SENT (0):
D/SMACK: RECV (0):
D/SMACK: SENT (0):
D/SMACK: SENT (0):
D/SMACK: RECV (0):
D/SMACK: SENT (0):
D/SMACK: SENT (0):
D/SMACK: RECV (0):
D/SMACK: SENT (0):
D/SMACK: SENT (0):
D/SMACK: RECV (0):
D/SMACK: SENT (0):
D/SMACK: SENT (0):
D/SMACK: RECV (0):
D/SMACK: SENT (0):
D/SMACK: SENT (0):
D/SMACK: RECV (0):
D/SMACK: SENT (0):
D/SMACK: SENT (0):
D/SMACK: RECV (0):
D/SMACK: SENT (0):
```
Earlier server pings was received by both but android client suddenly stops receiving it and never recovered .
Please Help!! ",
492,https://api.github.com/repos/processone/ejabberd/issues/3220,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3220/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3220/comments,https://api.github.com/repos/processone/ejabberd/issues/3220/events,https://github.com/processone/ejabberd/issues/3220,598462169,MDU6SXNzdWU1OTg0NjIxNjk=,3220,s2s configuration,"{'login': 'antoniogamiz', 'id': 22995015, 'node_id': 'MDQ6VXNlcjIyOTk1MDE1', 'avatar_url': 'https://avatars2.githubusercontent.com/u/22995015?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/antoniogamiz', 'html_url': 'https://github.com/antoniogamiz', 'followers_url': 'https://api.github.com/users/antoniogamiz/followers', 'following_url': 'https://api.github.com/users/antoniogamiz/following{/other_user}', 'gists_url': 'https://api.github.com/users/antoniogamiz/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/antoniogamiz/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/antoniogamiz/subscriptions', 'organizations_url': 'https://api.github.com/users/antoniogamiz/orgs', 'repos_url': 'https://api.github.com/users/antoniogamiz/repos', 'events_url': 'https://api.github.com/users/antoniogamiz/events{/privacy}', 'received_events_url': 'https://api.github.com/users/antoniogamiz/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,6,2020-04-12T11:11:35Z,2020-04-12T16:22:00Z,2020-04-12T12:16:36Z,NONE,,,"Hi, I have spent all morning trying to configure a s2s connection between my two ejabberd servers. I do not know how to configure s2s certificates, I have tried a lot of ways but I keep getting the same error:
~~~
Eshell V10.3.4 (abort with ^G)
(ejabberd@localhost)1> 13:08:22.843 [notice] Changed loghwm of /home/antonio/ejabberd-20.03/logs/error.log to 100
13:08:22.843 [notice] Changed loghwm of /home/antonio/ejabberd-20.03/logs/ejabberd.log to 100
13:08:22.932 [info] Loading configuration from /home/antonio/ejabberd-20.03/conf/ejabberd.yml
13:08:22.952 [warning] ACME directory URL https://acme-v01.api.letsencrypt.org defined in option acme->ca_url is deprecated and was automatically replaced with https://acme-v02.api.letsencrypt.org/directory. Please adjust your configuration file accordingly. Hint: run `ejabberdctl dump-config` command to view current configuration as it is seen by ejabberd.
13:08:22.952 [warning] Option 'log_rotate_date' is deprecated and has no effect anymore. Please remove it from the configuration.
13:08:22.952 [warning] Option 'log_rate_limit' is deprecated and has no effect anymore. Please remove it from the configuration.
13:08:23.163 [info] Configuration loaded successfully
13:08:23.364 [info] Loading modules for gamizdelgado.hopto.org
13:08:23.377 [warning] Mnesia backend for mod_mam is not recommended: it's limited to 2GB and often gets corrupted when reaching this limit. SQL backend is recommended. Namely, for small servers SQLite is a preferred choice because it's very easy to configure.
13:08:23.516 [info] Building MQTT cache for gamizdelgado.hopto.org, this may take a while
13:08:23.551 [info] Waiting for Mnesia synchronization to complete
13:08:23.592 [warning] Invalid certificate in /home/antonio/ejabberd-20.03/conf/server.pem: at line 53: self-signed certificate
13:08:23.710 [warning] No certificate found matching gamizdelgado.hopto.org
13:08:23.710 [warning] No certificate found matching conference.gamizdelgado.hopto.org
13:08:23.710 [warning] No certificate found matching proxy.gamizdelgado.hopto.org
13:08:23.710 [warning] No certificate found matching upload.gamizdelgado.hopto.org
13:08:23.710 [warning] No certificate found matching pubsub.gamizdelgado.hopto.org
13:08:23.710 [info] ejabberd 20.03 is started in the node ejabberd@localhost in 1.00s
13:08:23.710 [warning] No HTTP listeners for ACME challenges are configured, automatic certificate requests are aborted. Hint: configure the listener and restart/reload ejabberd. Or set acme->auto option to `false` to suppress this warning.
13:08:23.710 [info] Start accepting TCP connections at [::]:1883 for mod_mqtt
13:08:23.710 [info] Start accepting TCP connections at 127.0.1.1:7777 for mod_proxy65_stream
13:08:23.710 [info] Start accepting TCP connections at [::]:5222 for ejabberd_c2s
13:08:23.710 [info] Start accepting TCP connections at [::]:5269 for ejabberd_s2s_in
13:08:23.710 [info] Start accepting TLS connections at [::]:5443 for ejabberd_http
13:08:23.710 [info] Start accepting TCP connections at [::]:5280 for ejabberd_http
13:08:26.320 [info] (<0.550.0>) Accepted connection [::ffff:46.222.174.250]:62362 -> [::ffff:192.168.0.240]:5222
13:08:27.397 [info] (tls|<0.550.0>) Accepted c2s SCRAM-SHA-1 authentication for josemi@gamizdelgado.hopto.org by mnesia backend from ::ffff:46.222.174.250
13:08:27.633 [info] Cannot resume session for josemi@gamizdelgado.hopto.org: Previous session not found
13:08:27.736 [info] (tls|<0.550.0>) Opened c2s session for josemi@gamizdelgado.hopto.org/XMPPJabberClient.1b_b
13:08:43.914 [info] Outbound s2s connection started: gamizdelgado.hopto.org -> ruizsanchez.hopto.org
13:08:45.427 [warning] Failed to establish outbound s2s connection gamizdelgado.hopto.org -> ruizsanchez.hopto.org: Peer certificate rejected: self signed certificate; bouncing for 69 second
~~~
Any idea how to solve it?",
493,https://api.github.com/repos/processone/ejabberd/issues/3219,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3219/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3219/comments,https://api.github.com/repos/processone/ejabberd/issues/3219/events,https://github.com/processone/ejabberd/issues/3219,598097535,MDU6SXNzdWU1OTgwOTc1MzU=,3219,Server returned unsecure transport in mode_http_upload,"{'login': 'sandeepjangir', 'id': 14825242, 'node_id': 'MDQ6VXNlcjE0ODI1MjQy', 'avatar_url': 'https://avatars0.githubusercontent.com/u/14825242?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/sandeepjangir', 'html_url': 'https://github.com/sandeepjangir', 'followers_url': 'https://api.github.com/users/sandeepjangir/followers', 'following_url': 'https://api.github.com/users/sandeepjangir/following{/other_user}', 'gists_url': 'https://api.github.com/users/sandeepjangir/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/sandeepjangir/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/sandeepjangir/subscriptions', 'organizations_url': 'https://api.github.com/users/sandeepjangir/orgs', 'repos_url': 'https://api.github.com/users/sandeepjangir/repos', 'events_url': 'https://api.github.com/users/sandeepjangir/events{/privacy}', 'received_events_url': 'https://api.github.com/users/sandeepjangir/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,8,2020-04-10T21:13:46Z,2020-04-11T15:33:37Z,2020-04-11T14:24:54Z,NONE,,,"## Environment
- ejabberd version: 20.03
- Erlang version: `10.3.4`
- OS: Linux (Debian)
- Installed from: official binary installer
```yaml
listen:
-
port: 5222
ip: ""::""
module: ejabberd_c2s
max_stanza_size: 262144
shaper: c2s_shaper
access: c2s
starttls_required: true
-
port: 5443
ip: ""::""
module: ejabberd_http
# tls: true
request_handlers:
""/api"": mod_http_api
""/bosh"": mod_bosh
""/upload"": mod_http_upload
""/ws"": ejabberd_http_ws
mod_http_upload:
name: ""HTTP File Uploading""
put_url: ""http://@HOST@:5443/upload""
access: http_upload_acl
thumbnail: false
docroot: ""/opt/ejabberd/uploads""
max_size: infinity
custom_headers:
""Access-Control-Allow-Origin"": ""*""
""Access-Control-Allow-Methods"": ""GET, HEAD, POST, PUT, OPTIONS, DELETE""
""Access-Control-Allow-Headers"": ""Content-Type, Origin, X-Requested-With""
mod_http_upload_quota:
max_days: 100
access_soft_quota:
- 1000: all # MiB
access_hard_quota:
- 1100: all # MiB
...
```
## Errors from error.log/crash.log
stuck here
`19:25:31.640 [info] (tls|<0.517.0>) Send XML on stream = <<"""">>
`
## Issue description
When I am trying to upload any media from client like Gajim the info log stucks at single point without throwing any error and I cannot upload the media and receives the following error:
Note: I have checked the file permission and the the document directory is existing in the exact location what is mentioned in the config;
Thanks in advance
Sandeep Jangir",
494,https://api.github.com/repos/processone/ejabberd/issues/3218,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3218/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3218/comments,https://api.github.com/repos/processone/ejabberd/issues/3218/events,https://github.com/processone/ejabberd/pull/3218,597182073,MDExOlB1bGxSZXF1ZXN0NDAxMzQwNTc3,3218,Bump jiffy so it compiles on older GCC,"{'login': 'licaon-kter', 'id': 2282799, 'node_id': 'MDQ6VXNlcjIyODI3OTk=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2282799?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/licaon-kter', 'html_url': 'https://github.com/licaon-kter', 'followers_url': 'https://api.github.com/users/licaon-kter/followers', 'following_url': 'https://api.github.com/users/licaon-kter/following{/other_user}', 'gists_url': 'https://api.github.com/users/licaon-kter/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/licaon-kter/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/licaon-kter/subscriptions', 'organizations_url': 'https://api.github.com/users/licaon-kter/orgs', 'repos_url': 'https://api.github.com/users/licaon-kter/repos', 'events_url': 'https://api.github.com/users/licaon-kter/events{/privacy}', 'received_events_url': 'https://api.github.com/users/licaon-kter/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/41', 'html_url': 'https://github.com/processone/ejabberd/milestone/41', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/41/labels', 'id': 5368239, 'node_id': 'MDk6TWlsZXN0b25lNTM2ODIzOQ==', 'number': 41, 'title': 'ejabberd 20.04', 'description': 'https://www.process-one.net/blog/ejabberd-20-04/', 'creator': {'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 18, 'state': 'closed', 'created_at': '2020-04-30T16:07:38Z', 'updated_at': '2020-04-30T16:08:55Z', 'due_on': '2020-04-29T07:00:00Z', 'closed_at': '2020-04-30T16:08:55Z'}",2,2020-04-09T10:25:18Z,2020-04-30T16:08:10Z,2020-04-23T11:29:34Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3218', 'html_url': 'https://github.com/processone/ejabberd/pull/3218', 'diff_url': 'https://github.com/processone/ejabberd/pull/3218.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3218.patch'}","...like 4.4.7 used in RH/CentOS 6
FYI I didn't bump it in https://github.com/processone/ejabberd/blob/master/mix.lock since I don't know where that hash comes from exactly.",
495,https://api.github.com/repos/processone/ejabberd/issues/3217,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3217/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3217/comments,https://api.github.com/repos/processone/ejabberd/issues/3217/events,https://github.com/processone/ejabberd/issues/3217,596572971,MDU6SXNzdWU1OTY1NzI5NzE=,3217,SIP -> MD5 to SHA2,"{'login': 'Neustradamus', 'id': 104737, 'node_id': 'MDQ6VXNlcjEwNDczNw==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/104737?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Neustradamus', 'html_url': 'https://github.com/Neustradamus', 'followers_url': 'https://api.github.com/users/Neustradamus/followers', 'following_url': 'https://api.github.com/users/Neustradamus/following{/other_user}', 'gists_url': 'https://api.github.com/users/Neustradamus/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Neustradamus/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Neustradamus/subscriptions', 'organizations_url': 'https://api.github.com/users/Neustradamus/orgs', 'repos_url': 'https://api.github.com/users/Neustradamus/repos', 'events_url': 'https://api.github.com/users/Neustradamus/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Neustradamus/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,0,2020-04-08T13:21:01Z,2020-04-08T13:21:14Z,,NONE,,,"It is official!
SHA-256 + SHA-512/256 for SIP
February 2020:
- RFC8489: Session Traversal Utilities for NAT (STUN): https://tools.ietf.org/html/rfc8489
March 2020:
- RFC8760: The Session Initiation Protocol (SIP) Digest Access Authentication Scheme: https://tools.ietf.org/html/rfc8760
Linphone already good: http://www.linphone.org/technical-corner/liblinphone/features
Linked to a badly closed ticket :/
- https://github.com/processone/ejabberd/issues/2740",
496,https://api.github.com/repos/processone/ejabberd/issues/3216,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3216/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3216/comments,https://api.github.com/repos/processone/ejabberd/issues/3216/events,https://github.com/processone/ejabberd/issues/3216,596560012,MDU6SXNzdWU1OTY1NjAwMTI=,3216,Issue with multiple owner adding to muc room through matrix,"{'login': 'kpsbhuvi', 'id': 23560674, 'node_id': 'MDQ6VXNlcjIzNTYwNjc0', 'avatar_url': 'https://avatars2.githubusercontent.com/u/23560674?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/kpsbhuvi', 'html_url': 'https://github.com/kpsbhuvi', 'followers_url': 'https://api.github.com/users/kpsbhuvi/followers', 'following_url': 'https://api.github.com/users/kpsbhuvi/following{/other_user}', 'gists_url': 'https://api.github.com/users/kpsbhuvi/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/kpsbhuvi/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/kpsbhuvi/subscriptions', 'organizations_url': 'https://api.github.com/users/kpsbhuvi/orgs', 'repos_url': 'https://api.github.com/users/kpsbhuvi/repos', 'events_url': 'https://api.github.com/users/kpsbhuvi/events{/privacy}', 'received_events_url': 'https://api.github.com/users/kpsbhuvi/received_events', 'type': 'User', 'site_admin': False}","[{'id': 346842756, 'node_id': 'MDU6TGFiZWwzNDY4NDI3NTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Note:Cannot%20reproduce', 'name': 'Note:Cannot reproduce', 'color': 'c7def8', 'default': False, 'description': None}]",closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]",,12,2020-04-08T13:01:14Z,2020-06-24T11:31:32Z,2020-06-24T11:31:32Z,NONE,,,"## Environment
- ejabberd version: 18.09
- Erlang version: `erl +V`
- OS: Linux (Debian)
- Installed from: official deb/rpm
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
using default config
## Bug description
1. Room(room@conference.test.im) created with owner user1@test.im
2. Adding another owner (user2@test.im) with below iq, is failing with **""Changing role/affiliation is not allowed""**
```
```
3. Is there any config change required for muc_room/muc_room_admin modules, which allow me to add multiple owners?
",
497,https://api.github.com/repos/processone/ejabberd/issues/3215,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3215/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3215/comments,https://api.github.com/repos/processone/ejabberd/issues/3215/events,https://github.com/processone/ejabberd/issues/3215,596472806,MDU6SXNzdWU1OTY0NzI4MDY=,3215,Chatrooms disappear from web admin list during errors,"{'login': 'f055', 'id': 53429, 'node_id': 'MDQ6VXNlcjUzNDI5', 'avatar_url': 'https://avatars3.githubusercontent.com/u/53429?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/f055', 'html_url': 'https://github.com/f055', 'followers_url': 'https://api.github.com/users/f055/followers', 'following_url': 'https://api.github.com/users/f055/following{/other_user}', 'gists_url': 'https://api.github.com/users/f055/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/f055/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/f055/subscriptions', 'organizations_url': 'https://api.github.com/users/f055/orgs', 'repos_url': 'https://api.github.com/users/f055/repos', 'events_url': 'https://api.github.com/users/f055/events{/privacy}', 'received_events_url': 'https://api.github.com/users/f055/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179679118, 'node_id': 'MDU6TGFiZWwxNzk2NzkxMTg=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Admin%20Tools', 'name': 'Component:Admin Tools', 'color': 'f7c6c7', 'default': False, 'description': None}]",closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/41', 'html_url': 'https://github.com/processone/ejabberd/milestone/41', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/41/labels', 'id': 5368239, 'node_id': 'MDk6TWlsZXN0b25lNTM2ODIzOQ==', 'number': 41, 'title': 'ejabberd 20.04', 'description': 'https://www.process-one.net/blog/ejabberd-20-04/', 'creator': {'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 18, 'state': 'closed', 'created_at': '2020-04-30T16:07:38Z', 'updated_at': '2020-04-30T16:08:55Z', 'due_on': '2020-04-29T07:00:00Z', 'closed_at': '2020-04-30T16:08:55Z'}",1,2020-04-08T10:26:07Z,2020-04-30T16:08:10Z,2020-04-17T14:24:08Z,MEMBER,,,"## Environment
- ejabberd version: 20.03
- OS: Linux (Debian 10)
- Installed from: official deb
## Bug description
Scenario: using `ejabberdctl change_room_option` enable `logging true` on a chatroom, but don't load `mod_muc_log` in `ejabberd.yml`. When any user attempts to join this chatroom, it won't be possible and there will be errors in `error.log`. But, as tested with Siskin IM client, from the moment the user attempts to open this chatroom until he removes this chatroom from his contact list, that chatroom disappears from the web admin Chatrooms list.
",
498,https://api.github.com/repos/processone/ejabberd/issues/3214,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3214/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3214/comments,https://api.github.com/repos/processone/ejabberd/issues/3214/events,https://github.com/processone/ejabberd/issues/3214,596456938,MDU6SXNzdWU1OTY0NTY5Mzg=,3214,Rename opts->name to label in Shared Roster Groups,"{'login': 'f055', 'id': 53429, 'node_id': 'MDQ6VXNlcjUzNDI5', 'avatar_url': 'https://avatars3.githubusercontent.com/u/53429?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/f055', 'html_url': 'https://github.com/f055', 'followers_url': 'https://api.github.com/users/f055/followers', 'following_url': 'https://api.github.com/users/f055/following{/other_user}', 'gists_url': 'https://api.github.com/users/f055/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/f055/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/f055/subscriptions', 'organizations_url': 'https://api.github.com/users/f055/orgs', 'repos_url': 'https://api.github.com/users/f055/repos', 'events_url': 'https://api.github.com/users/f055/events{/privacy}', 'received_events_url': 'https://api.github.com/users/f055/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/41', 'html_url': 'https://github.com/processone/ejabberd/milestone/41', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/41/labels', 'id': 5368239, 'node_id': 'MDk6TWlsZXN0b25lNTM2ODIzOQ==', 'number': 41, 'title': 'ejabberd 20.04', 'description': 'https://www.process-one.net/blog/ejabberd-20-04/', 'creator': {'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 18, 'state': 'closed', 'created_at': '2020-04-30T16:07:38Z', 'updated_at': '2020-04-30T16:08:55Z', 'due_on': '2020-04-29T07:00:00Z', 'closed_at': '2020-04-30T16:08:55Z'}",2,2020-04-08T09:59:12Z,2020-04-30T16:08:10Z,2020-04-14T13:48:25Z,MEMBER,,,"## Environment
- ejabberd version: 20.03
- OS: Linux (Debian 10)
- Installed from: official deb
## Bug description
1. Shared Roster Group has two names: one that is given on creation next to ""Add New"" button, another in its details at ""Name"" input. However, for admin purposes the real name is the first one, and the second one is more like a label displayed in people's rosters. I propose changing the text in group details from ""Name"" to ""Label"". It is significant because of issue 2. below.
2. After creating a new Shared Roster Group, typing for example ""Test"" next to ""Add New"", and then editing its details to give it a ""Name"" and ""Members"", it does not show up in people's rosters upon them logging in. It will be shown if and _only_ if you type its admin name (""Test"") in the ""Displayed Groups"" field, which makes sense but is not described anywhere, so is super confusing.
3. We really need to add helpful texts in web admin...
",
499,https://api.github.com/repos/processone/ejabberd/issues/3213,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3213/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3213/comments,https://api.github.com/repos/processone/ejabberd/issues/3213/events,https://github.com/processone/ejabberd/issues/3213,596451722,MDU6SXNzdWU1OTY0NTE3MjI=,3213,No automatic serviced support on Debian,"{'login': 'f055', 'id': 53429, 'node_id': 'MDQ6VXNlcjUzNDI5', 'avatar_url': 'https://avatars3.githubusercontent.com/u/53429?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/f055', 'html_url': 'https://github.com/f055', 'followers_url': 'https://api.github.com/users/f055/followers', 'following_url': 'https://api.github.com/users/f055/following{/other_user}', 'gists_url': 'https://api.github.com/users/f055/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/f055/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/f055/subscriptions', 'organizations_url': 'https://api.github.com/users/f055/orgs', 'repos_url': 'https://api.github.com/users/f055/repos', 'events_url': 'https://api.github.com/users/f055/events{/privacy}', 'received_events_url': 'https://api.github.com/users/f055/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,0,2020-04-08T09:50:50Z,2020-04-08T09:50:50Z,,MEMBER,,,"## Environment
- ejabberd version: 20.03
- OS: Linux (Debian 10)
- Installed from: official deb
## Bug description
After installing ejabberd 20.03 from the official .deb file using `apt install`, the only way to start it is via `/etc/init.d/ejabberd start` while on Debian 10 one would also expect `service ejabberd start` to be available out-of-the-box.
",
500,https://api.github.com/repos/processone/ejabberd/issues/3212,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3212/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3212/comments,https://api.github.com/repos/processone/ejabberd/issues/3212/events,https://github.com/processone/ejabberd/issues/3212,596449506,MDU6SXNzdWU1OTY0NDk1MDY=,3212,Errors in links in web admin,"{'login': 'f055', 'id': 53429, 'node_id': 'MDQ6VXNlcjUzNDI5', 'avatar_url': 'https://avatars3.githubusercontent.com/u/53429?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/f055', 'html_url': 'https://github.com/f055', 'followers_url': 'https://api.github.com/users/f055/followers', 'following_url': 'https://api.github.com/users/f055/following{/other_user}', 'gists_url': 'https://api.github.com/users/f055/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/f055/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/f055/subscriptions', 'organizations_url': 'https://api.github.com/users/f055/orgs', 'repos_url': 'https://api.github.com/users/f055/repos', 'events_url': 'https://api.github.com/users/f055/events{/privacy}', 'received_events_url': 'https://api.github.com/users/f055/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/41', 'html_url': 'https://github.com/processone/ejabberd/milestone/41', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/41/labels', 'id': 5368239, 'node_id': 'MDk6TWlsZXN0b25lNTM2ODIzOQ==', 'number': 41, 'title': 'ejabberd 20.04', 'description': 'https://www.process-one.net/blog/ejabberd-20-04/', 'creator': {'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 18, 'state': 'closed', 'created_at': '2020-04-30T16:07:38Z', 'updated_at': '2020-04-30T16:08:55Z', 'due_on': '2020-04-29T07:00:00Z', 'closed_at': '2020-04-30T16:08:55Z'}",6,2020-04-08T09:47:12Z,2020-04-30T16:08:09Z,2020-04-17T10:24:39Z,MEMBER,,,"## Environment
- ejabberd version: 20.03
- OS: Linux (Debian 10)
- Installed from: official deb
## Bug description
Links in the main content area under `/admin/server/[hostname]/` have errors:
- left side menu links contain double slashes //
```
https://example.net/admin//server/[hostname]/users/
```
- main content links are missing the `/server/[hostname]` part and lead to *Not Found*
```
https://example.net/admin/users/
```",
501,https://api.github.com/repos/processone/ejabberd/issues/3211,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3211/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3211/comments,https://api.github.com/repos/processone/ejabberd/issues/3211/events,https://github.com/processone/ejabberd/issues/3211,595419784,MDU6SXNzdWU1OTU0MTk3ODQ=,3211,XEP-0423: XMPP Compliance Suites 2020,"{'login': 'Neustradamus', 'id': 104737, 'node_id': 'MDQ6VXNlcjEwNDczNw==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/104737?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Neustradamus', 'html_url': 'https://github.com/Neustradamus', 'followers_url': 'https://api.github.com/users/Neustradamus/followers', 'following_url': 'https://api.github.com/users/Neustradamus/following{/other_user}', 'gists_url': 'https://api.github.com/users/Neustradamus/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Neustradamus/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Neustradamus/subscriptions', 'organizations_url': 'https://api.github.com/users/Neustradamus/orgs', 'repos_url': 'https://api.github.com/users/Neustradamus/repos', 'events_url': 'https://api.github.com/users/Neustradamus/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Neustradamus/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,0,2020-04-06T20:52:05Z,2020-04-06T20:52:05Z,,NONE,,,"I see that there are a lot of missing RFCs and XEPs missing on https://www.process-one.net/en/ejabberd/protocols/, I see only:
- RFC-3920: XMPP: Core
- RFC-3921: XMPP: Instant Messaging and Presence
- RFC-6120: XMPP: Core
- RFC-6121: XMPP: Instant Messaging and Presence
- RFC-6122: XMPP: Address Format
- XEP-0212: XMPP Basic Server 2008
- XEP-0216: XMPP Intermediate Server 2008
- XEP-0243: XMPP Server Compliance 2009
- XEP-0270: XMPP Compliance Suites 2010
- XEP-0302: XMPP Compliance Suites 2012
Please add support of https://xmpp.org/extensions/xep-0423.html
Which replace:
- XEP-0412: XMPP Compliance Suites 2019: https://xmpp.org/extensions/xep-0412.html
- XEP-0387: XMPP Compliance Suites 2018: https://xmpp.org/extensions/xep-0387.html
- XEP-0375: XMPP Compliance Suites 2016: https://xmpp.org/extensions/xep-0375.html
- XEP-0302: XMPP Compliance Suites 2012: https://xmpp.org/extensions/xep-0302.html
- XEP-0270: XMPP Compliance Suites 2010: https://xmpp.org/extensions/xep-0270.html
- XEP-0243: XMPP Server Compliance 2009: https://xmpp.org/extensions/xep-0243.html
- XEP-0242: XMPP Client Compliance 2009: https://xmpp.org/extensions/xep-0242.html
- XEP-0216: XMPP Intermediate Server 2008: https://xmpp.org/extensions/xep-0216.html
- XEP-0212: XMPP Basic Server 2008: https://xmpp.org/extensions/xep-0212.html
- XEP-0211: XMPP Basic Client 2008: https://xmpp.org/extensions/xep-0211.html
- XEP-0073: Basic IM Protocol Suite: https://xmpp.org/extensions/xep-0073.html",
502,https://api.github.com/repos/processone/ejabberd/issues/3210,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3210/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3210/comments,https://api.github.com/repos/processone/ejabberd/issues/3210/events,https://github.com/processone/ejabberd/issues/3210,593629602,MDU6SXNzdWU1OTM2Mjk2MDI=,3210,Fetch Muc occupants from SQL,"{'login': 'axcl', 'id': 10355434, 'node_id': 'MDQ6VXNlcjEwMzU1NDM0', 'avatar_url': 'https://avatars2.githubusercontent.com/u/10355434?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/axcl', 'html_url': 'https://github.com/axcl', 'followers_url': 'https://api.github.com/users/axcl/followers', 'following_url': 'https://api.github.com/users/axcl/following{/other_user}', 'gists_url': 'https://api.github.com/users/axcl/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/axcl/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/axcl/subscriptions', 'organizations_url': 'https://api.github.com/users/axcl/orgs', 'repos_url': 'https://api.github.com/users/axcl/repos', 'events_url': 'https://api.github.com/users/axcl/events{/privacy}', 'received_events_url': 'https://api.github.com/users/axcl/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-04-03T20:42:14Z,2020-04-06T05:44:50Z,2020-04-06T05:44:49Z,NONE,,,"Hi,
I am wondering where occupants are stored of the server. And how can they be stored in sql or fetch from command line.
Actually i want to sort room list on basis of occupants and other factors too such as paid rooms.
Any pointers to how to start snd achieve this will be great",
503,https://api.github.com/repos/processone/ejabberd/issues/3209,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3209/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3209/comments,https://api.github.com/repos/processone/ejabberd/issues/3209/events,https://github.com/processone/ejabberd/issues/3209,592718656,MDU6SXNzdWU1OTI3MTg2NTY=,3209,Any reason to offer X-OAUTH2 for Anonymous login?,"{'login': 'licaon-kter', 'id': 2282799, 'node_id': 'MDQ6VXNlcjIyODI3OTk=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2282799?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/licaon-kter', 'html_url': 'https://github.com/licaon-kter', 'followers_url': 'https://api.github.com/users/licaon-kter/followers', 'following_url': 'https://api.github.com/users/licaon-kter/following{/other_user}', 'gists_url': 'https://api.github.com/users/licaon-kter/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/licaon-kter/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/licaon-kter/subscriptions', 'organizations_url': 'https://api.github.com/users/licaon-kter/orgs', 'repos_url': 'https://api.github.com/users/licaon-kter/repos', 'events_url': 'https://api.github.com/users/licaon-kter/events{/privacy}', 'received_events_url': 'https://api.github.com/users/licaon-kter/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/41', 'html_url': 'https://github.com/processone/ejabberd/milestone/41', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/41/labels', 'id': 5368239, 'node_id': 'MDk6TWlsZXN0b25lNTM2ODIzOQ==', 'number': 41, 'title': 'ejabberd 20.04', 'description': 'https://www.process-one.net/blog/ejabberd-20-04/', 'creator': {'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 18, 'state': 'closed', 'created_at': '2020-04-30T16:07:38Z', 'updated_at': '2020-04-30T16:08:55Z', 'due_on': '2020-04-29T07:00:00Z', 'closed_at': '2020-04-30T16:08:55Z'}",8,2020-04-02T15:25:28Z,2020-04-30T16:08:09Z,2020-04-27T18:03:53Z,CONTRIBUTOR,,,"Trying to get Jitsi going on arm64, and Java/nodejs compiled fine, but it can't auth, it's setup for anonymous logins but Jitsi asks for X-OAUTH2 since ejabberd [HEAD of yesterday](ccb47a67c45d465a315a883b806139173a0bd407) is actually offering it too for some reason.
I've followed https://blog.jabberhead.tk/2020/03/16/install-jitsi-meet-alongside-ejabberd/
So the WS messages seen in browser console are like this _(BOSH fails the same FYI)_
```
JITSI:
EJABBERD:
EJABBERD: ANONYMOUSPLAINX-OAUTH2
JITSI: AAB1bmRlZmluZWQ=
EJABBERD: Invalid token
EJABBERD: Idle connection
```
But...my ejabberd config has:
```
host_config:
""mydomain.tld"":
auth_method: sql
auth_password_format: scram
""jitsi.mydomain.tld"":
auth_method: anonymous
allow_multiple_connections: true
anonymous_protocol: both
```
Luckily @weiss told me how to globally disable this auth type that my server is not actually using since [there was no info in the docs](https://github.com/processone/docs.ejabberd.im/pull/86).",
504,https://api.github.com/repos/processone/ejabberd/issues/3208,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3208/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3208/comments,https://api.github.com/repos/processone/ejabberd/issues/3208/events,https://github.com/processone/ejabberd/issues/3208,592572110,MDU6SXNzdWU1OTI1NzIxMTA=,3208,Declining subscription request removes item from roster,"{'login': 'spectre1989', 'id': 6834467, 'node_id': 'MDQ6VXNlcjY4MzQ0Njc=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/6834467?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/spectre1989', 'html_url': 'https://github.com/spectre1989', 'followers_url': 'https://api.github.com/users/spectre1989/followers', 'following_url': 'https://api.github.com/users/spectre1989/following{/other_user}', 'gists_url': 'https://api.github.com/users/spectre1989/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/spectre1989/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/spectre1989/subscriptions', 'organizations_url': 'https://api.github.com/users/spectre1989/orgs', 'repos_url': 'https://api.github.com/users/spectre1989/repos', 'events_url': 'https://api.github.com/users/spectre1989/events{/privacy}', 'received_events_url': 'https://api.github.com/users/spectre1989/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,0,2020-04-02T11:51:53Z,2020-04-02T11:51:53Z,,NONE,,,"## Environment
- ejabberd version: 18.09
- Erlang version: `erl +V`
- OS: Linux (Debian)
- Installed from: source | distro package | official deb/rpm | official binary installer | other
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
loglevel: 4
...
```
## Errors from error.log/crash.log
No errors
## Bug description
- user1 subscribes to user2 (user2 is now in user1's roster)
- user1 unsubscribes (user2 still in roster with no subscription)
- user2 requests to subscribe to user1
- user1 receives sub request, but their roster item is not updated
- user1 declines request
- user1 refreshes roster, user2 is no longer there
Is this intended?
",
505,https://api.github.com/repos/processone/ejabberd/issues/3207,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3207/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3207/comments,https://api.github.com/repos/processone/ejabberd/issues/3207/events,https://github.com/processone/ejabberd/pull/3207,592439619,MDExOlB1bGxSZXF1ZXN0Mzk3NDIxNjMw,3207,Always show MucSub subscribers nicks (#3206),"{'login': 'snoopcatt', 'id': 2917322, 'node_id': 'MDQ6VXNlcjI5MTczMjI=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/2917322?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/snoopcatt', 'html_url': 'https://github.com/snoopcatt', 'followers_url': 'https://api.github.com/users/snoopcatt/followers', 'following_url': 'https://api.github.com/users/snoopcatt/following{/other_user}', 'gists_url': 'https://api.github.com/users/snoopcatt/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/snoopcatt/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/snoopcatt/subscriptions', 'organizations_url': 'https://api.github.com/users/snoopcatt/orgs', 'repos_url': 'https://api.github.com/users/snoopcatt/repos', 'events_url': 'https://api.github.com/users/snoopcatt/events{/privacy}', 'received_events_url': 'https://api.github.com/users/snoopcatt/received_events', 'type': 'User', 'site_admin': False}","[{'id': 1201869609, 'node_id': 'MDU6TGFiZWwxMjAxODY5NjA5', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/cla-missing', 'name': 'cla-missing', 'color': 'e11d21', 'default': False, 'description': 'Contributor needs to sign Contribution License Agreement'}]",closed,False,,[],,2,2020-04-02T08:09:49Z,2020-08-26T17:39:57Z,2020-08-26T17:39:57Z,NONE,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3207', 'html_url': 'https://github.com/processone/ejabberd/pull/3207', 'diff_url': 'https://github.com/processone/ejabberd/pull/3207.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3207.patch'}","Related to https://github.com/processone/ejabberd/issues/3206
Changes behaviour of: https://docs.ejabberd.im/developer/xmpp-clients-bots/extensions/muc-sub/#getting-list-of-subscribers-of-a-room
Always return subscriber nick in reply to get subscribers list, even if we have rights to see full JID.",
506,https://api.github.com/repos/processone/ejabberd/issues/3206,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3206/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3206/comments,https://api.github.com/repos/processone/ejabberd/issues/3206/events,https://github.com/processone/ejabberd/issues/3206,592433332,MDU6SXNzdWU1OTI0MzMzMzI=,3206,Show nick in MucSub,"{'login': 'snoopcatt', 'id': 2917322, 'node_id': 'MDQ6VXNlcjI5MTczMjI=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/2917322?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/snoopcatt', 'html_url': 'https://github.com/snoopcatt', 'followers_url': 'https://api.github.com/users/snoopcatt/followers', 'following_url': 'https://api.github.com/users/snoopcatt/following{/other_user}', 'gists_url': 'https://api.github.com/users/snoopcatt/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/snoopcatt/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/snoopcatt/subscriptions', 'organizations_url': 'https://api.github.com/users/snoopcatt/orgs', 'repos_url': 'https://api.github.com/users/snoopcatt/repos', 'events_url': 'https://api.github.com/users/snoopcatt/events{/privacy}', 'received_events_url': 'https://api.github.com/users/snoopcatt/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179040838, 'node_id': 'MDU6TGFiZWwxNzkwNDA4Mzg=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:MUC', 'name': 'Component:MUC', 'color': 'fad8c7', 'default': False, 'description': None}, {'id': 179053016, 'node_id': 'MDU6TGFiZWwxNzkwNTMwMTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Enhancement', 'name': 'Kind:Enhancement', 'color': '009800', 'default': False, 'description': None}]",closed,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/11', 'html_url': 'https://github.com/processone/ejabberd/milestone/11', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/11/labels', 'id': 1437111, 'node_id': 'MDk6TWlsZXN0b25lMTQzNzExMQ==', 'number': 11, 'title': 'ejabberd 20.xx', 'description': '', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 35, 'closed_issues': 4, 'state': 'open', 'created_at': '2015-12-01T10:25:26Z', 'updated_at': '2020-09-03T18:38:17Z', 'due_on': None, 'closed_at': None}",1,2020-04-02T07:58:13Z,2020-08-26T17:39:50Z,2020-08-26T17:39:50Z,NONE,,,"**Is your feature request related to a problem? Please describe.**
I'm trying to implement MUC subscribers list with MucSub spec.
But when admin or moderator requests subscriber list (or public member list is enabled in room settings), there is no subscribers nicks in response, only their JID.
**Describe the solution you'd like**
So, as nick is unique (it is impossible to join with occupied by some subscriber nickname), I suggest always return nick along with JID even if we have rights to see JID.
**Describe alternatives you've considered**
There is no alternate ways to get subscribers list with their nicknames.
**Additional context**
There is a simple patch to deal with it:
```
--- ejabberd-20.02.orig/src/mod_muc_room.erl
+++ ejabberd-20.02/src/mod_muc_room.erl
@@ -4306,7 +4306,7 @@ process_iq_mucsub(From, #iq{type = get,
fun(_, #subscriber{jid = J, nick = N, nodes = Nodes}, Acc) ->
case ShowJid of
true ->
- [#muc_subscription{jid = J, events = Nodes}|Acc];
+ [#muc_subscription{jid = J, nick = N, events = Nodes}|Acc];
_ ->
[#muc_subscription{nick = N, events = Nodes}|Acc]
end
```",
507,https://api.github.com/repos/processone/ejabberd/issues/3205,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3205/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3205/comments,https://api.github.com/repos/processone/ejabberd/issues/3205/events,https://github.com/processone/ejabberd/issues/3205,592036364,MDU6SXNzdWU1OTIwMzYzNjQ=,3205,ejabberd-20.01 returns invalid mod_http_upload put_url,"{'login': 'neildarlow', 'id': 6245505, 'node_id': 'MDQ6VXNlcjYyNDU1MDU=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/6245505?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/neildarlow', 'html_url': 'https://github.com/neildarlow', 'followers_url': 'https://api.github.com/users/neildarlow/followers', 'following_url': 'https://api.github.com/users/neildarlow/following{/other_user}', 'gists_url': 'https://api.github.com/users/neildarlow/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/neildarlow/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/neildarlow/subscriptions', 'organizations_url': 'https://api.github.com/users/neildarlow/orgs', 'repos_url': 'https://api.github.com/users/neildarlow/repos', 'events_url': 'https://api.github.com/users/neildarlow/events{/privacy}', 'received_events_url': 'https://api.github.com/users/neildarlow/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,"{'login': 'weiss', 'id': 71850, 'node_id': 'MDQ6VXNlcjcxODUw', 'avatar_url': 'https://avatars1.githubusercontent.com/u/71850?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/weiss', 'html_url': 'https://github.com/weiss', 'followers_url': 'https://api.github.com/users/weiss/followers', 'following_url': 'https://api.github.com/users/weiss/following{/other_user}', 'gists_url': 'https://api.github.com/users/weiss/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/weiss/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/weiss/subscriptions', 'organizations_url': 'https://api.github.com/users/weiss/orgs', 'repos_url': 'https://api.github.com/users/weiss/repos', 'events_url': 'https://api.github.com/users/weiss/events{/privacy}', 'received_events_url': 'https://api.github.com/users/weiss/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'weiss', 'id': 71850, 'node_id': 'MDQ6VXNlcjcxODUw', 'avatar_url': 'https://avatars1.githubusercontent.com/u/71850?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/weiss', 'html_url': 'https://github.com/weiss', 'followers_url': 'https://api.github.com/users/weiss/followers', 'following_url': 'https://api.github.com/users/weiss/following{/other_user}', 'gists_url': 'https://api.github.com/users/weiss/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/weiss/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/weiss/subscriptions', 'organizations_url': 'https://api.github.com/users/weiss/orgs', 'repos_url': 'https://api.github.com/users/weiss/repos', 'events_url': 'https://api.github.com/users/weiss/events{/privacy}', 'received_events_url': 'https://api.github.com/users/weiss/received_events', 'type': 'User', 'site_admin': False}]",,2,2020-04-01T16:13:25Z,2020-04-01T16:56:53Z,2020-04-01T16:56:53Z,NONE,,,"## Environment
- ejabberd version: 20.01
- Erlang version: Erlang (SMP,ASYNC_THREADS) (BEAM) emulator version 10.3.5.9
- OS: FreeBSD-12.1
- Installed from: Ports
## Configuration
hosts: [""darlow.co.uk""]
-
port: 5443
module: ejabberd_http
tls: true
request_handlers:
/admin: ejabberd_web_admin
/api: mod_http_api
/bosh: mod_bosh
/upload: mod_http_upload
/ws: ejabberd_http_ws
mod_http_upload:
docroot: /var/cache/ejabberd/
dir_mode: ""0755""
file_mode: ""0644""
max_size: 10485760
mod_http_upload_quota:
max_days: 7
## Errors from error.log/crash.log
No errors
## Bug description
Using the above configuration with default put_url and attempting to upload an image locally using the Conversations client I get the following error:
Failed to connect to darlow.co.uk/aa.bb.cc.dd:5443
where aa.bb.cc.dd is the IP address of my server's external ethernet interface. Why would that IP address be added to the host in the put_url?
",
508,https://api.github.com/repos/processone/ejabberd/issues/3204,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3204/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3204/comments,https://api.github.com/repos/processone/ejabberd/issues/3204/events,https://github.com/processone/ejabberd/issues/3204,591369409,MDU6SXNzdWU1OTEzNjk0MDk=,3204,The stop_ejabberd test case fails due to missing stream close stanza,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/41', 'html_url': 'https://github.com/processone/ejabberd/milestone/41', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/41/labels', 'id': 5368239, 'node_id': 'MDk6TWlsZXN0b25lNTM2ODIzOQ==', 'number': 41, 'title': 'ejabberd 20.04', 'description': 'https://www.process-one.net/blog/ejabberd-20-04/', 'creator': {'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 18, 'state': 'closed', 'created_at': '2020-04-30T16:07:38Z', 'updated_at': '2020-04-30T16:08:55Z', 'due_on': '2020-04-29T07:00:00Z', 'closed_at': '2020-04-30T16:08:55Z'}",4,2020-03-31T19:35:33Z,2020-04-30T16:08:09Z,2020-04-01T15:39:24Z,MEMBER,,,"Since commit https://github.com/processone/ejabberd/commit/7caec56e967ceae8fc773ba1ceec18fa08d1b8a3 the _stop_ejabberd_ case fails always with Erlang 19.3, and many times (not always!) with Erlang 20.2: https://travis-ci.org/github/processone/ejabberd/builds
The problem appears when ejabberd is stopping and it closes clients sessions. On the other hand, the client sessions are always correctly closed if they are manually closed with
`ejabberdctl kick_session user1 localhost tka1 asd`
How to reproduce the problem: start ejabberd, login with a client, then stop ejabberd with any method of
```
ejabberdctl stop
ejabberdctl stop_kindly 2 asd
or application:stop(ejabberd).
```
The client should receive this, but sometimes it only receives the stream:error stanza, not the ``:
```
```
In fact, this problematic behaviour can be reproduced in previous ejabberd releases manually in most cases, this indicates that the problem was not introduced in that recent commit: the problem is there since some time ago, at least since 19.09.1 (the oldest that I tested).
Possible solutions that I can think:
- If this is considered a big problem, investigate the root of this problem
- If this is not a big problem, or in fact is expected due to ejabberd shutdown optimizations, then modify the stop_ejabberd case to not expect ``",
509,https://api.github.com/repos/processone/ejabberd/issues/3203,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3203/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3203/comments,https://api.github.com/repos/processone/ejabberd/issues/3203/events,https://github.com/processone/ejabberd/issues/3203,590826345,MDU6SXNzdWU1OTA4MjYzNDU=,3203,Query to find multiple user at once.,"{'login': 'shaggi7', 'id': 54536845, 'node_id': 'MDQ6VXNlcjU0NTM2ODQ1', 'avatar_url': 'https://avatars1.githubusercontent.com/u/54536845?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/shaggi7', 'html_url': 'https://github.com/shaggi7', 'followers_url': 'https://api.github.com/users/shaggi7/followers', 'following_url': 'https://api.github.com/users/shaggi7/following{/other_user}', 'gists_url': 'https://api.github.com/users/shaggi7/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/shaggi7/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/shaggi7/subscriptions', 'organizations_url': 'https://api.github.com/users/shaggi7/orgs', 'repos_url': 'https://api.github.com/users/shaggi7/repos', 'events_url': 'https://api.github.com/users/shaggi7/events{/privacy}', 'received_events_url': 'https://api.github.com/users/shaggi7/received_events', 'type': 'User', 'site_admin': False}","[{'id': 352233730, 'node_id': 'MDU6TGFiZWwzNTIyMzM3MzA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Question', 'name': 'Kind:Question', 'color': 'fef2c0', 'default': False, 'description': None}]",closed,False,,[],,3,2020-03-31T06:14:36Z,2020-06-24T11:32:00Z,2020-06-24T11:32:00Z,NONE,,,"Hi Guys,
I need to implement the user search in the user table from the ejabberd DB through an HTTP request .
So far i have done it running the query
```
ejabberd_sql:sql_query(
LServer,
?SQL(""select @(username)s from users""
""where username in %(LUser)s and %(LServer)H""))
```
Where LUser and LServer are the username and domain of the respective user . Client is sending me a list of usernames (around havng 2000+ usernames) . So for every user this query traverse the whole DB (i.e. For 2000, It search the same table 2000 times) . I want to run a query of this type
```
SELECT * FROM users WHERE username IN [userList] AND server=Lserver;
```
I know this is only for the Bugs and features but i tried to write the query and also search for it online but no success.
It will be very helpful and kind if you guys help me or guide me where i can learn to make these queries for ejabberd .
Thanks",
510,https://api.github.com/repos/processone/ejabberd/issues/3202,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3202/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3202/comments,https://api.github.com/repos/processone/ejabberd/issues/3202/events,https://github.com/processone/ejabberd/pull/3202,589685865,MDExOlB1bGxSZXF1ZXN0Mzk1MTc0MzAz,3202,"sql_type should be taken for LServer, not LHost","{'login': 'borischernov', 'id': 5121004, 'node_id': 'MDQ6VXNlcjUxMjEwMDQ=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/5121004?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/borischernov', 'html_url': 'https://github.com/borischernov', 'followers_url': 'https://api.github.com/users/borischernov/followers', 'following_url': 'https://api.github.com/users/borischernov/following{/other_user}', 'gists_url': 'https://api.github.com/users/borischernov/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/borischernov/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/borischernov/subscriptions', 'organizations_url': 'https://api.github.com/users/borischernov/orgs', 'repos_url': 'https://api.github.com/users/borischernov/repos', 'events_url': 'https://api.github.com/users/borischernov/events{/privacy}', 'received_events_url': 'https://api.github.com/users/borischernov/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/41', 'html_url': 'https://github.com/processone/ejabberd/milestone/41', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/41/labels', 'id': 5368239, 'node_id': 'MDk6TWlsZXN0b25lNTM2ODIzOQ==', 'number': 41, 'title': 'ejabberd 20.04', 'description': 'https://www.process-one.net/blog/ejabberd-20-04/', 'creator': {'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 18, 'state': 'closed', 'created_at': '2020-04-30T16:07:38Z', 'updated_at': '2020-04-30T16:08:55Z', 'due_on': '2020-04-29T07:00:00Z', 'closed_at': '2020-04-30T16:08:55Z'}",3,2020-03-29T00:14:13Z,2020-04-30T16:08:08Z,2020-03-30T07:47:37Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3202', 'html_url': 'https://github.com/processone/ejabberd/pull/3202', 'diff_url': 'https://github.com/processone/ejabberd/pull/3202.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3202.patch'}","sql_type option should be retrieved for the main domain, not the MUC subdomain
",
511,https://api.github.com/repos/processone/ejabberd/issues/3201,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3201/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3201/comments,https://api.github.com/repos/processone/ejabberd/issues/3201/events,https://github.com/processone/ejabberd/issues/3201,589167718,MDU6SXNzdWU1ODkxNjc3MTg=,3201,Ejabberd windows uninstaller not deleting c:/ProgramData/ejabberd,"{'login': 'byteshiva', 'id': 10637299, 'node_id': 'MDQ6VXNlcjEwNjM3Mjk5', 'avatar_url': 'https://avatars0.githubusercontent.com/u/10637299?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/byteshiva', 'html_url': 'https://github.com/byteshiva', 'followers_url': 'https://api.github.com/users/byteshiva/followers', 'following_url': 'https://api.github.com/users/byteshiva/following{/other_user}', 'gists_url': 'https://api.github.com/users/byteshiva/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/byteshiva/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/byteshiva/subscriptions', 'organizations_url': 'https://api.github.com/users/byteshiva/orgs', 'repos_url': 'https://api.github.com/users/byteshiva/repos', 'events_url': 'https://api.github.com/users/byteshiva/events{/privacy}', 'received_events_url': 'https://api.github.com/users/byteshiva/received_events', 'type': 'User', 'site_admin': False}","[{'id': 231569227, 'node_id': 'MDU6TGFiZWwyMzE1NjkyMjc=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Installers', 'name': 'Component:Installers', 'color': 'fef2c0', 'default': False, 'description': None}]",open,False,,[],,6,2020-03-27T14:21:13Z,2020-06-24T10:40:09Z,,NONE,,,"## Environment
- ejabberd version: 20.03
- Erlang version: `erl +V`
- OS: Windows
- Installed from: official binary installer
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
loglevel: 4
...
```
## Errors from error.log/crash.log
No errors
## Bug description
Ejabberd Windows Uninstaller not deleting old ProgramData/ Ejabberd files. If I install new version of ejabberd say from 20.01 to 20.03, its taking old mnesia database configuration like users etc. And I dont want to manually delete ProgramData/ejabberd to fix this issue.
Expected:
The uninstaller should remove all the data corresponding to that particular ejabberd.
Please, give us a precise description (what does not work, what is expected, etc.)
![image](https://user-images.githubusercontent.com/10637299/77765215-ee482480-7063-11ea-9340-23902f8c2207.png)
",
512,https://api.github.com/repos/processone/ejabberd/issues/3200,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3200/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3200/comments,https://api.github.com/repos/processone/ejabberd/issues/3200/events,https://github.com/processone/ejabberd/issues/3200,588385086,MDU6SXNzdWU1ODgzODUwODY=,3200,Broken links in virtual host page body,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179679118, 'node_id': 'MDU6TGFiZWwxNzk2NzkxMTg=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Admin%20Tools', 'name': 'Component:Admin Tools', 'color': 'f7c6c7', 'default': False, 'description': None}]",closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/41', 'html_url': 'https://github.com/processone/ejabberd/milestone/41', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/41/labels', 'id': 5368239, 'node_id': 'MDk6TWlsZXN0b25lNTM2ODIzOQ==', 'number': 41, 'title': 'ejabberd 20.04', 'description': 'https://www.process-one.net/blog/ejabberd-20-04/', 'creator': {'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 18, 'state': 'closed', 'created_at': '2020-04-30T16:07:38Z', 'updated_at': '2020-04-30T16:08:55Z', 'due_on': '2020-04-29T07:00:00Z', 'closed_at': '2020-04-30T16:08:55Z'}",3,2020-03-26T12:29:46Z,2020-04-30T16:08:08Z,2020-03-31T16:44:32Z,MEMBER,,,"In ejabberd version 20.03, more concretely since commit https://github.com/processone/ejabberd/commit/e9d1201ea813d19c6c7403c7aa883e314991d664 for the ticket https://github.com/processone/ejabberd/issues/3177 , there are some broken links in the webadmin.
To reach them, go to -> Virtual Hosts -> then some host. The links in the page body are broken.
",
513,https://api.github.com/repos/processone/ejabberd/issues/3199,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3199/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3199/comments,https://api.github.com/repos/processone/ejabberd/issues/3199/events,https://github.com/processone/ejabberd/issues/3199,586837573,MDU6SXNzdWU1ODY4Mzc1NzM=,3199,Ejabberd Windows installer Unattended mode installation is failing,"{'login': 'kpsbhuvi', 'id': 23560674, 'node_id': 'MDQ6VXNlcjIzNTYwNjc0', 'avatar_url': 'https://avatars2.githubusercontent.com/u/23560674?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/kpsbhuvi', 'html_url': 'https://github.com/kpsbhuvi', 'followers_url': 'https://api.github.com/users/kpsbhuvi/followers', 'following_url': 'https://api.github.com/users/kpsbhuvi/following{/other_user}', 'gists_url': 'https://api.github.com/users/kpsbhuvi/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/kpsbhuvi/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/kpsbhuvi/subscriptions', 'organizations_url': 'https://api.github.com/users/kpsbhuvi/orgs', 'repos_url': 'https://api.github.com/users/kpsbhuvi/repos', 'events_url': 'https://api.github.com/users/kpsbhuvi/events{/privacy}', 'received_events_url': 'https://api.github.com/users/kpsbhuvi/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179053760, 'node_id': 'MDU6TGFiZWwxNzkwNTM3NjA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Note:Needs%20more%20info', 'name': 'Note:Needs more info', 'color': 'c7def8', 'default': False, 'description': None}]",closed,False,,[],,3,2020-03-24T10:02:04Z,2020-06-24T11:32:16Z,2020-06-24T11:32:16Z,NONE,,,"## Environment
- ejabberd version: 20.02
- OS: Windows Server 2019
- Installed from: official binary installer
## Bug description
Not able to install Ejabberd windows with unattended mode using options file.
Installation stuck with 'set up' pop up says Installing-executing final installation script.
Installation not at all completing.
",
514,https://api.github.com/repos/processone/ejabberd/issues/3198,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3198/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3198/comments,https://api.github.com/repos/processone/ejabberd/issues/3198/events,https://github.com/processone/ejabberd/issues/3198,585728632,MDU6SXNzdWU1ODU3Mjg2MzI=,3198,Stream incorrectly closed after IBR remove,"{'login': 'lovetox', 'id': 8661218, 'node_id': 'MDQ6VXNlcjg2NjEyMTg=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/8661218?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/lovetox', 'html_url': 'https://github.com/lovetox', 'followers_url': 'https://api.github.com/users/lovetox/followers', 'following_url': 'https://api.github.com/users/lovetox/following{/other_user}', 'gists_url': 'https://api.github.com/users/lovetox/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/lovetox/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/lovetox/subscriptions', 'organizations_url': 'https://api.github.com/users/lovetox/orgs', 'repos_url': 'https://api.github.com/users/lovetox/repos', 'events_url': 'https://api.github.com/users/lovetox/events{/privacy}', 'received_events_url': 'https://api.github.com/users/lovetox/received_events', 'type': 'User', 'site_admin': False}","[{'id': 296469987, 'node_id': 'MDU6TGFiZWwyOTY0Njk5ODc=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:XMPP%20Compliance', 'name': 'Component:XMPP Compliance', 'color': 'f7c6c7', 'default': False, 'description': None}]",open,False,,[],,0,2020-03-22T14:19:05Z,2020-03-31T20:31:29Z,,NONE,,,"## Environment
- ejabberd version: 19.05
## Bug description
If a user removes his account via IBR ``, ejabberd doesn't end the stream with the appropriate stream error ``.
Further if i send stanzas to the server, after i sent `` the server ends the stream with ` (text: User Removed)`
which seems like ejabberd removes the user from the database *before* it ends the stream, which seems problematic.
",
515,https://api.github.com/repos/processone/ejabberd/issues/3197,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3197/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3197/comments,https://api.github.com/repos/processone/ejabberd/issues/3197/events,https://github.com/processone/ejabberd/issues/3197,584561425,MDU6SXNzdWU1ODQ1NjE0MjU=,3197,Failed to build ejabberd from source using Vagrant/Virtual box base OS Ubuntu/Trusty,"{'login': 'byteshiva', 'id': 10637299, 'node_id': 'MDQ6VXNlcjEwNjM3Mjk5', 'avatar_url': 'https://avatars0.githubusercontent.com/u/10637299?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/byteshiva', 'html_url': 'https://github.com/byteshiva', 'followers_url': 'https://api.github.com/users/byteshiva/followers', 'following_url': 'https://api.github.com/users/byteshiva/following{/other_user}', 'gists_url': 'https://api.github.com/users/byteshiva/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/byteshiva/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/byteshiva/subscriptions', 'organizations_url': 'https://api.github.com/users/byteshiva/orgs', 'repos_url': 'https://api.github.com/users/byteshiva/repos', 'events_url': 'https://api.github.com/users/byteshiva/events{/privacy}', 'received_events_url': 'https://api.github.com/users/byteshiva/received_events', 'type': 'User', 'site_admin': False}","[{'id': 346842756, 'node_id': 'MDU6TGFiZWwzNDY4NDI3NTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Note:Cannot%20reproduce', 'name': 'Note:Cannot reproduce', 'color': 'c7def8', 'default': False, 'description': None}]",closed,False,,[],,2,2020-03-19T17:01:46Z,2020-06-24T10:38:11Z,2020-06-24T10:38:11Z,NONE,,,"## Environment
- ejabberd version: current git source
- Erlang version: `vagrant@vagrant-ubuntu-trusty-64:~/ejabberd$ erl +V
Erlang (SMP,ASYNC_THREADS) (BEAM) emulator version 10.7
vagrant@vagrant-ubuntu-trusty-64:~/ejabberd$`
- OS: Linux (Debian) - Ubuntu Trusty via vagrant / virtualbox
- Installed from: source
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
loglevel: 4
...
```
## Errors from error.log/crash.log
No errors
## Bug description
Please, give us a precise description (what does not work, what is expected, etc.)
I'm trying to build the latest ejabberd to build some module using elixir. But it fails to build. I'm using vagrant ubuntu/trusty as the base os.
```
chmod +x autogen
vagrant@vagrant-ubuntu-trusty-64:~/ejabberd$ ./configure --enable-user=ejabberd
--enable-elixir
vagrant@vagrant-ubuntu-trusty-64:~/ejabberd$ make test
```
Here is the make test error.
https://gist.github.com/byteshiva/9e39884308ee925dfb6d10e70e48fc92",
516,https://api.github.com/repos/processone/ejabberd/issues/3196,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3196/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3196/comments,https://api.github.com/repos/processone/ejabberd/issues/3196/events,https://github.com/processone/ejabberd/issues/3196,584510463,MDU6SXNzdWU1ODQ1MTA0NjM=,3196,Support for pre-approving subscription requests,"{'login': 'weiss', 'id': 71850, 'node_id': 'MDQ6VXNlcjcxODUw', 'avatar_url': 'https://avatars1.githubusercontent.com/u/71850?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/weiss', 'html_url': 'https://github.com/weiss', 'followers_url': 'https://api.github.com/users/weiss/followers', 'following_url': 'https://api.github.com/users/weiss/following{/other_user}', 'gists_url': 'https://api.github.com/users/weiss/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/weiss/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/weiss/subscriptions', 'organizations_url': 'https://api.github.com/users/weiss/orgs', 'repos_url': 'https://api.github.com/users/weiss/repos', 'events_url': 'https://api.github.com/users/weiss/events{/privacy}', 'received_events_url': 'https://api.github.com/users/weiss/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",open,False,,[],,0,2020-03-19T15:49:20Z,2020-03-19T15:49:20Z,,MEMBER,,,"It would be nice if ejabberd would support [subscription request pre-approval][1] (including the [`approved` attribute][2]) as per [RFC 6121][3].
[1]: https://tools.ietf.org/html/rfc6121#section-3.4
[2]: https://tools.ietf.org/html/rfc6121#section-2.1.2.1
[3]: https://tools.ietf.org/html/rfc6121",
517,https://api.github.com/repos/processone/ejabberd/issues/3195,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3195/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3195/comments,https://api.github.com/repos/processone/ejabberd/issues/3195/events,https://github.com/processone/ejabberd/issues/3195,584494603,MDU6SXNzdWU1ODQ0OTQ2MDM=,3195,Unable to exchange OMEMO keys with users on the same server,"{'login': 'nek0', 'id': 1859691, 'node_id': 'MDQ6VXNlcjE4NTk2OTE=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1859691?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/nek0', 'html_url': 'https://github.com/nek0', 'followers_url': 'https://api.github.com/users/nek0/followers', 'following_url': 'https://api.github.com/users/nek0/following{/other_user}', 'gists_url': 'https://api.github.com/users/nek0/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/nek0/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/nek0/subscriptions', 'organizations_url': 'https://api.github.com/users/nek0/orgs', 'repos_url': 'https://api.github.com/users/nek0/repos', 'events_url': 'https://api.github.com/users/nek0/events{/privacy}', 'received_events_url': 'https://api.github.com/users/nek0/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,6,2020-03-19T15:27:35Z,2020-04-07T17:57:27Z,2020-03-19T19:24:36Z,NONE,,,"## Environment
- ejabberd version: 20.01
- Erlang version: Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.5.5
- OS: NIxOS 20.09pre217377.ee9362f880e (Nightingale)
- Installed from: distro package
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
hosts:
-
loglevel: 4
log_rotate_size: 0
log_rotate_date: ""$D0""
log_rotate_count: 1
log_rate_limit: 100
hide_sensitive_log_data: true
listen:
-
port: 5222
module: ejabberd_c2s
starttls: true
starttls_required: true
zlib: true
-
port: 5269
module: ejabberd_s2s_in
transport: tcp
-
module: ejabberd_http
port: 5280
request_handlers:
/.well-known/acme-challenge: ejabberd_acme
-
module: ejabberd_xmlrpc
port: 4560
ip: ""127.0.0.1""
access_commands: {}
s2s_use_starttls: required
outgoing_s2s_families:
- ipv4
- ipv6
acme:
auto: true
contact:
- mailto:
cert_type: ec
ca_url: https://acme-v02.api.letsencrypt.org/directory
auth_method: internal
auth_password_format: scram
language: de
acl:
admin:
- user: nek0
access_rules:
admin:
allow: admin
shaper_rules:
max_user_offline_messages:
- 5000: admin
- 100
modules:
mod_adhoc: {}
mod_announce:
access: admin
mod_avatar: {}
mod_vcard_xupdate: {}
mod_pubsub:
ignore_pep_from_offline: false
last_item_cache: false
max_items_node: 1000000
plugins:
- ""flat""
- ""hometree""
- ""pep""
force_node_config:
""eu.siacs.conversations.axolotl.*"":
access_model: whitelist
""storage:bookmarks"":
access_model: whitelist
mod_client_state:
queue_chat_states: true
queue_pep: false
queue_presence: true
mod_disco:
server_info:
-
modules: all
name: abuse-addresses
urls: [mailto:]
mod_fail2ban:
access: admin
mod_last: {}
mod_mam: {}
mod_muc:
access: all
access_create: admin
access_admin: admin
access_mam:
- allow
default_room_options:
allow_subscription: true # enable MucSub
mam: false
mod_muc_admin: {}
mod_offline:
access_max_user_messages: max_user_offline_messages
mod_ping:
send_pings: true
ping_interval: 240
timeout_action: kill
mod_pres_counter:
count: 5
interval: 60
mod_privacy: {}
mod_proxy65: {}
mod_caps: {}
mod_push: {}
mod_push_keepalive: {}
mod_register:
access: none
mod_roster:
versioning: true
store_current_id: true
mod_s2s_dialback: {}
mod_vcard:
search: true
matches: infinity
allow_return_all: false
mod_version: {}
```
## Errors from error.log/crash.log
No errors
## Bug description
When trying to query OMEMO-Keys for users on my own server from my account which resides on the same server I get no valid responses. Key exchange with other users on other servers works flawlessly, though.",
518,https://api.github.com/repos/processone/ejabberd/issues/3194,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3194/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3194/comments,https://api.github.com/repos/processone/ejabberd/issues/3194/events,https://github.com/processone/ejabberd/issues/3194,583778618,MDU6SXNzdWU1ODM3Nzg2MTg=,3194,Tkabber throws Server hasnt provided SASL authentication,"{'login': 'byteshiva', 'id': 10637299, 'node_id': 'MDQ6VXNlcjEwNjM3Mjk5', 'avatar_url': 'https://avatars0.githubusercontent.com/u/10637299?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/byteshiva', 'html_url': 'https://github.com/byteshiva', 'followers_url': 'https://api.github.com/users/byteshiva/followers', 'following_url': 'https://api.github.com/users/byteshiva/following{/other_user}', 'gists_url': 'https://api.github.com/users/byteshiva/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/byteshiva/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/byteshiva/subscriptions', 'organizations_url': 'https://api.github.com/users/byteshiva/orgs', 'repos_url': 'https://api.github.com/users/byteshiva/repos', 'events_url': 'https://api.github.com/users/byteshiva/events{/privacy}', 'received_events_url': 'https://api.github.com/users/byteshiva/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-03-18T14:42:32Z,2020-06-24T11:32:42Z,2020-06-24T11:32:42Z,NONE,,,"## Environment
- ejabberd version: 20.01
- Erlang version: `erl +V`
- OS: Windows
- Installed from: official binary installer
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
loglevel: 4
...
```
## Errors from error.log/crash.log
No errors
## Bug description
Please, give us a precise description (what does not work, what is expected, etc.)
I'm unable to login using tkabber in localhost, throws ""Server hasnt provided SASL authentication""
![image](https://user-images.githubusercontent.com/10637299/76972492-aa169f00-6954-11ea-8560-fd691bab5a38.png)
",
519,https://api.github.com/repos/processone/ejabberd/issues/3193,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3193/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3193/comments,https://api.github.com/repos/processone/ejabberd/issues/3193/events,https://github.com/processone/ejabberd/issues/3193,583752580,MDU6SXNzdWU1ODM3NTI1ODA=,3193,Unable to access ejabberd admin portal in localhost,"{'login': 'byteshiva', 'id': 10637299, 'node_id': 'MDQ6VXNlcjEwNjM3Mjk5', 'avatar_url': 'https://avatars0.githubusercontent.com/u/10637299?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/byteshiva', 'html_url': 'https://github.com/byteshiva', 'followers_url': 'https://api.github.com/users/byteshiva/followers', 'following_url': 'https://api.github.com/users/byteshiva/following{/other_user}', 'gists_url': 'https://api.github.com/users/byteshiva/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/byteshiva/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/byteshiva/subscriptions', 'organizations_url': 'https://api.github.com/users/byteshiva/orgs', 'repos_url': 'https://api.github.com/users/byteshiva/repos', 'events_url': 'https://api.github.com/users/byteshiva/events{/privacy}', 'received_events_url': 'https://api.github.com/users/byteshiva/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/40', 'html_url': 'https://github.com/processone/ejabberd/milestone/40', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/40/labels', 'id': 5218332, 'node_id': 'MDk6TWlsZXN0b25lNTIxODMzMg==', 'number': 40, 'title': 'ejabberd 20.03', 'description': 'https://www.process-one.net/blog/ejabberd-20-03/', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 20, 'state': 'closed', 'created_at': '2020-03-19T15:58:57Z', 'updated_at': '2020-04-29T09:42:17Z', 'due_on': '2020-03-25T07:00:00Z', 'closed_at': '2020-03-26T10:03:11Z'}",6,2020-03-18T14:04:57Z,2020-04-16T13:09:22Z,2020-04-16T13:09:22Z,NONE,,,"## Environment
- ejabberd version: 20.02
- Erlang version: `erl +V`
- OS: Windows
- Installed from: official binary installer
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
loglevel: 4
...
```
## Errors from error.log/crash.log
```
2020-03-18 19:27:04 =SUPERVISOR REPORT====
Supervisor: {local,ejabberd_http_sup}
Context: child_terminated
Reason: {badarg,[{maps,from_list,[[html]],[]},{ejabberd_http,apply_cust
om_headers,2,[{file,""src/ejabberd_http.erl""},{line,860}]},{ejabberd_http,process
_request,1,[{file,""src/ejabberd_http.erl""},{line,495}]},{ejabberd_http,process_h
eader,2,[{file,""src/ejabberd_http.erl""},{line,287}]},{ejabberd_http,parse_header
s,1,[{file,""src/ejabberd_http.erl""},{line,212}]},{ejabberd_http,init,3,[{file,""s
rc/ejabberd_http.erl""},{line,142}]},{proc_lib,init_p_do_apply,3,[{file,""proc_lib
.erl""},{line,249}]}]}
Offender: [{pid,<0.647.0>},{id,undefined},{mfargs,{ejabberd_http,start_li
nk,undefined}},{restart_type,temporary},{shutdown,5000},{child_type,worker}]
2020-03-18 19:27:04 =CRASH REPORT====
crasher:
initial call: ejabberd_http:init/3
pid: <0.648.0>
registered_name: []
exception error: bad argument: [{maps,from_list,[[html]],[]},{ejabberd_http,
apply_custom_headers,2,[{file,""src/ejabberd_http.erl""},{line,860}]},{ejabberd_ht
tp,process_request,1,[{file,""src/ejabberd_http.erl""},{line,495}]},{ejabberd_http
,process_header,2,[{file,""src/ejabberd_http.erl""},{line,287}]},{ejabberd_http,pa
rse_headers,1,[{file,""src/ejabberd_http.erl""},{line,212}]},{ejabberd_http,init,3
,[{file,""src/ejabberd_http.erl""},{line,142}]},{proc_lib,init_p_do_apply,3,[{file
,""proc_lib.erl""},{line,249}]}]
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.105.0>]
message_queue_len: 0
messages: []
links: [<0.543.0>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 2777
neighbours:
```
## Bug description
I'm unable to login using admin credentials it fails when I put admin@computer and password.
http://localhost:5443/admin
http://localhost:5280/admin
ejabberd.yml and ejabberdctl.cfg available at
https://gist.github.com/byteshiva/4eb204542ca4c563366bc0a6c744edb8",
520,https://api.github.com/repos/processone/ejabberd/issues/3192,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3192/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3192/comments,https://api.github.com/repos/processone/ejabberd/issues/3192/events,https://github.com/processone/ejabberd/pull/3192,583296963,MDExOlB1bGxSZXF1ZXN0MzkwMDc1ODY3,3192,Fixed HTTP PUT body parsing error,"{'login': 'gihook', 'id': 9212108, 'node_id': 'MDQ6VXNlcjkyMTIxMDg=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/9212108?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/gihook', 'html_url': 'https://github.com/gihook', 'followers_url': 'https://api.github.com/users/gihook/followers', 'following_url': 'https://api.github.com/users/gihook/following{/other_user}', 'gists_url': 'https://api.github.com/users/gihook/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/gihook/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/gihook/subscriptions', 'organizations_url': 'https://api.github.com/users/gihook/orgs', 'repos_url': 'https://api.github.com/users/gihook/repos', 'events_url': 'https://api.github.com/users/gihook/events{/privacy}', 'received_events_url': 'https://api.github.com/users/gihook/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,9,2020-03-17T21:02:30Z,2020-03-20T08:35:02Z,2020-03-20T08:11:16Z,NONE,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3192', 'html_url': 'https://github.com/processone/ejabberd/pull/3192', 'diff_url': 'https://github.com/processone/ejabberd/pull/3192.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3192.patch'}","Think I found a bug in ejabberd_http module. Process (process) function called from HTTP handler module trims body for large PUT requests (it seems that this depends on length of header). I guess that PUT can be handled the same way as POST, when this patch is applied Ejabberd correctly parses the body.",
521,https://api.github.com/repos/processone/ejabberd/issues/3191,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3191/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3191/comments,https://api.github.com/repos/processone/ejabberd/issues/3191/events,https://github.com/processone/ejabberd/issues/3191,583022338,MDU6SXNzdWU1ODMwMjIzMzg=,3191,"After start the ejabberd, cannot access admin dashboard.","{'login': 'plutonem-mobile', 'id': 8728579, 'node_id': 'MDQ6VXNlcjg3Mjg1Nzk=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/8728579?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/plutonem-mobile', 'html_url': 'https://github.com/plutonem-mobile', 'followers_url': 'https://api.github.com/users/plutonem-mobile/followers', 'following_url': 'https://api.github.com/users/plutonem-mobile/following{/other_user}', 'gists_url': 'https://api.github.com/users/plutonem-mobile/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/plutonem-mobile/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/plutonem-mobile/subscriptions', 'organizations_url': 'https://api.github.com/users/plutonem-mobile/orgs', 'repos_url': 'https://api.github.com/users/plutonem-mobile/repos', 'events_url': 'https://api.github.com/users/plutonem-mobile/events{/privacy}', 'received_events_url': 'https://api.github.com/users/plutonem-mobile/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/40', 'html_url': 'https://github.com/processone/ejabberd/milestone/40', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/40/labels', 'id': 5218332, 'node_id': 'MDk6TWlsZXN0b25lNTIxODMzMg==', 'number': 40, 'title': 'ejabberd 20.03', 'description': 'https://www.process-one.net/blog/ejabberd-20-03/', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 20, 'state': 'closed', 'created_at': '2020-03-19T15:58:57Z', 'updated_at': '2020-04-29T09:42:17Z', 'due_on': '2020-03-25T07:00:00Z', 'closed_at': '2020-03-26T10:03:11Z'}",18,2020-03-17T13:42:37Z,2020-04-07T17:50:05Z,2020-03-18T11:00:46Z,NONE,,,"Hi, guys.
i just download ejabberd for windows and install it successfully. when i click the shortcut of start ejabberd and it direct me to a web page says successful also. but after this, when i follow the tutorial to open localhost:5280/admin it always return error page like following:
![image](https://user-images.githubusercontent.com/8728579/76861750-08ca1300-6898-11ea-98bd-21a92cd65b3b.png)
i tried so many times and i also try to open it in localhost:5443/admin, still got error.
wield",
522,https://api.github.com/repos/processone/ejabberd/issues/3190,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3190/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3190/comments,https://api.github.com/repos/processone/ejabberd/issues/3190/events,https://github.com/processone/ejabberd/issues/3190,582603123,MDU6SXNzdWU1ODI2MDMxMjM=,3190,"CRASH 20.02, ejabberd_http_sup","{'login': 'scottcc', 'id': 225380, 'node_id': 'MDQ6VXNlcjIyNTM4MA==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/225380?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/scottcc', 'html_url': 'https://github.com/scottcc', 'followers_url': 'https://api.github.com/users/scottcc/followers', 'following_url': 'https://api.github.com/users/scottcc/following{/other_user}', 'gists_url': 'https://api.github.com/users/scottcc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/scottcc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/scottcc/subscriptions', 'organizations_url': 'https://api.github.com/users/scottcc/orgs', 'repos_url': 'https://api.github.com/users/scottcc/repos', 'events_url': 'https://api.github.com/users/scottcc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/scottcc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/40', 'html_url': 'https://github.com/processone/ejabberd/milestone/40', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/40/labels', 'id': 5218332, 'node_id': 'MDk6TWlsZXN0b25lNTIxODMzMg==', 'number': 40, 'title': 'ejabberd 20.03', 'description': 'https://www.process-one.net/blog/ejabberd-20-03/', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 20, 'state': 'closed', 'created_at': '2020-03-19T15:58:57Z', 'updated_at': '2020-04-29T09:42:17Z', 'due_on': '2020-03-25T07:00:00Z', 'closed_at': '2020-03-26T10:03:11Z'}",3,2020-03-16T21:15:07Z,2020-03-19T15:59:21Z,2020-03-16T22:40:09Z,NONE,,,"## Environment
- ejabberd version: 20.02
- Erlang version: `erl +V` -> Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.6.4
- OS: Mac OSX
- Installed from: 'brew install ejabberd'
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
loglevel: debug (instructions still say to use numbers, but OTP/existing now with names)
...
```
## Errors from error.log/crash.log
==> ./error.log <==
2020-03-16 21:14:10.236556+00:00 [error] <0.2147.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.2147.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.114.0>]
message_queue_len: 0
messages: []
links: [<0.1903.0>,#Port<0.193>]
dictionary: []
trap_exit: false
status: running
heap_size: 2586
stack_size: 27
reductions: 32055
neighbours:
## Bug description
Able to start up ejabberd by either `ejabberdctl foreground` or `ejabberdctl start`, but attempting to hit the web admin (ie, https://some-server.domain.com:5280/admin/) correctly asks for the password. We have previously used `ejabberdctl register USER FQDN PASS`, where the last three are actually set to something. This then matches the `acl:` entry, subentry `admin:` then `user:` with an entry like `USER@FQDN`.
",
523,https://api.github.com/repos/processone/ejabberd/issues/3189,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3189/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3189/comments,https://api.github.com/repos/processone/ejabberd/issues/3189/events,https://github.com/processone/ejabberd/issues/3189,581265744,MDU6SXNzdWU1ODEyNjU3NDQ=,3189,Add request time to generated by mod_http_upload external_secret,"{'login': 'Andy-2639', 'id': 13392804, 'node_id': 'MDQ6VXNlcjEzMzkyODA0', 'avatar_url': 'https://avatars0.githubusercontent.com/u/13392804?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Andy-2639', 'html_url': 'https://github.com/Andy-2639', 'followers_url': 'https://api.github.com/users/Andy-2639/followers', 'following_url': 'https://api.github.com/users/Andy-2639/following{/other_user}', 'gists_url': 'https://api.github.com/users/Andy-2639/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Andy-2639/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Andy-2639/subscriptions', 'organizations_url': 'https://api.github.com/users/Andy-2639/orgs', 'repos_url': 'https://api.github.com/users/Andy-2639/repos', 'events_url': 'https://api.github.com/users/Andy-2639/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Andy-2639/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",open,False,"{'login': 'weiss', 'id': 71850, 'node_id': 'MDQ6VXNlcjcxODUw', 'avatar_url': 'https://avatars1.githubusercontent.com/u/71850?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/weiss', 'html_url': 'https://github.com/weiss', 'followers_url': 'https://api.github.com/users/weiss/followers', 'following_url': 'https://api.github.com/users/weiss/following{/other_user}', 'gists_url': 'https://api.github.com/users/weiss/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/weiss/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/weiss/subscriptions', 'organizations_url': 'https://api.github.com/users/weiss/orgs', 'repos_url': 'https://api.github.com/users/weiss/repos', 'events_url': 'https://api.github.com/users/weiss/events{/privacy}', 'received_events_url': 'https://api.github.com/users/weiss/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'weiss', 'id': 71850, 'node_id': 'MDQ6VXNlcjcxODUw', 'avatar_url': 'https://avatars1.githubusercontent.com/u/71850?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/weiss', 'html_url': 'https://github.com/weiss', 'followers_url': 'https://api.github.com/users/weiss/followers', 'following_url': 'https://api.github.com/users/weiss/following{/other_user}', 'gists_url': 'https://api.github.com/users/weiss/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/weiss/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/weiss/subscriptions', 'organizations_url': 'https://api.github.com/users/weiss/orgs', 'repos_url': 'https://api.github.com/users/weiss/repos', 'events_url': 'https://api.github.com/users/weiss/events{/privacy}', 'received_events_url': 'https://api.github.com/users/weiss/received_events', 'type': 'User', 'site_admin': False}]",,0,2020-03-14T16:02:38Z,2020-03-24T10:18:46Z,,NONE,,,"**Is your feature request related to a problem? Please describe.**
I want to use `mod_http_upload` option `external_secret` with an self-written php script. https://xmpp.org/extensions/xep-0363.html#impl suggests to implement a timeout for the validity of the PUT URL. For this, the server (php script) has to know the time of the XMPP request for the upload slots.
**Describe the solution you'd like**
I suggest to extend the currently used URL format to include the unix timestamp in the PUT URL path:
`////`
As far as I understood the Prosody decumentation ( https://modules.prosody.im/mod_http_upload_external.html ), the path format isn't specified. So the addition of another field shouldn't break compatibility (at least if no script expects the filename at a certain index but as the last path element, see #3188)",
524,https://api.github.com/repos/processone/ejabberd/issues/3188,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3188/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3188/comments,https://api.github.com/repos/processone/ejabberd/issues/3188/events,https://github.com/processone/ejabberd/issues/3188,581263090,MDU6SXNzdWU1ODEyNjMwOTA=,3188,Documentation of mod_http_upload external_secret URL format,"{'login': 'Andy-2639', 'id': 13392804, 'node_id': 'MDQ6VXNlcjEzMzkyODA0', 'avatar_url': 'https://avatars0.githubusercontent.com/u/13392804?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Andy-2639', 'html_url': 'https://github.com/Andy-2639', 'followers_url': 'https://api.github.com/users/Andy-2639/followers', 'following_url': 'https://api.github.com/users/Andy-2639/following{/other_user}', 'gists_url': 'https://api.github.com/users/Andy-2639/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Andy-2639/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Andy-2639/subscriptions', 'organizations_url': 'https://api.github.com/users/Andy-2639/orgs', 'repos_url': 'https://api.github.com/users/Andy-2639/repos', 'events_url': 'https://api.github.com/users/Andy-2639/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Andy-2639/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",open,False,"{'login': 'weiss', 'id': 71850, 'node_id': 'MDQ6VXNlcjcxODUw', 'avatar_url': 'https://avatars1.githubusercontent.com/u/71850?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/weiss', 'html_url': 'https://github.com/weiss', 'followers_url': 'https://api.github.com/users/weiss/followers', 'following_url': 'https://api.github.com/users/weiss/following{/other_user}', 'gists_url': 'https://api.github.com/users/weiss/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/weiss/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/weiss/subscriptions', 'organizations_url': 'https://api.github.com/users/weiss/orgs', 'repos_url': 'https://api.github.com/users/weiss/repos', 'events_url': 'https://api.github.com/users/weiss/events{/privacy}', 'received_events_url': 'https://api.github.com/users/weiss/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'weiss', 'id': 71850, 'node_id': 'MDQ6VXNlcjcxODUw', 'avatar_url': 'https://avatars1.githubusercontent.com/u/71850?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/weiss', 'html_url': 'https://github.com/weiss', 'followers_url': 'https://api.github.com/users/weiss/followers', 'following_url': 'https://api.github.com/users/weiss/following{/other_user}', 'gists_url': 'https://api.github.com/users/weiss/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/weiss/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/weiss/subscriptions', 'organizations_url': 'https://api.github.com/users/weiss/orgs', 'repos_url': 'https://api.github.com/users/weiss/repos', 'events_url': 'https://api.github.com/users/weiss/events{/privacy}', 'received_events_url': 'https://api.github.com/users/weiss/received_events', 'type': 'User', 'site_admin': False}]",,0,2020-03-14T15:54:53Z,2020-03-24T10:18:39Z,,NONE,,,"**Is your feature request related to a problem? Please describe.**
I want to use `mod_http_upload` option `external_secret` with an self-written php script. To be able to enforce a per user quota, I have to somehow get the JID (or a hash of it) out of the PUT URL.
**Describe the solution you'd like**
I already inspected the URL `mod_http_upload` with `external_secret` generates. It seems to have the format `///` (`jid_in_url` and `get_url` not configured).
As this format is not documentated, I have to treat it as implementation detail which can change on every update without prior warning.
Please document the URL format in https://docs.ejabberd.im/admin/configuration/#mod-http-upload . To leave space for additional information coded into the URL, I suggest to not say the exact position of the filename but state that it is the last component of the path (see #3189).",
525,https://api.github.com/repos/processone/ejabberd/issues/3187,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3187/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3187/comments,https://api.github.com/repos/processone/ejabberd/issues/3187/events,https://github.com/processone/ejabberd/issues/3187,581259471,MDU6SXNzdWU1ODEyNTk0NzE=,3187,Deprecation of `mod_http_upload` `service_url`,"{'login': 'Andy-2639', 'id': 13392804, 'node_id': 'MDQ6VXNlcjEzMzkyODA0', 'avatar_url': 'https://avatars0.githubusercontent.com/u/13392804?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Andy-2639', 'html_url': 'https://github.com/Andy-2639', 'followers_url': 'https://api.github.com/users/Andy-2639/followers', 'following_url': 'https://api.github.com/users/Andy-2639/following{/other_user}', 'gists_url': 'https://api.github.com/users/Andy-2639/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Andy-2639/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Andy-2639/subscriptions', 'organizations_url': 'https://api.github.com/users/Andy-2639/orgs', 'repos_url': 'https://api.github.com/users/Andy-2639/repos', 'events_url': 'https://api.github.com/users/Andy-2639/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Andy-2639/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]",,2,2020-03-14T15:45:14Z,2020-03-16T11:00:54Z,2020-03-16T11:00:54Z,NONE,,,"## Environment
https://www.process-one.net/downloads/downloads-action.php?file=/ejabberd/20.02/ejabberd-20.02-windows.exe
Windows 10 Pro x64 Version 1909
## Description
I'm using `mod_http_upload` with `service_url` option. On ejabberd start, this deprecation message is written into the log:
```
2020-03-14 12:04:21.041 [warning] <0.105.0>@ejabberd_config_transformer:warn_deprecated_option:530 Option 'service_url' is deprecated. Use option 'external_secret' instead.
```
I don't find a deprecation hint in the documentation: https://docs.ejabberd.im/admin/configuration/#mod-http-upload
Please remove the deprecation log entry or mark the `service_url` option as deprecated in the documentation.",
526,https://api.github.com/repos/processone/ejabberd/issues/3186,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3186/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3186/comments,https://api.github.com/repos/processone/ejabberd/issues/3186/events,https://github.com/processone/ejabberd/issues/3186,581143867,MDU6SXNzdWU1ODExNDM4Njc=,3186,crash on request_handlers /admin (v. 20.02),"{'login': 'Subnum12', 'id': 33807364, 'node_id': 'MDQ6VXNlcjMzODA3MzY0', 'avatar_url': 'https://avatars0.githubusercontent.com/u/33807364?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Subnum12', 'html_url': 'https://github.com/Subnum12', 'followers_url': 'https://api.github.com/users/Subnum12/followers', 'following_url': 'https://api.github.com/users/Subnum12/following{/other_user}', 'gists_url': 'https://api.github.com/users/Subnum12/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Subnum12/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Subnum12/subscriptions', 'organizations_url': 'https://api.github.com/users/Subnum12/orgs', 'repos_url': 'https://api.github.com/users/Subnum12/repos', 'events_url': 'https://api.github.com/users/Subnum12/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Subnum12/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/40', 'html_url': 'https://github.com/processone/ejabberd/milestone/40', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/40/labels', 'id': 5218332, 'node_id': 'MDk6TWlsZXN0b25lNTIxODMzMg==', 'number': 40, 'title': 'ejabberd 20.03', 'description': 'https://www.process-one.net/blog/ejabberd-20-03/', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 20, 'state': 'closed', 'created_at': '2020-03-19T15:58:57Z', 'updated_at': '2020-04-29T09:42:17Z', 'due_on': '2020-03-25T07:00:00Z', 'closed_at': '2020-03-26T10:03:11Z'}",3,2020-03-14T10:23:55Z,2020-04-07T17:49:55Z,2020-03-16T11:11:22Z,NONE,,,"## Environment
- ejabberd version: 20.02
- C:\Program Files\ejabberd-20.02\bin
- OS: Windows Server 2016
## Log:
```[error] <0.580.0>@ejabberd_http:apply_custom_headers:860 CRASH REPORT Process <0.580.0> with 0 neighbours crashed with reason: bad argument in call to maps:from_list([html]) in ejabberd_http:apply_custom_headers/2 line 860
[error] <0.565.0>@ejabberd_http:apply_custom_headers:860 Supervisor ejabberd_http_sup had child undefined started with {ejabberd_http,start_link,undefined} at <0.580.0> exit with reason bad argument in call to maps:from_list([html]) in ejabberd_http:apply_custom_headers/2 line 860 in context child_terminated
[error] <0.581.0>@ejabberd_http:apply_custom_headers:860 CRASH REPORT Process <0.581.0> with 0 neighbours crashed with reason: bad argument in call to maps:from_list([html]) in ejabberd_http:apply_custom_headers/2 line 860
[error] <0.565.0>@ejabberd_http:apply_custom_headers:860 Supervisor ejabberd_http_sup had child undefined started with {ejabberd_http,start_link,undefined} at <0.581.0> exit with reason bad argument in call to maps:from_list([html]) in ejabberd_http:apply_custom_headers/2 line 860 in context child_terminated
```
## crash.log
```=CRASH REPORT====
crasher:
initial call: ejabberd_http:init/3
pid: <0.580.0>
registered_name: []
exception error: bad argument: [{maps,from_list,[[html]],[]},{ejabberd_http,apply_custom_headers,2,[{file,""src/ejabberd_http.erl""},{line,860}]},{ejabberd_http,process_request,1,[{file,""src/ejabberd_http.erl""},{line,495}]},{ejabberd_http,process_header,2,[{file,""src/ejabberd_http.erl""},{line,287}]},{ejabberd_http,parse_headers,1,[{file,""src/ejabberd_http.erl""},{line,212}]},{ejabberd_http,init,3,[{file,""src/ejabberd_http.erl""},{line,142}]},{proc_lib,init_p_do_apply,3,[{file,""proc_lib.erl""},{line,249}]}]
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.105.0>]
message_queue_len: 0
messages: []
links: [<0.565.0>,#Port<0.35>]
dictionary: []
trap_exit: false
status: running
heap_size: 4185
stack_size: 27
reductions: 13998
neighbours:
=SUPERVISOR REPORT====
Supervisor: {local,ejabberd_http_sup}
Context: child_terminated
Reason: {badarg,[{maps,from_list,[[html]],[]},{ejabberd_http,apply_custom_headers,2,[{file,""src/ejabberd_http.erl""},{line,860}]},{ejabberd_http,process_request,1,[{file,""src/ejabberd_http.erl""},{line,495}]},{ejabberd_http,process_header,2,[{file,""src/ejabberd_http.erl""},{line,287}]},{ejabberd_http,parse_headers,1,[{file,""src/ejabberd_http.erl""},{line,212}]},{ejabberd_http,init,3,[{file,""src/ejabberd_http.erl""},{line,142}]},{proc_lib,init_p_do_apply,3,[{file,""proc_lib.erl""},{line,249}]}]}
Offender: [{pid,<0.580.0>},{id,undefined},{mfargs,{ejabberd_http,start_link,undefined}},{restart_type,temporary},{shutdown,5000},{child_type,worker}]
=CRASH REPORT====
crasher:
initial call: ejabberd_http:init/3
pid: <0.581.0>
registered_name: []
exception error: bad argument: [{maps,from_list,[[html]],[]},{ejabberd_http,apply_custom_headers,2,[{file,""src/ejabberd_http.erl""},{line,860}]},{ejabberd_http,process_request,1,[{file,""src/ejabberd_http.erl""},{line,495}]},{ejabberd_http,process_header,2,[{file,""src/ejabberd_http.erl""},{line,287}]},{ejabberd_http,parse_headers,1,[{file,""src/ejabberd_http.erl""},{line,212}]},{ejabberd_http,init,3,[{file,""src/ejabberd_http.erl""},{line,142}]},{proc_lib,init_p_do_apply,3,[{file,""proc_lib.erl""},{line,249}]}]
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.105.0>]
message_queue_len: 0
messages: []
links: [<0.565.0>,#Port<0.36>]
dictionary: []
trap_exit: false
status: running
heap_size: 6772
stack_size: 27
reductions: 11184
neighbours:
=SUPERVISOR REPORT====
Supervisor: {local,ejabberd_http_sup}
Context: child_terminated
Reason: {badarg,[{maps,from_list,[[html]],[]},{ejabberd_http,apply_custom_headers,2,[{file,""src/ejabberd_http.erl""},{line,860}]},{ejabberd_http,process_request,1,[{file,""src/ejabberd_http.erl""},{line,495}]},{ejabberd_http,process_header,2,[{file,""src/ejabberd_http.erl""},{line,287}]},{ejabberd_http,parse_headers,1,[{file,""src/ejabberd_http.erl""},{line,212}]},{ejabberd_http,init,3,[{file,""src/ejabberd_http.erl""},{line,142}]},{proc_lib,init_p_do_apply,3,[{file,""proc_lib.erl""},{line,249}]}]}
Offender: [{pid,<0.581.0>},{id,undefined},{mfargs,{ejabberd_http,start_link,undefined}},{restart_type,temporary},{shutdown,5000},{child_type,worker}]
```
## Bug description
Error appears once http://localhost:5280/admin is being accessed
same issue:
https://stackoverflow.com/q/60673359/10367395",
527,https://api.github.com/repos/processone/ejabberd/issues/3185,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3185/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3185/comments,https://api.github.com/repos/processone/ejabberd/issues/3185/events,https://github.com/processone/ejabberd/issues/3185,580760278,MDU6SXNzdWU1ODA3NjAyNzg=,3185,Ejabberd threw error when compiled with mongodb-erlang. Does ejabberd use poolboy?,"{'login': 'byteshiva', 'id': 10637299, 'node_id': 'MDQ6VXNlcjEwNjM3Mjk5', 'avatar_url': 'https://avatars0.githubusercontent.com/u/10637299?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/byteshiva', 'html_url': 'https://github.com/byteshiva', 'followers_url': 'https://api.github.com/users/byteshiva/followers', 'following_url': 'https://api.github.com/users/byteshiva/following{/other_user}', 'gists_url': 'https://api.github.com/users/byteshiva/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/byteshiva/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/byteshiva/subscriptions', 'organizations_url': 'https://api.github.com/users/byteshiva/orgs', 'repos_url': 'https://api.github.com/users/byteshiva/repos', 'events_url': 'https://api.github.com/users/byteshiva/events{/privacy}', 'received_events_url': 'https://api.github.com/users/byteshiva/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,7,2020-03-13T18:03:26Z,2020-03-19T19:22:55Z,2020-03-16T09:52:29Z,NONE,,,"Many people have faced compilation error when compiling mongodb-erlang along with ejabberd. The author of mongodb-erlang
Feels it might be with poolboy library.
My question is does Ejabberd still use poolboy library
Ref:
Can you please check if eJabberd is using poolboy?
because my driver is using it's fork and it can be a problem.
_Originally posted by @comtihon in https://github.com/comtihon/mongodb-erlang/issues/221#issuecomment-598113480_",
528,https://api.github.com/repos/processone/ejabberd/issues/3184,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3184/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3184/comments,https://api.github.com/repos/processone/ejabberd/issues/3184/events,https://github.com/processone/ejabberd/issues/3184,577712402,MDU6SXNzdWU1Nzc3MTI0MDI=,3184,Use supervisor process info to terminate ejabberd_c2s processes instead of fetching it from the db.,"{'login': 'satishck1992', 'id': 9669607, 'node_id': 'MDQ6VXNlcjk2Njk2MDc=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/9669607?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/satishck1992', 'html_url': 'https://github.com/satishck1992', 'followers_url': 'https://api.github.com/users/satishck1992/followers', 'following_url': 'https://api.github.com/users/satishck1992/following{/other_user}', 'gists_url': 'https://api.github.com/users/satishck1992/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/satishck1992/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/satishck1992/subscriptions', 'organizations_url': 'https://api.github.com/users/satishck1992/orgs', 'repos_url': 'https://api.github.com/users/satishck1992/repos', 'events_url': 'https://api.github.com/users/satishck1992/events{/privacy}', 'received_events_url': 'https://api.github.com/users/satishck1992/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",open,False,,[],,0,2020-03-09T07:39:23Z,2020-03-09T07:39:23Z,,NONE,,,"**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
I am frustrated when Ejabberd server queries the session database, instead of directly using the info it has to terminate the user session.
**Describe the solution you'd like**
A clear and concise description of what you want to happen.
Rather than using `Mod:get_session` on host down hook, we should use supervisor:which_children(ejabberd_c2s_sup) for finding out which of the ejabberd_c2s process are up and terminate it. This will make the shutdown of the server faster.
",
529,https://api.github.com/repos/processone/ejabberd/issues/3183,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3183/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3183/comments,https://api.github.com/repos/processone/ejabberd/issues/3183/events,https://github.com/processone/ejabberd/pull/3183,576139068,MDExOlB1bGxSZXF1ZXN0Mzg0MTgzMDk0,3183,fix admin command rooms_empty_destroy,"{'login': 'ChaosKid42', 'id': 15179432, 'node_id': 'MDQ6VXNlcjE1MTc5NDMy', 'avatar_url': 'https://avatars0.githubusercontent.com/u/15179432?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ChaosKid42', 'html_url': 'https://github.com/ChaosKid42', 'followers_url': 'https://api.github.com/users/ChaosKid42/followers', 'following_url': 'https://api.github.com/users/ChaosKid42/following{/other_user}', 'gists_url': 'https://api.github.com/users/ChaosKid42/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ChaosKid42/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ChaosKid42/subscriptions', 'organizations_url': 'https://api.github.com/users/ChaosKid42/orgs', 'repos_url': 'https://api.github.com/users/ChaosKid42/repos', 'events_url': 'https://api.github.com/users/ChaosKid42/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ChaosKid42/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/40', 'html_url': 'https://github.com/processone/ejabberd/milestone/40', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/40/labels', 'id': 5218332, 'node_id': 'MDk6TWlsZXN0b25lNTIxODMzMg==', 'number': 40, 'title': 'ejabberd 20.03', 'description': 'https://www.process-one.net/blog/ejabberd-20-03/', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 20, 'state': 'closed', 'created_at': '2020-03-19T15:58:57Z', 'updated_at': '2020-04-29T09:42:17Z', 'due_on': '2020-03-25T07:00:00Z', 'closed_at': '2020-03-26T10:03:11Z'}",1,2020-03-05T10:13:24Z,2020-04-29T09:36:11Z,2020-03-05T10:41:52Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3183', 'html_url': 'https://github.com/processone/ejabberd/pull/3183', 'diff_url': 'https://github.com/processone/ejabberd/pull/3183.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3183.patch'}",This is supposed to fix https://github.com/processone/ejabberd/issues/3182,
530,https://api.github.com/repos/processone/ejabberd/issues/3182,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3182/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3182/comments,https://api.github.com/repos/processone/ejabberd/issues/3182/events,https://github.com/processone/ejabberd/issues/3182,576137485,MDU6SXNzdWU1NzYxMzc0ODU=,3182,admin command rooms_empty_destroy does not destroy any rooms,"{'login': 'ChaosKid42', 'id': 15179432, 'node_id': 'MDQ6VXNlcjE1MTc5NDMy', 'avatar_url': 'https://avatars0.githubusercontent.com/u/15179432?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ChaosKid42', 'html_url': 'https://github.com/ChaosKid42', 'followers_url': 'https://api.github.com/users/ChaosKid42/followers', 'following_url': 'https://api.github.com/users/ChaosKid42/following{/other_user}', 'gists_url': 'https://api.github.com/users/ChaosKid42/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ChaosKid42/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ChaosKid42/subscriptions', 'organizations_url': 'https://api.github.com/users/ChaosKid42/orgs', 'repos_url': 'https://api.github.com/users/ChaosKid42/repos', 'events_url': 'https://api.github.com/users/ChaosKid42/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ChaosKid42/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/40', 'html_url': 'https://github.com/processone/ejabberd/milestone/40', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/40/labels', 'id': 5218332, 'node_id': 'MDk6TWlsZXN0b25lNTIxODMzMg==', 'number': 40, 'title': 'ejabberd 20.03', 'description': 'https://www.process-one.net/blog/ejabberd-20-03/', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 20, 'state': 'closed', 'created_at': '2020-03-19T15:58:57Z', 'updated_at': '2020-04-29T09:42:17Z', 'due_on': '2020-03-25T07:00:00Z', 'closed_at': '2020-03-26T10:03:11Z'}",0,2020-03-05T10:11:18Z,2020-04-29T09:36:20Z,2020-03-05T10:41:52Z,CONTRIBUTOR,,,"## Environment
- ejabberd version: HEAD
- Erlang version: Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.6.4
- OS: Arch Linux
- Installed from: source
## Errors from error.log/crash.log
No errors
## Bug description
Due to a mistake in mod_muc_admin.erl rooms_empty_destroy does not identify empty rooms and therefore cannot delete them. Fix: https://github.com/processone/ejabberd/pull/3183
",
531,https://api.github.com/repos/processone/ejabberd/issues/3181,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3181/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3181/comments,https://api.github.com/repos/processone/ejabberd/issues/3181/events,https://github.com/processone/ejabberd/issues/3181,575343928,MDU6SXNzdWU1NzUzNDM5Mjg=,3181,ejabberdctl reload_config does not reload ldap options in host_config,"{'login': 'gregkare', 'id': 43297, 'node_id': 'MDQ6VXNlcjQzMjk3', 'avatar_url': 'https://avatars0.githubusercontent.com/u/43297?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/gregkare', 'html_url': 'https://github.com/gregkare', 'followers_url': 'https://api.github.com/users/gregkare/followers', 'following_url': 'https://api.github.com/users/gregkare/following{/other_user}', 'gists_url': 'https://api.github.com/users/gregkare/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/gregkare/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/gregkare/subscriptions', 'organizations_url': 'https://api.github.com/users/gregkare/orgs', 'repos_url': 'https://api.github.com/users/gregkare/repos', 'events_url': 'https://api.github.com/users/gregkare/events{/privacy}', 'received_events_url': 'https://api.github.com/users/gregkare/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/40', 'html_url': 'https://github.com/processone/ejabberd/milestone/40', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/40/labels', 'id': 5218332, 'node_id': 'MDk6TWlsZXN0b25lNTIxODMzMg==', 'number': 40, 'title': 'ejabberd 20.03', 'description': 'https://www.process-one.net/blog/ejabberd-20-03/', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 20, 'state': 'closed', 'created_at': '2020-03-19T15:58:57Z', 'updated_at': '2020-04-29T09:42:17Z', 'due_on': '2020-03-25T07:00:00Z', 'closed_at': '2020-03-26T10:03:11Z'}",7,2020-03-04T11:56:37Z,2020-04-29T09:35:27Z,2020-03-04T12:06:04Z,NONE,,,"## Environment
- ejabberd version: 20.02 (previous versions too)
- Erlang version: `Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.3.4`
- OS: Linux (Ubuntu 18.04)
- Installed from: official deb
## Configuration (only if needed):
```yaml
include_config_file: ""/opt/ejabberd/conf/example.yml""
```
## Errors from error.log/crash.log
No errors
## Bug description
When running `ejabberdctl reload_config`, I expect the content of the included config file to be reloaded if it has changed. However, any change to an included config file is not applied until the service is restarted.
Is this by design, or is this a bug? In the meantime we are moving our vhosts back into the `/opt/ejabberd/conf/ejabberd.yml` file",
532,https://api.github.com/repos/processone/ejabberd/issues/3180,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3180/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3180/comments,https://api.github.com/repos/processone/ejabberd/issues/3180/events,https://github.com/processone/ejabberd/issues/3180,574614271,MDU6SXNzdWU1NzQ2MTQyNzE=,3180,Module to prevent Message loss.,"{'login': 'shaggi7', 'id': 54536845, 'node_id': 'MDQ6VXNlcjU0NTM2ODQ1', 'avatar_url': 'https://avatars1.githubusercontent.com/u/54536845?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/shaggi7', 'html_url': 'https://github.com/shaggi7', 'followers_url': 'https://api.github.com/users/shaggi7/followers', 'following_url': 'https://api.github.com/users/shaggi7/following{/other_user}', 'gists_url': 'https://api.github.com/users/shaggi7/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/shaggi7/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/shaggi7/subscriptions', 'organizations_url': 'https://api.github.com/users/shaggi7/orgs', 'repos_url': 'https://api.github.com/users/shaggi7/repos', 'events_url': 'https://api.github.com/users/shaggi7/events{/privacy}', 'received_events_url': 'https://api.github.com/users/shaggi7/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",closed,False,,[],,2,2020-03-03T11:51:18Z,2020-03-03T12:02:57Z,2020-03-03T12:02:34Z,NONE,,,"Hi,
I am facing an issue where client disconnects from the server but it's still showing online and the messages sent during this interval by another client, they simply lost sometimes(i have enabled Stream Management so pretty much is covered in it) .
Since i feel there will always be a window when the messages can be lost in some circumstances, I decided to do an update in OFFLINE STORAGE module of the server . I want to delete messages in offline storage when i receive some kind of acknowlegdement .
where i can handle this functionality . And would be very helpful if i get to know where the sending of these messges and then deleting them is handled .",
533,https://api.github.com/repos/processone/ejabberd/issues/3179,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3179/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3179/comments,https://api.github.com/repos/processone/ejabberd/issues/3179/events,https://github.com/processone/ejabberd/issues/3179,573960734,MDU6SXNzdWU1NzM5NjA3MzQ=,3179,Server Component not receiving all MUC messages from ejabberd,"{'login': 'PasqualePuzio', 'id': 7646303, 'node_id': 'MDQ6VXNlcjc2NDYzMDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/7646303?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/PasqualePuzio', 'html_url': 'https://github.com/PasqualePuzio', 'followers_url': 'https://api.github.com/users/PasqualePuzio/followers', 'following_url': 'https://api.github.com/users/PasqualePuzio/following{/other_user}', 'gists_url': 'https://api.github.com/users/PasqualePuzio/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/PasqualePuzio/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/PasqualePuzio/subscriptions', 'organizations_url': 'https://api.github.com/users/PasqualePuzio/orgs', 'repos_url': 'https://api.github.com/users/PasqualePuzio/repos', 'events_url': 'https://api.github.com/users/PasqualePuzio/events{/privacy}', 'received_events_url': 'https://api.github.com/users/PasqualePuzio/received_events', 'type': 'User', 'site_admin': False}","[{'id': 352233730, 'node_id': 'MDU6TGFiZWwzNTIyMzM3MzA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Question', 'name': 'Kind:Question', 'color': 'fef2c0', 'default': False, 'description': None}]",closed,False,,[],,3,2020-03-02T13:05:00Z,2020-03-03T09:49:02Z,2020-03-03T09:07:01Z,NONE,,,"## Environment
- ejabberd version: 18.03
- Erlang version: Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 9.3
- OS: Linux (Ubuntu 16.04)
- Installed from: official deb/rpm
## Configuration:
```loglevel: 5
log_rotate_size: 10485760
log_rotate_date: """"
log_rotate_count: 1
log_rate_limit: 100
hosts:
- ""testjabber.fantamaster.it""
define_macro:
'CERTFILE': ""/opt/ejabberd/conf/cert.pem""
'TLSOPTS':
- ""no_sslv2""
- ""no_sslv3""
listen:
-
port: 5222
ip: ""::""
module: ejabberd_c2s
starttls: true
certfile: 'CERTFILE'
protocol_options: 'TLSOPTS'
starttls_required: true
zlib: true
max_stanza_size: 65536
shaper: none
access: c2s
-
port: 5280
ip: ""::""
module: ejabberd_http
web_admin: true
http_bind: true
captcha: false
certfile: 'CERTFILE'
tls: true
-
port: 5233
ip: ""::""
module: ejabberd_service
password: ""secret""
access: all
auth_method: internal
host_config:
""testjabber.fantamaster.it"":
auth_method:
- external
extauth_program: ""python /opt/ejabberd/my_authentication.py""
extauth_instances: 8
auth_use_cache: false
shaper:
normal: 1000
fast: 100000
max_fsm_queue: 1000
acl:
admin:
user:
- ""localadmin@testjabber.fantamaster.it""
local:
user_regexp: """"
loopback:
ip:
- ""127.0.0.0/8""
- ""::1/128""
- ""::FFFF:127.0.0.1/128""
shaper_rules:
max_user_sessions: 10
max_user_offline_messages:
- 5000: admin
- 100
c2s_shaper:
- none: admin
- fast
s2s_shaper: fast
access_rules:
local:
- allow: local
c2s:
- deny: blocked
- allow
announce:
- allow: admin
configure:
- allow: admin
muc_create:
- allow
pubsub_createnode:
- allow: local
register:
- allow
trusted_network:
- allow: loopback
api_permissions:
""console commands"":
from:
- ejabberd_ctl
who: all
what: ""*""
""admin access"":
who:
- access:
- allow:
- acl: loopback
- acl: admin
- oauth:
- scope: ""ejabberd:admin""
- access:
- allow:
- acl: loopback
- acl: admin
what:
- ""*""
- ""!stop""
- ""!start""
""public commands"":
who:
- ip: ""127.0.0.1/8""
what:
- ""status""
- ""connected_users_number""
language: ""it""
modules:
mod_admin_extra: {}
mod_disco:
extra_domains:
- ""testrooms.testjabber.fantamaster.it""
mod_muc:
host: ""testrooms.testjabber.fantamaster.it""
history_size: 1000
max_users: 100000
max_user_conferences: 1000
default_room_options:
mam: false
max_users: 1000000
members_by_default: true
members_only: false
password_protected: false
persistent: true
public: true
moderated: false
anonymous: false
access:
- allow
access_admin:
- allow: admin
access_create: muc_create
access_persistent: muc_create
mod_muc_admin: {}
mod_offline:
access_max_user_messages: max_user_offline_messages
mod_ping: {}
mod_fail2ban:
c2s_auth_ban_lifetime: 7200
c2s_max_auth_failures: 50
allow_contrib_modules: true
```
## Errors from error.log/crash.log
No errors
## Bug description
We want to build a simple server component for ejabberd which receives all messages sent to MUC rooms (we have many rooms and new ones are being created all the time) and, after filtering some of these messages, performs some operations (e.g. notify an external service via a HTTP request).
We don't want our server component to act like a bot, so we don't want it to reply to messages or things like that, we just want it to receive copies of all messages in order to process some of them.
To do so, we have created a server component with sleekxmpp following the tutorial available here: https://sleekxmpp.readthedocs.io/en/latest/getting_started/component.html
The problem is that the component seems to receive only some of the messages.
Also, we are observing a weird behavior: message delivery seems to be ""exclusive"", meaning that a message is delivered either to clients connected to the room or to the server component. In other words, some messages are delivered to the server component, and the others are delivered to clients as usual.
We have tried several values for the component JID (notifications.testrooms.testjabber.fantamaster.it, testrooms.testjabber.fantamaster.it, notifications.testjabber.fantamaster.it, notifications.fantamaster.it) but we always end up with the same problem.
Do you have any idea what might cause this weird behavior? Is there any particular plugin or module that should be enabled/disabled?
Of course, we have enabled debug logs on both sleekxmpp and ejabberd, but we don't see any errors, it's just that some messages are missing.
It looks like there is some routing issue at our jabber server, for some reason messages are not correctly delivered, we can't figure it out.
Here's the server component code:
```import sys
import logging
import slixmpp
from slixmpp.componentxmpp import ComponentXMPP
class NotificationsComponent(ComponentXMPP):
def __init__(self):
ComponentXMPP.__init__(self, ""notifications.testrooms.testjabber.fantamaster.it"", ""secret"", ""testjabber.fantamaster.it"", 5233)
# add handler
self.add_event_handler(""message"", self.message)
self.add_event_handler(""groupchat_message"", self.message)
def message(self, msg):
if msg['type'] == 'groupchat':
print('Received group chat message')
print(msg)
else:
print('Received another message')
if __name__ == '__main__':
logging.basicConfig(level=logging.DEBUG,format='%(levelname)-8s %(message)s')
xmpp = NotificationsComponent()
xmpp.register_plugin('xep_0030') # Service Discovery
xmpp.register_plugin('xep_0004') # Data Forms
xmpp.register_plugin('xep_0060') # PubSub
xmpp.register_plugin('xep_0199') # XMPP Ping
xmpp.register_plugin('xep_0045') # MUC`
# Connect to the XMPP server and start processing XMPP stanzas.
xmpp.connect()
xmpp.process()
```",
534,https://api.github.com/repos/processone/ejabberd/issues/3178,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3178/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3178/comments,https://api.github.com/repos/processone/ejabberd/issues/3178/events,https://github.com/processone/ejabberd/issues/3178,573515514,MDU6SXNzdWU1NzM1MTU1MTQ=,3178," can't find include lib ""kernel/include/logger.hrl""","{'login': 'relravtech', 'id': 57591535, 'node_id': 'MDQ6VXNlcjU3NTkxNTM1', 'avatar_url': 'https://avatars3.githubusercontent.com/u/57591535?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/relravtech', 'html_url': 'https://github.com/relravtech', 'followers_url': 'https://api.github.com/users/relravtech/followers', 'following_url': 'https://api.github.com/users/relravtech/following{/other_user}', 'gists_url': 'https://api.github.com/users/relravtech/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/relravtech/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/relravtech/subscriptions', 'organizations_url': 'https://api.github.com/users/relravtech/orgs', 'repos_url': 'https://api.github.com/users/relravtech/repos', 'events_url': 'https://api.github.com/users/relravtech/events{/privacy}', 'received_events_url': 'https://api.github.com/users/relravtech/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,"{'login': 'prefiks', 'id': 61998, 'node_id': 'MDQ6VXNlcjYxOTk4', 'avatar_url': 'https://avatars0.githubusercontent.com/u/61998?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/prefiks', 'html_url': 'https://github.com/prefiks', 'followers_url': 'https://api.github.com/users/prefiks/followers', 'following_url': 'https://api.github.com/users/prefiks/following{/other_user}', 'gists_url': 'https://api.github.com/users/prefiks/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/prefiks/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/prefiks/subscriptions', 'organizations_url': 'https://api.github.com/users/prefiks/orgs', 'repos_url': 'https://api.github.com/users/prefiks/repos', 'events_url': 'https://api.github.com/users/prefiks/events{/privacy}', 'received_events_url': 'https://api.github.com/users/prefiks/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'prefiks', 'id': 61998, 'node_id': 'MDQ6VXNlcjYxOTk4', 'avatar_url': 'https://avatars0.githubusercontent.com/u/61998?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/prefiks', 'html_url': 'https://github.com/prefiks', 'followers_url': 'https://api.github.com/users/prefiks/followers', 'following_url': 'https://api.github.com/users/prefiks/following{/other_user}', 'gists_url': 'https://api.github.com/users/prefiks/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/prefiks/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/prefiks/subscriptions', 'organizations_url': 'https://api.github.com/users/prefiks/orgs', 'repos_url': 'https://api.github.com/users/prefiks/repos', 'events_url': 'https://api.github.com/users/prefiks/events{/privacy}', 'received_events_url': 'https://api.github.com/users/prefiks/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/40', 'html_url': 'https://github.com/processone/ejabberd/milestone/40', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/40/labels', 'id': 5218332, 'node_id': 'MDk6TWlsZXN0b25lNTIxODMzMg==', 'number': 40, 'title': 'ejabberd 20.03', 'description': 'https://www.process-one.net/blog/ejabberd-20-03/', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 20, 'state': 'closed', 'created_at': '2020-03-19T15:58:57Z', 'updated_at': '2020-04-29T09:42:17Z', 'due_on': '2020-03-25T07:00:00Z', 'closed_at': '2020-03-26T10:03:11Z'}",3,2020-03-01T09:39:16Z,2020-04-29T09:34:31Z,2020-03-03T10:25:52Z,NONE,,,"## Environment
- ejabberd version: 20.02
- Erlang version: 9.2
- OS: Linux (Ubuntu)
- Installed from: source
## Errors from error.log/crash.log
No errors
## Bug description
When I try to run `ejabberdctl install_module mod_name` I get error about the
`-include(""logger.hrl"")` and the message is the message I put in the title: `/usr/local/lib/ejabberd-20.02.6/include/logger.hrl:40: can't find include lib ""kernel/include/logger.hrl""`.
The file `error.log` doesn't say anything about this error.
",
535,https://api.github.com/repos/processone/ejabberd/issues/3177,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3177/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3177/comments,https://api.github.com/repos/processone/ejabberd/issues/3177/events,https://github.com/processone/ejabberd/issues/3177,573274972,MDU6SXNzdWU1NzMyNzQ5NzI=,3177,Web admin crash,"{'login': 'comicfans', 'id': 4547108, 'node_id': 'MDQ6VXNlcjQ1NDcxMDg=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/4547108?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/comicfans', 'html_url': 'https://github.com/comicfans', 'followers_url': 'https://api.github.com/users/comicfans/followers', 'following_url': 'https://api.github.com/users/comicfans/following{/other_user}', 'gists_url': 'https://api.github.com/users/comicfans/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/comicfans/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/comicfans/subscriptions', 'organizations_url': 'https://api.github.com/users/comicfans/orgs', 'repos_url': 'https://api.github.com/users/comicfans/repos', 'events_url': 'https://api.github.com/users/comicfans/events{/privacy}', 'received_events_url': 'https://api.github.com/users/comicfans/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179679118, 'node_id': 'MDU6TGFiZWwxNzk2NzkxMTg=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Admin%20Tools', 'name': 'Component:Admin Tools', 'color': 'f7c6c7', 'default': False, 'description': None}, {'id': 179053016, 'node_id': 'MDU6TGFiZWwxNzkwNTMwMTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Enhancement', 'name': 'Kind:Enhancement', 'color': '009800', 'default': False, 'description': None}]",closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/41', 'html_url': 'https://github.com/processone/ejabberd/milestone/41', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/41/labels', 'id': 5368239, 'node_id': 'MDk6TWlsZXN0b25lNTM2ODIzOQ==', 'number': 41, 'title': 'ejabberd 20.04', 'description': 'https://www.process-one.net/blog/ejabberd-20-04/', 'creator': {'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 18, 'state': 'closed', 'created_at': '2020-04-30T16:07:38Z', 'updated_at': '2020-04-30T16:08:55Z', 'due_on': '2020-04-29T07:00:00Z', 'closed_at': '2020-04-30T16:08:55Z'}",14,2020-02-29T11:07:47Z,2020-04-30T16:08:07Z,2020-03-13T09:00:30Z,NONE,,,"seems that both latest and 20.02 docker image(ejabberd/ecs) have this problem, after create admin localhost account, accessing web admin page through :5280/admin, ejabberd crash. but with 19.09.1, no such problem
crash log here :
2020-02-29 08:11:35.679600+00:00 [error] <0.841.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.841.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.838.0>,#Port<0.21>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 54085
neighbours:
2020-02-29 08:11:35.734446+00:00 [error] <0.838.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.841.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 08:11:35.764861+00:00 [error] <0.887.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.887.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.838.0>,#Port<0.41>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10467
neighbours:
2020-02-29 08:11:35.784171+00:00 [error] <0.838.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.887.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 08:11:35.817702+00:00 [error] <0.888.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.888.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.838.0>,#Port<0.42>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10050
neighbours:
2020-02-29 08:11:35.853479+00:00 [error] <0.838.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.888.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 08:11:36.382963+00:00 [error] <0.889.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.889.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.838.0>,#Port<0.43>]
dictionary: []
trap_exit: false
status: running
heap_size: 987
stack_size: 27
reductions: 17962
neighbours:
2020-02-29 08:11:36.402185+00:00 [error] <0.838.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.889.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 08:11:36.409873+00:00 [error] <0.890.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.890.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.838.0>,#Port<0.44>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10467
neighbours:
2020-02-29 08:11:36.460345+00:00 [error] <0.838.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.890.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 08:11:36.483333+00:00 [error] <0.891.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.891.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.838.0>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10050
neighbours:
2020-02-29 08:11:36.532223+00:00 [error] <0.838.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.891.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 08:11:41.679898+00:00 [error] <0.892.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.892.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.838.0>,#Port<0.46>]
dictionary: []
trap_exit: false
status: running
heap_size: 987
stack_size: 27
reductions: 17958
neighbours:
2020-02-29 08:11:41.692008+00:00 [error] <0.838.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.892.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 08:11:41.715812+00:00 [error] <0.893.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.893.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.838.0>,#Port<0.47>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10467
neighbours:
2020-02-29 08:11:41.741785+00:00 [error] <0.838.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.893.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 08:11:41.771593+00:00 [error] <0.894.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.894.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.838.0>,#Port<0.48>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10051
neighbours:
2020-02-29 08:11:41.797790+00:00 [error] <0.838.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.894.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 08:11:43.068136+00:00 [error] <0.895.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.895.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.838.0>,#Port<0.49>]
dictionary: []
trap_exit: false
status: running
heap_size: 987
stack_size: 27
reductions: 17962
neighbours:
2020-02-29 08:11:43.107918+00:00 [error] <0.838.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.895.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 08:11:43.111749+00:00 [error] <0.896.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.896.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.838.0>,#Port<0.50>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10467
neighbours:
2020-02-29 08:11:43.153139+00:00 [error] <0.838.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.896.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 08:11:43.211784+00:00 [error] <0.897.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.897.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.838.0>,#Port<0.51>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10050
neighbours:
2020-02-29 08:11:43.265686+00:00 [error] <0.838.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.897.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 08:11:44.342143+00:00 [error] <0.898.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.898.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.838.0>,#Port<0.52>]
dictionary: []
trap_exit: false
status: running
heap_size: 987
stack_size: 27
reductions: 17958
neighbours:
2020-02-29 08:11:44.373219+00:00 [error] <0.838.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.898.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 08:11:44.381339+00:00 [error] <0.899.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.899.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.838.0>,#Port<0.53>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10467
neighbours:
2020-02-29 08:11:44.449260+00:00 [error] <0.838.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.899.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 08:11:44.494887+00:00 [error] <0.900.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.900.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.838.0>,#Port<0.54>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10050
neighbours:
2020-02-29 08:11:44.566327+00:00 [error] <0.838.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.900.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 08:11:46.237437+00:00 [error] <0.905.0>@ejabberd_sql:check_error/2:1262 SQL query 'select def, always, never from archive_prefs where username='admin' and server_host='localhost'' failed: ""no such column: server_host""
2020-02-29 08:11:46.238136+00:00 [error] <0.905.0>@ejabberd_sql:check_error/2:1255 SQL query 'Q44259032' at {mod_mam_sql,182} failed: ""no such column: server_host""
2020-02-29 08:11:47.782833+00:00 [error] <0.910.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.910.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.838.0>,#Port<0.62>]
dictionary: []
trap_exit: false
status: running
heap_size: 987
stack_size: 27
reductions: 17958
neighbours:
2020-02-29 08:11:47.820202+00:00 [error] <0.838.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.910.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 08:11:47.831491+00:00 [error] <0.911.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.911.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.838.0>,#Port<0.63>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10467
neighbours:
2020-02-29 08:11:47.850398+00:00 [error] <0.838.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.911.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 08:11:47.868272+00:00 [error] <0.912.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.912.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.838.0>,#Port<0.64>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10050
neighbours:
2020-02-29 08:11:47.895905+00:00 [error] <0.838.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.912.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 08:12:18.277780+00:00 [error] <0.914.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.914.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.838.0>,#Port<0.67>]
dictionary: []
trap_exit: false
status: running
heap_size: 987
stack_size: 27
reductions: 17958
neighbours:
2020-02-29 08:12:18.312349+00:00 [error] <0.838.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.914.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 08:12:18.333579+00:00 [error] <0.915.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.915.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.838.0>,#Port<0.68>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10467
neighbours:
2020-02-29 08:12:18.374086+00:00 [error] <0.838.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.915.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 08:12:18.444410+00:00 [error] <0.916.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.916.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.838.0>,#Port<0.69>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10050
neighbours:
2020-02-29 08:12:18.470853+00:00 [error] <0.838.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.916.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 08:13:10.782124+00:00 [error] <0.931.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.931.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.838.0>,#Port<0.70>]
dictionary: []
trap_exit: false
status: running
heap_size: 987
stack_size: 27
reductions: 17958
neighbours:
2020-02-29 08:13:10.811193+00:00 [error] <0.838.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.931.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 08:13:10.839847+00:00 [error] <0.932.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.932.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.838.0>,#Port<0.71>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10467
neighbours:
2020-02-29 08:13:10.857307+00:00 [error] <0.838.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.932.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 08:13:10.873682+00:00 [error] <0.933.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.933.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.838.0>,#Port<0.72>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10051
neighbours:
2020-02-29 08:13:10.890978+00:00 [error] <0.838.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.933.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 08:14:19.578385+00:00 [error] <0.938.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.938.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.838.0>,#Port<0.74>]
dictionary: []
trap_exit: false
status: running
heap_size: 987
stack_size: 27
reductions: 17958
neighbours:
2020-02-29 08:14:19.598075+00:00 [error] <0.838.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.938.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 08:14:19.607687+00:00 [error] <0.939.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.939.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.838.0>,#Port<0.75>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10467
neighbours:
2020-02-29 08:14:19.623316+00:00 [error] <0.838.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.939.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 08:14:19.658554+00:00 [error] <0.940.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.940.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.838.0>,#Port<0.76>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10050
neighbours:
2020-02-29 08:14:19.691659+00:00 [error] <0.838.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.940.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 08:14:39.151068+00:00 [error] <0.905.0>@ejabberd_sql:check_error/2:1262 SQL query 'SELECT timestamp, xml, peer, kind, nick FROM archive WHERE username='admin' and server_host='localhost' and timestamp >= 1582960691000000 ORDER BY timestamp ASC limit 51;' failed: ""no such column: server_host""
2020-02-29 08:14:39.152852+00:00 [error] <0.905.0>@ejabberd_sql:check_error/2:1262 SQL query 'SELECT COUNT(*) FROM archive WHERE username='admin' and server_host='localhost' and timestamp >= 1582960691000000;' failed: ""no such column: server_host""
2020-02-29 08:15:20.143402+00:00 [error] <0.943.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.943.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.838.0>,#Port<0.78>]
dictionary: []
trap_exit: false
status: running
heap_size: 987
stack_size: 27
reductions: 17541
neighbours:
2020-02-29 08:15:20.165006+00:00 [error] <0.838.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.943.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 08:15:20.175075+00:00 [error] <0.944.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.944.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.838.0>,#Port<0.79>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10467
neighbours:
2020-02-29 08:15:20.191237+00:00 [error] <0.838.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.944.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 08:15:20.237200+00:00 [error] <0.945.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.945.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.838.0>,#Port<0.80>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10050
neighbours:
2020-02-29 08:15:20.265680+00:00 [error] <0.838.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.945.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 08:15:25.019460+00:00 [error] <0.905.0>@ejabberd_sql:check_error/2:1262 SQL query 'SELECT timestamp, xml, peer, kind, nick FROM archive WHERE username='admin' and server_host='localhost' and timestamp >= 1582964079000000 ORDER BY timestamp ASC limit 51;' failed: ""no such column: server_host""
2020-02-29 08:15:25.021061+00:00 [error] <0.905.0>@ejabberd_sql:check_error/2:1262 SQL query 'SELECT COUNT(*) FROM archive WHERE username='admin' and server_host='localhost' and timestamp >= 1582964079000000;' failed: ""no such column: server_host""
2020-02-29 08:48:23.245541+00:00 [error] <0.731.0>@ejabberd_sql:check_error/2:1262 SQL query 'select def, always, never from archive_prefs where username='admin' and server_host='localhost'' failed: ""no such column: server_host""
2020-02-29 08:48:23.246203+00:00 [error] <0.731.0>@ejabberd_sql:check_error/2:1255 SQL query 'Q44259032' at {mod_mam_sql,182} failed: ""no such column: server_host""
2020-02-29 08:55:29.057328+00:00 [error] <0.724.0>@ejabberd_sql:check_error/2:1262 SQL query 'select def, always, never from archive_prefs where username='admin' and server_host='localhost'' failed: ""no such column: server_host""
2020-02-29 08:55:29.057978+00:00 [error] <0.724.0>@ejabberd_sql:check_error/2:1255 SQL query 'Q44259032' at {mod_mam_sql,182} failed: ""no such column: server_host""
2020-02-29 08:58:01.340642+00:00 [error] <0.730.0>@ejabberd_sql:check_error/2:1262 SQL query 'select def, always, never from archive_prefs where username='admin' and server_host='localhost'' failed: ""no such column: server_host""
2020-02-29 08:58:01.341263+00:00 [error] <0.730.0>@ejabberd_sql:check_error/2:1255 SQL query 'Q44259032' at {mod_mam_sql,182} failed: ""no such column: server_host""
2020-02-29 09:07:43.746295+00:00 [error] <0.714.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.714.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.682.0>,#Port<0.26>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 18008
neighbours:
2020-02-29 09:07:43.845241+00:00 [error] <0.682.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.714.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:07:43.885756+00:00 [error] <0.715.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.715.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.682.0>,#Port<0.27>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10467
neighbours:
2020-02-29 09:07:43.915940+00:00 [error] <0.682.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.715.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:07:44.009908+00:00 [error] <0.716.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.716.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.682.0>,#Port<0.28>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10050
neighbours:
2020-02-29 09:07:44.099098+00:00 [error] <0.682.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.716.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:07:50.424975+00:00 [error] <0.724.0>@ejabberd_sql:check_error/2:1262 SQL query 'select def, always, never from archive_prefs where username='admin' and server_host='localhost'' failed: ""no such column: server_host""
2020-02-29 09:07:50.426437+00:00 [error] <0.724.0>@ejabberd_sql:check_error/2:1255 SQL query 'Q44259032' at {mod_mam_sql,182} failed: ""no such column: server_host""
2020-02-29 09:09:56.431976+00:00 [error] <0.724.0>@ejabberd_sql:check_error/2:1262 SQL query 'SELECT timestamp, xml, peer, kind, nick FROM archive WHERE username='admin' and server_host='localhost' and timestamp >= 1582964125000000 ORDER BY timestamp ASC limit 51;' failed: ""no such column: server_host""
2020-02-29 09:09:56.433329+00:00 [error] <0.724.0>@ejabberd_sql:check_error/2:1262 SQL query 'SELECT COUNT(*) FROM archive WHERE username='admin' and server_host='localhost' and timestamp >= 1582964125000000;' failed: ""no such column: server_host""
2020-02-29 09:19:36.900666+00:00 [error] <0.700.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.700.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.648.0>,#Port<0.27>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 22566
neighbours:
2020-02-29 09:19:37.089737+00:00 [error] <0.648.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.700.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:19:37.112230+00:00 [error] <0.726.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.726.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.648.0>,#Port<0.31>]
dictionary: []
trap_exit: false
status: running
heap_size: 987
stack_size: 27
reductions: 10496
neighbours:
2020-02-29 09:19:37.146802+00:00 [error] <0.648.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.726.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:19:37.202287+00:00 [error] <0.727.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.727.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.648.0>,#Port<0.32>]
dictionary: []
trap_exit: false
status: running
heap_size: 987
stack_size: 27
reductions: 10079
neighbours:
2020-02-29 09:19:37.238168+00:00 [error] <0.648.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.727.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:19:37.918375+00:00 [error] <0.728.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.728.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.648.0>,#Port<0.33>]
dictionary: []
trap_exit: false
status: running
heap_size: 987
stack_size: 27
reductions: 14487
neighbours:
2020-02-29 09:19:37.950532+00:00 [error] <0.648.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.728.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:19:37.982408+00:00 [error] <0.729.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.729.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.648.0>,#Port<0.34>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10467
neighbours:
2020-02-29 09:19:38.036235+00:00 [error] <0.648.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.729.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:19:38.078714+00:00 [error] <0.730.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.730.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.648.0>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10050
neighbours:
2020-02-29 09:19:38.151368+00:00 [error] <0.648.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.730.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:20:06.878317+00:00 [error] <0.732.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.732.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.648.0>,#Port<0.37>]
dictionary: []
trap_exit: false
status: running
heap_size: 987
stack_size: 27
reductions: 17543
neighbours:
2020-02-29 09:20:06.921639+00:00 [error] <0.648.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.732.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:20:06.934696+00:00 [error] <0.733.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.733.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.648.0>,#Port<0.38>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10467
neighbours:
2020-02-29 09:20:06.956931+00:00 [error] <0.648.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.733.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:20:06.976593+00:00 [error] <0.734.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.734.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.648.0>,#Port<0.39>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10050
neighbours:
2020-02-29 09:20:06.997256+00:00 [error] <0.648.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.734.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:20:15.326433+00:00 [error] <0.735.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.735.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.648.0>,#Port<0.40>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 22745
neighbours:
2020-02-29 09:20:15.410744+00:00 [error] <0.648.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.735.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:20:15.447403+00:00 [error] <0.736.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.736.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.648.0>,#Port<0.41>]
dictionary: []
trap_exit: false
status: running
heap_size: 987
stack_size: 27
reductions: 10503
neighbours:
2020-02-29 09:20:15.501915+00:00 [error] <0.648.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.736.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:20:15.570604+00:00 [error] <0.737.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.737.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.648.0>,#Port<0.42>]
dictionary: []
trap_exit: false
status: running
heap_size: 987
stack_size: 27
reductions: 10123
neighbours:
2020-02-29 09:20:15.617010+00:00 [error] <0.648.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.737.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:27:50.299038+00:00 [error] <0.718.0>@ejabberd_sql:check_error/2:1262 SQL query 'select def, always, never from archive_prefs where username='admin' and server_host='localhost'' failed: ""no such column: server_host""
2020-02-29 09:27:50.300002+00:00 [error] <0.718.0>@ejabberd_sql:check_error/2:1255 SQL query 'Q44259032' at {mod_mam_sql,182} failed: ""no such column: server_host""
2020-02-29 09:27:50.939192+00:00 [error] <0.720.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.720.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.644.0>,#Port<0.29>]
dictionary: []
trap_exit: false
status: running
heap_size: 4185
stack_size: 27
reductions: 17983
neighbours:
2020-02-29 09:27:51.219993+00:00 [error] <0.644.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.720.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:27:51.245479+00:00 [error] <0.721.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.721.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.644.0>,#Port<0.30>]
dictionary: []
trap_exit: false
status: running
heap_size: 987
stack_size: 27
reductions: 10539
neighbours:
2020-02-29 09:27:51.270131+00:00 [error] <0.644.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.721.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:27:51.284598+00:00 [error] <0.722.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.722.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.644.0>,#Port<0.31>]
dictionary: []
trap_exit: false
status: running
heap_size: 987
stack_size: 27
reductions: 10472
neighbours:
2020-02-29 09:27:51.323871+00:00 [error] <0.644.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.722.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:27:51.748905+00:00 [error] <0.723.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.723.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.644.0>,#Port<0.32>]
dictionary: []
trap_exit: false
status: running
heap_size: 2586
stack_size: 27
reductions: 17374
neighbours:
2020-02-29 09:27:51.783385+00:00 [error] <0.644.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.723.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:27:51.820659+00:00 [error] <0.724.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.724.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.644.0>,#Port<0.33>]
dictionary: []
trap_exit: false
status: running
heap_size: 987
stack_size: 27
reductions: 10496
neighbours:
2020-02-29 09:27:51.956301+00:00 [error] <0.644.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.724.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:27:52.061859+00:00 [error] <0.725.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.725.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.644.0>,#Port<0.34>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10010
neighbours:
2020-02-29 09:27:52.096260+00:00 [error] <0.644.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.725.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:27:52.840095+00:00 [error] <0.727.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.727.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.644.0>,#Port<0.35>]
dictionary: []
trap_exit: false
status: running
heap_size: 987
stack_size: 27
reductions: 14487
neighbours:
2020-02-29 09:27:52.913250+00:00 [error] <0.728.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.728.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.644.0>,#Port<0.36>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10467
neighbours:
2020-02-29 09:27:52.900905+00:00 [error] <0.644.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.727.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:27:53.028694+00:00 [error] <0.644.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.728.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:27:53.080784+00:00 [error] <0.729.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.729.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.644.0>,#Port<0.37>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10050
neighbours:
2020-02-29 09:27:53.138037+00:00 [error] <0.644.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.729.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:27:58.294847+00:00 [error] <0.736.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.736.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.644.0>,#Port<0.47>]
dictionary: []
trap_exit: false
status: running
heap_size: 987
stack_size: 27
reductions: 17959
neighbours:
2020-02-29 09:27:58.334784+00:00 [error] <0.644.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.736.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:27:58.381541+00:00 [error] <0.737.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.737.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.644.0>,#Port<0.48>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10467
neighbours:
2020-02-29 09:27:58.423807+00:00 [error] <0.644.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.737.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:27:58.465172+00:00 [error] <0.738.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.738.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.644.0>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10050
neighbours:
2020-02-29 09:27:58.557692+00:00 [error] <0.644.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.738.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:28:28.677744+00:00 [error] <0.742.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.742.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.644.0>,#Port<0.52>]
dictionary: []
trap_exit: false
status: running
heap_size: 987
stack_size: 27
reductions: 17959
neighbours:
2020-02-29 09:28:28.689443+00:00 [error] <0.644.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.742.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:28:28.695546+00:00 [error] <0.743.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.743.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.644.0>,#Port<0.53>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10467
neighbours:
2020-02-29 09:28:28.712630+00:00 [error] <0.644.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.743.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:28:28.750451+00:00 [error] <0.744.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.744.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.644.0>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10050
neighbours:
2020-02-29 09:28:28.781839+00:00 [error] <0.644.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.744.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:30:15.817115+00:00 [error] <0.720.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.720.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.709.0>,#Port<0.26>]
dictionary: []
trap_exit: false
status: running
heap_size: 2586
stack_size: 27
reductions: 17997
neighbours:
2020-02-29 09:30:16.126293+00:00 [error] <0.709.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.720.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:30:16.168930+00:00 [error] <0.721.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.721.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.709.0>,#Port<0.27>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10467
neighbours:
2020-02-29 09:30:16.303233+00:00 [error] <0.709.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.721.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:30:16.361589+00:00 [error] <0.723.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.723.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.709.0>,#Port<0.28>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10050
neighbours:
2020-02-29 09:30:16.441028+00:00 [error] <0.709.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.723.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:32:23.441726+00:00 [critical] <0.126.0>@ejabberd_app:start/2:71 Failed to start ejabberd application: Failed to read YAML file '/home/ejabberd/conf/ejabberd.yml': no such file or directory
2020-02-29 09:42:46.673443+00:00 [error] <0.871.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.871.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.835.0>,#Port<0.31>]
dictionary: []
trap_exit: false
status: running
heap_size: 4185
stack_size: 27
reductions: 62455
neighbours:
2020-02-29 09:42:46.720964+00:00 [error] <0.835.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.871.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:42:46.723134+00:00 [error] <0.885.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.885.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.835.0>,#Port<0.34>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10516
neighbours:
2020-02-29 09:42:46.812508+00:00 [error] <0.835.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.885.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:42:46.807221+00:00 [error] <0.886.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.886.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.835.0>,#Port<0.35>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10099
neighbours:
2020-02-29 09:42:46.879413+00:00 [error] <0.835.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.886.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:44:35.364242+00:00 [error] <0.896.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.896.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.835.0>,#Port<0.46>]
dictionary: []
trap_exit: false
status: running
heap_size: 2586
stack_size: 27
reductions: 16018
neighbours:
2020-02-29 09:44:35.383257+00:00 [error] <0.835.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.896.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:44:35.700637+00:00 [error] <0.899.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.899.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.835.0>,#Port<0.49>]
dictionary: []
trap_exit: false
status: running
heap_size: 2586
stack_size: 27
reductions: 10255
neighbours:
2020-02-29 09:44:35.714055+00:00 [error] <0.835.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.899.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:47:09.203267+00:00 [error] <0.914.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.914.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.835.0>,#Port<0.52>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 10596
neighbours:
2020-02-29 09:47:09.219778+00:00 [error] <0.835.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.914.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:47:13.520152+00:00 [error] <0.917.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.917.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.835.0>,#Port<0.55>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 11573
neighbours:
2020-02-29 09:47:13.552562+00:00 [error] <0.835.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.917.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:47:16.268389+00:00 [error] <0.920.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.920.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.835.0>,#Port<0.58>]
dictionary: []
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 11576
neighbours:
2020-02-29 09:47:16.279022+00:00 [error] <0.835.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.920.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:48:01.111389+00:00 [error] <0.924.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.924.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.835.0>,#Port<0.61>]
dictionary: []
trap_exit: false
status: running
heap_size: 2586
stack_size: 27
reductions: 10852
neighbours:
2020-02-29 09:48:01.118384+00:00 [error] <0.835.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.924.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:48:14.107615+00:00 [error] <0.925.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.925.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.835.0>,#Port<0.62>]
dictionary: []
trap_exit: false
status: running
heap_size: 4185
stack_size: 27
reductions: 18637
neighbours:
2020-02-29 09:48:14.142745+00:00 [error] <0.835.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.925.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:48:14.149123+00:00 [error] <0.926.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.926.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.835.0>,#Port<0.63>]
dictionary: []
trap_exit: false
status: running
heap_size: 2586
stack_size: 27
reductions: 11108
neighbours:
2020-02-29 09:48:14.200780+00:00 [error] <0.835.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.926.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
2020-02-29 09:48:14.251076+00:00 [error] <0.927.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: ejabberd_http:init/3
pid: <0.927.0>
registered_name: []
exception error: bad argument
in function maps:from_list/1
called as maps:from_list([html])
in call from ejabberd_http:apply_custom_headers/2 (src/ejabberd_http.erl, line 860)
in call from ejabberd_http:process_request/1 (src/ejabberd_http.erl, line 495)
in call from ejabberd_http:process_header/2 (src/ejabberd_http.erl, line 287)
in call from ejabberd_http:parse_headers/1 (src/ejabberd_http.erl, line 212)
in call from ejabberd_http:init/3 (src/ejabberd_http.erl, line 142)
ancestors: [ejabberd_http_sup,ejabberd_sup,<0.126.0>]
message_queue_len: 0
messages: []
links: [<0.835.0>,#Port<0.64>]
dictionary: []
trap_exit: false
status: running
heap_size: 2586
stack_size: 27
reductions: 10691
neighbours:
2020-02-29 09:48:14.281231+00:00 [error] <0.835.0>@supervisor:do_restart/3:716 SUPERVISOR REPORT:
supervisor: {local,ejabberd_http_sup}
errorContext: child_terminated
reason: {badarg,[{maps,from_list,[[html]],[]},
{ejabberd_http,apply_custom_headers,2,
[{file,""src/ejabberd_http.erl""},
{line,860}]},
{ejabberd_http,process_request,1,
[{file,""src/ejabberd_http.erl""},
{line,495}]},
{ejabberd_http,process_header,2,
[{file,""src/ejabberd_http.erl""},
{line,287}]},
{ejabberd_http,parse_headers,1,
[{file,""src/ejabberd_http.erl""},
{line,212}]},
{ejabberd_http,init,3,
[{file,""src/ejabberd_http.erl""},
{line,142}]},
{proc_lib,init_p_do_apply,3,
[{file,""proc_lib.erl""},{line,249}]}]}
offender: [{pid,<0.927.0>},
{id,undefined},
{mfargs,{ejabberd_http,start_link,undefined}},
{restart_type,temporary},
{shutdown,5000},
{child_type,worker}]
",
536,https://api.github.com/repos/processone/ejabberd/issues/3176,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3176/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3176/comments,https://api.github.com/repos/processone/ejabberd/issues/3176/events,https://github.com/processone/ejabberd/issues/3176,572859624,MDU6SXNzdWU1NzI4NTk2MjQ=,3176,Messages are dropped silently for no apparent reason.,"{'login': 'cloudyfuel', 'id': 19863386, 'node_id': 'MDQ6VXNlcjE5ODYzMzg2', 'avatar_url': 'https://avatars3.githubusercontent.com/u/19863386?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/cloudyfuel', 'html_url': 'https://github.com/cloudyfuel', 'followers_url': 'https://api.github.com/users/cloudyfuel/followers', 'following_url': 'https://api.github.com/users/cloudyfuel/following{/other_user}', 'gists_url': 'https://api.github.com/users/cloudyfuel/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/cloudyfuel/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/cloudyfuel/subscriptions', 'organizations_url': 'https://api.github.com/users/cloudyfuel/orgs', 'repos_url': 'https://api.github.com/users/cloudyfuel/repos', 'events_url': 'https://api.github.com/users/cloudyfuel/events{/privacy}', 'received_events_url': 'https://api.github.com/users/cloudyfuel/received_events', 'type': 'User', 'site_admin': False}","[{'id': 352233730, 'node_id': 'MDU6TGFiZWwzNTIyMzM3MzA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Question', 'name': 'Kind:Question', 'color': 'fef2c0', 'default': False, 'description': None}]",closed,False,,[],,3,2020-02-28T16:27:37Z,2020-03-02T11:57:17Z,2020-02-28T16:56:23Z,NONE,,,"## Environment
- ejabberd version: 20.01
- OS: Linux (Debian buster)
- Installed from: buster-backports
## Bug description
This started recently, I noticed it about 2 weeks ago.
Bob sent a message sent from his iphone (chatsecure, he also has chatsecure on ipad) Alice's gajim. Alice hasn't received this message.
Daria sent a message from her Conversations (she has only one client) to Alice's gajim. Same.
Gajim was switched to Dino, because I thought gajim is the culprit (it sometimes cannot connect unless restarted), but the same happened: Daria sent a message from Conversations to Alice's Dino (gajim wasn't running at this time), but Alice didn't receive it.
In all cases only one message wasn't delivered, later and previous messages were delivered properly.
All of them use OMEMO and creep.im public server which was solid until this. This is not my server, XMPP and email contact to admin: a@creep.im
What is failing here?",
537,https://api.github.com/repos/processone/ejabberd/issues/3175,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3175/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3175/comments,https://api.github.com/repos/processone/ejabberd/issues/3175/events,https://github.com/processone/ejabberd/issues/3175,571727807,MDU6SXNzdWU1NzE3Mjc4MDc=,3175,Error on fresh install ejabberd 20.x,"{'login': 'xdnroot', 'id': 47464217, 'node_id': 'MDQ6VXNlcjQ3NDY0MjE3', 'avatar_url': 'https://avatars2.githubusercontent.com/u/47464217?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/xdnroot', 'html_url': 'https://github.com/xdnroot', 'followers_url': 'https://api.github.com/users/xdnroot/followers', 'following_url': 'https://api.github.com/users/xdnroot/following{/other_user}', 'gists_url': 'https://api.github.com/users/xdnroot/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/xdnroot/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/xdnroot/subscriptions', 'organizations_url': 'https://api.github.com/users/xdnroot/orgs', 'repos_url': 'https://api.github.com/users/xdnroot/repos', 'events_url': 'https://api.github.com/users/xdnroot/events{/privacy}', 'received_events_url': 'https://api.github.com/users/xdnroot/received_events', 'type': 'User', 'site_admin': False}","[{'id': 352233730, 'node_id': 'MDU6TGFiZWwzNTIyMzM3MzA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Question', 'name': 'Kind:Question', 'color': 'fef2c0', 'default': False, 'description': None}]",closed,False,,[],,1,2020-02-26T23:40:36Z,2020-02-27T14:08:04Z,2020-02-27T09:16:10Z,NONE,,,"I installed ejabberd 20.x on centos 7, with default configuration.
I have disabled firewall on centos.
However when I start with command ""ejabberdctl start"", there is no error or alert. And ejabberdctl didn't start. There is only epmd service listening on port 4369.
I also tried to kill epmd service. Then start ejabberdctl again, but there is same.
Moreover, I tried ""ejabberdctl live"", there are logs like this:
```
[xdn@trx ~]$ ./ejabberd-20.02/bin/ejabberdctl live
--------------------------------------------------------------------
IMPORTANT: ejabberd is going to start in LIVE (interactive) mode.
All log messages will be shown in the command shell.
You can interact with the ejabberd node if you know how to use it.
Please be extremely cautious with your actions,
and exit immediately if you are not completely sure.
To exit this LIVE mode and stop ejabberd, press:
q(). and press the Enter key
--------------------------------------------------------------------
To bypass permanently this warning, add to ejabberdctl.cfg the line:
EJABBERD_BYPASS_WARNINGS=true
Press return to continue
Erlang/OTP 21 [erts-10.3.4] [source] [64-bit] [smp:1:1] [ds:1:1:10] [async-threads:1] [hipe]
Eshell V10.3.4 (abort with ^G)
(ejabberd@localhost)1> 23:30:15.678 [notice] Changed loghwm of /home/xdn/ejabberd-20.02/logs/error.log to 100
23:30:15.678 [notice] Changed loghwm of /home/xdn/ejabberd-20.02/logs/ejabberd.log to 100
23:30:15.804 [info] Loading configuration from /home/xdn/ejabberd-20.02/conf/ejabberd.yml
23:30:15.830 [warning] ACME directory URL https://acme-v01.api.letsencrypt.org defined in option acme->ca_url is deprecated and was automatically replaced with https://acme-v02.api.letsencrypt.org/directory. Please adjust your configuration file accordingly. Hint: run `ejabberdctl dump-config` command to view current configuration as it is seen by ejabberd.
23:30:15.830 [warning] Option 'log_rotate_date' is deprecated and has no effect anymore. Please remove it from the configuration.
23:30:15.830 [warning] Option 'log_rate_limit' is deprecated and has no effect anymore. Please remove it from the configuration.
23:30:16.203 [info] Configuration loaded successfully
dets: file ""/home/xdn/ejabberd-20.02/database/ejabberd@localhost/roster.DAT"" not properly closed, repairing ...
dets: file ""/home/xdn/ejabberd-20.02/database/ejabberd@localhost/archive_msg.DAT"" not properly closed, repairing ...
dets: file ""/home/xdn/ejabberd-20.02/database/ejabberd@localhost/archive_prefs.DAT"" not properly closed, repairing ...
dets: file ""/home/xdn/ejabberd-20.02/database/ejabberd@localhost/caps_features.DAT"" not properly closed, repairing ...
dets: file ""/home/xdn/ejabberd-20.02/database/ejabberd@localhost/last_activity.DAT"" not properly closed, repairing ...
dets: file ""/home/xdn/ejabberd-20.02/database/ejabberd@localhost/motd.DAT"" not properly closed, repairing ...
dets: file ""/home/xdn/ejabberd-20.02/database/ejabberd@localhost/motd_users.DAT"" not properly closed, repairing ...
dets: file ""/home/xdn/ejabberd-20.02/database/ejabberd@localhost/mqtt_pub.DAT"" not properly closed, repairing ...
dets: file ""/home/xdn/ejabberd-20.02/database/ejabberd@localhost/offline_msg.DAT"" not properly closed, repairing ...
dets: file ""/home/xdn/ejabberd-20.02/database/ejabberd@localhost/privacy.DAT"" not properly closed, repairing ...
dets: file ""/home/xdn/ejabberd-20.02/database/ejabberd@localhost/private_storage.DAT"" not properly closed, repairing ...
dets: file ""/home/xdn/ejabberd-20.02/database/ejabberd@localhost/pubsub_item.DAT"" not properly closed, repairing ...
dets: file ""/home/xdn/ejabberd-20.02/database/ejabberd@localhost/push_session.DAT"" not properly closed, repairing ...
dets: file ""/home/xdn/ejabberd-20.02/database/ejabberd@localhost/roster_version.DAT"" not properly closed, repairing ...
dets: file ""/home/xdn/ejabberd-20.02/database/ejabberd@localhost/vcard.DAT"" not properly closed, repairing ...
23:30:16.554 [info] Loading modules for trx.vsudo.co
23:30:16.577 [warning] Mnesia backend for mod_mam is not recommended: it's limited to 2GB and often gets corrupted when reaching this limit. SQL backend is recommended. Namely, for small servers SQLite is a preferred choice because it's very easy to configure.
23:30:16.770 [info] Building MQTT cache for trx.vsudo.co, this may take a while
23:30:16.783 [error] Failed to open socket at 207.46.235.99:7777 for mod_proxy65_stream: can't assign requested address
23:30:16.783 [critical] Failed to start module mod_proxy65:
{error,
{eaddrnotavail,
{child,undefined,
{7777,{207,46,235,99},tcp},
{ejabberd_listener,start,
[{7777,{207,46,235,99},tcp},
mod_proxy65_stream,
#{accept_interval => 0,access => local,
auth_type => anonymous,backlog => 5,
host => <<""proxy.trx.vsudo.co"">>,hostname => undefined,
hosts => [],
ip => {207,46,235,99},
max_connections => 5,name => <<""SOCKS5 Bytestreams"">>,
port => 7777,ram_db_type => mnesia,recbuf => 65536,
server_host => <<""trx.vsudo.co"">>,shaper => none,
sndbuf => 65536,supervisor => true,transport => tcp,
use_proxy_protocol => false,vcard => undefined}]},
transient,brutal_kill,worker,
[ejabberd_listener]}}}
23:30:16.783 [critical] ejabberd initialization was aborted because a module start failed.
```
Why this error occur?
Even, I installed on different host. It was work well without issues.",
538,https://api.github.com/repos/processone/ejabberd/issues/3174,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3174/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3174/comments,https://api.github.com/repos/processone/ejabberd/issues/3174/events,https://github.com/processone/ejabberd/issues/3174,571488106,MDU6SXNzdWU1NzE0ODgxMDY=,3174,Limit on mqtt,"{'login': 'a-jahanshahlo', 'id': 1611506, 'node_id': 'MDQ6VXNlcjE2MTE1MDY=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1611506?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/a-jahanshahlo', 'html_url': 'https://github.com/a-jahanshahlo', 'followers_url': 'https://api.github.com/users/a-jahanshahlo/followers', 'following_url': 'https://api.github.com/users/a-jahanshahlo/following{/other_user}', 'gists_url': 'https://api.github.com/users/a-jahanshahlo/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/a-jahanshahlo/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/a-jahanshahlo/subscriptions', 'organizations_url': 'https://api.github.com/users/a-jahanshahlo/orgs', 'repos_url': 'https://api.github.com/users/a-jahanshahlo/repos', 'events_url': 'https://api.github.com/users/a-jahanshahlo/events{/privacy}', 'received_events_url': 'https://api.github.com/users/a-jahanshahlo/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,3,2020-02-26T15:58:52Z,2020-02-26T17:58:38Z,,NONE,,,there is any way to limit messages for publisher per/minute? on MQTT?,
539,https://api.github.com/repos/processone/ejabberd/issues/3173,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3173/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3173/comments,https://api.github.com/repos/processone/ejabberd/issues/3173/events,https://github.com/processone/ejabberd/issues/3173,569022372,MDU6SXNzdWU1NjkwMjIzNzI=,3173,"register_web error ""Host not served""","{'login': 'ChaosKid42', 'id': 15179432, 'node_id': 'MDQ6VXNlcjE1MTc5NDMy', 'avatar_url': 'https://avatars0.githubusercontent.com/u/15179432?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ChaosKid42', 'html_url': 'https://github.com/ChaosKid42', 'followers_url': 'https://api.github.com/users/ChaosKid42/followers', 'following_url': 'https://api.github.com/users/ChaosKid42/following{/other_user}', 'gists_url': 'https://api.github.com/users/ChaosKid42/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ChaosKid42/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ChaosKid42/subscriptions', 'organizations_url': 'https://api.github.com/users/ChaosKid42/orgs', 'repos_url': 'https://api.github.com/users/ChaosKid42/repos', 'events_url': 'https://api.github.com/users/ChaosKid42/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ChaosKid42/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/40', 'html_url': 'https://github.com/processone/ejabberd/milestone/40', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/40/labels', 'id': 5218332, 'node_id': 'MDk6TWlsZXN0b25lNTIxODMzMg==', 'number': 40, 'title': 'ejabberd 20.03', 'description': 'https://www.process-one.net/blog/ejabberd-20-03/', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 20, 'state': 'closed', 'created_at': '2020-03-19T15:58:57Z', 'updated_at': '2020-04-29T09:42:17Z', 'due_on': '2020-03-25T07:00:00Z', 'closed_at': '2020-03-26T10:03:11Z'}",3,2020-02-21T15:28:11Z,2020-03-19T15:59:20Z,2020-02-26T12:58:48Z,CONTRIBUTOR,,,"## Environment
- ejabberd version: 20.01
- Official Docker Image
## Bug description
I have set up an ejabberd serving the domain `mydomain.tld`. The hosts DNS entry is `xmpp.mydomain.tld`.
Trying to access register_web by https://xmpp.mydomain.tld/register/ always fails with `Host not served`. It works if I create an DNS alias and access it via https://mydomain.tld/register/.
It seems to be a similar issue that was solved by https://github.com/processone/ejabberd/commit/8d571adca845285aa4928ada25d31cdbc32ef0a0.
",
540,https://api.github.com/repos/processone/ejabberd/issues/3172,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3172/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3172/comments,https://api.github.com/repos/processone/ejabberd/issues/3172/events,https://github.com/processone/ejabberd/issues/3172,567663659,MDU6SXNzdWU1Njc2NjM2NTk=,3172,MucSub doesnt send affiliation changes while target user is subscribed to room,"{'login': 'NtTestAlert', 'id': 50535142, 'node_id': 'MDQ6VXNlcjUwNTM1MTQy', 'avatar_url': 'https://avatars3.githubusercontent.com/u/50535142?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/NtTestAlert', 'html_url': 'https://github.com/NtTestAlert', 'followers_url': 'https://api.github.com/users/NtTestAlert/followers', 'following_url': 'https://api.github.com/users/NtTestAlert/following{/other_user}', 'gists_url': 'https://api.github.com/users/NtTestAlert/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/NtTestAlert/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/NtTestAlert/subscriptions', 'organizations_url': 'https://api.github.com/users/NtTestAlert/orgs', 'repos_url': 'https://api.github.com/users/NtTestAlert/repos', 'events_url': 'https://api.github.com/users/NtTestAlert/events{/privacy}', 'received_events_url': 'https://api.github.com/users/NtTestAlert/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179053760, 'node_id': 'MDU6TGFiZWwxNzkwNTM3NjA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Note:Needs%20more%20info', 'name': 'Note:Needs more info', 'color': 'c7def8', 'default': False, 'description': None}]",closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]",,6,2020-02-19T16:08:19Z,2020-06-24T10:39:28Z,2020-06-24T10:39:28Z,NONE,,,"## Environment
- ejabberd version: 20.01
- Erlang version: `Erlang (SMP,ASYNC_THREADS) (BEAM) emulator version 8.2.1`
- OS: Linux (Debian)
- Installed from: official deb/rpm
## Bug description
- set up a member only room `test` with owner `admin@test.ing` and members `user1@test.ing` `user2@test.ing`
- `admin@test.ing` joins `test@conference.test.ing`
- `user1@test.ing` subscribes to all mucsub events for `test@conference.test.ing`
- `user2@test.ing` subscribes to all mucsub events ...
> `user1` receives subscribe event
> `admin@test.ing` sets affiliation for `user2@test.ing` to `admin`
> `user1` **receives no events.**
- `user2@test.ing` unsubscribes from mucsub ...
> `user1` receives unsubscribe event
> `admin@test.ing` sets affiliation for `user2@test.ing` to `member`
> `user1` receives affiliation event
> `admin@test.ing` sets affiliation for `user2@test.ing` to `admin`
> `user1` receives affiliation event
",
541,https://api.github.com/repos/processone/ejabberd/issues/3171,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3171/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3171/comments,https://api.github.com/repos/processone/ejabberd/issues/3171/events,https://github.com/processone/ejabberd/issues/3171,565897811,MDU6SXNzdWU1NjU4OTc4MTE=,3171,MUC crash due to iolist_to_binary argument,"{'login': 'MRZA-MRZA', 'id': 3092263, 'node_id': 'MDQ6VXNlcjMwOTIyNjM=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/3092263?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/MRZA-MRZA', 'html_url': 'https://github.com/MRZA-MRZA', 'followers_url': 'https://api.github.com/users/MRZA-MRZA/followers', 'following_url': 'https://api.github.com/users/MRZA-MRZA/following{/other_user}', 'gists_url': 'https://api.github.com/users/MRZA-MRZA/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/MRZA-MRZA/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/MRZA-MRZA/subscriptions', 'organizations_url': 'https://api.github.com/users/MRZA-MRZA/orgs', 'repos_url': 'https://api.github.com/users/MRZA-MRZA/repos', 'events_url': 'https://api.github.com/users/MRZA-MRZA/events{/privacy}', 'received_events_url': 'https://api.github.com/users/MRZA-MRZA/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/39', 'html_url': 'https://github.com/processone/ejabberd/milestone/39', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/39/labels', 'id': 5116012, 'node_id': 'MDk6TWlsZXN0b25lNTExNjAxMg==', 'number': 39, 'title': 'ejabberd 20.02', 'description': '', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 10, 'state': 'closed', 'created_at': '2020-02-18T08:48:31Z', 'updated_at': '2020-02-26T13:07:59Z', 'due_on': '2020-02-26T08:00:00Z', 'closed_at': '2020-02-26T13:07:59Z'}",5,2020-02-16T12:30:36Z,2020-02-18T17:32:10Z,2020-02-18T17:32:10Z,NONE,,,"## Environment
- ejabberd version: 20.01
- Erlang version: Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.3.4
- OS: Ubuntu 18.04.4 LTS
- Installed from: official deb
## Errors from error.log/crash.log
```
2020-02-15 11:31:58 =CRASH REPORT====
crasher:
initial call: mod_muc_room:init/1
pid: <0.16405.0>
registered_name: []
exception exit: {{badarg,[{erlang,iolist_to_binary,[[73,116,32,105,115,32,110,111,116,32,97,108,108,111,119,101,100,32,116,111,32,115,101,110,100,32,101,114,114,111,114,32,109,101,115,115,97,103,101,115,32,116,111,32,116,104,101,32,114,111,111,109,46,32,84,104,101,32,112,97,114,116,105,99,105,112,97,110,116,32,40,[1061,1083,1077,1073,1086,1087,1077,1095,1100,32,1086,1073,1099,1082,1085,1086,1074,1077,1085,1085,1072,1103],41,32,104,97,115,32,115,101,110,116,32,97,110,32,101,114,114,111,114,32,109,101,115,115,97,103,101,32,40,""service-unavailable"",41,32,97,110,100,32,103,111,116,32,107,105,99,107,101,100,32,102,114,111,109,32,116,104,101,32,114,111,111,109]],[]},{str,format,2,[{file,""src/str.erl""},{line,289}]},{mod_muc_room,expulse_participant,4,[{file,""src/mod_muc_room.erl""},{line,1444}]},{mod_muc_room,normal_state,2,[{file,""src/mod_muc_room.erl""},{line,522}]},{p1_fsm,handle_msg,10,[{file,""src/p1_fsm.erl""},{line,582}]},{proc_lib,init_p_do_apply,3,[{file,""proc_lib.erl""},{line,249}]}]},[{p1_fsm,terminate,8,[{file,""src/p1_fsm.erl""},{line,760}]},{proc_lib,init_p_do_apply,3,[{file,""proc_lib.erl""},{line,249}]}]}
ancestors: ['mod_muc_room_sup_moemoekyun.moe','mod_muc_sup_moemoekyun.moe',ejabberd_gen_mod_sup,ejabberd_sup,<0.107.0>]
message_queue_len: 0
messages: []
links: [<0.448.0>]
dictionary: [{'$internal_queue_len',0},{rand_seed,{#{bits => 58,jump => #Fun,next => #Fun,type => exrop,uniform => #Fun,uniform_n => #Fun,weak_low_bits => 1},[281995168303509500|226980949720760284]}}]
trap_exit: true
status: running
heap_size: 17731
stack_size: 27
reductions: 2283601
neighbours:
2020-02-15 11:31:58 =SUPERVISOR REPORT====
Supervisor: {local,'mod_muc_room_sup_moemoekyun.moe'}
Context: child_terminated
Reason: {badarg,[
{erlang,iolist_to_binary,[[73,116,32,105,115,32,110,111,116,32,97,108,108,111,119,101,100,32,116,111,32,115,101,110,100,32,101,114,114,111,114,32,109,101,115,115,97,103,101,115,32,116,111,32,116,104,101,32,114,111,111,109,46,32,84,104,101,32,112,97,114,116,105,99,105,112,97,110,116,32,40,[1061,1083,1077,1073,1086,1087,1077,1095,1100,32,1086,1073,1099,1082,1085,1086,1074,1077,1085,1085,1072,1103],41,32,104,97,115,32,115,101,110,116,32,97,110,32,101,114,114,111,114,32,109,101,115,115,97,103,101,32,40,""service-unavailable"",41,32,97,110,100,32,103,111,116,32,107,105,99,107,101,100,32,102,114,111,109,32,116,104,101,32,114,111,111,109]],[]},
{str,format,2,[{file,""src/str.erl""},{line,289}]},
{mod_muc_room,expulse_participant,4,[{file,""src/mod_muc_room.erl""},{line,1444}]},
{mod_muc_room,normal_state,2,[{file,""src/mod_muc_room.erl""},{line,522}]},
{p1_fsm,handle_msg,10,[{file,""src/p1_fsm.erl""},{line,582}]},
{proc_lib,init_p_do_apply,3,[{file,""proc_lib.erl""},{line,249}]}]}
Offender: [{pid,<0.16405.0>},{id,undefined},
{mfargs,{mod_muc_room,start_link,undefined}},
{restart_type,temporary},{shutdown,5000},{child_type,worker}]
```
## Bug description
One of MUCs on my server periodically crashes. Users need to reconnect.
I assume there is an issue related to unicode.
",
542,https://api.github.com/repos/processone/ejabberd/issues/3170,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3170/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3170/comments,https://api.github.com/repos/processone/ejabberd/issues/3170/events,https://github.com/processone/ejabberd/issues/3170,565378901,MDU6SXNzdWU1NjUzNzg5MDE=,3170,ejabberdctl reload_config exits with code 1 for no apparent reason,"{'login': 'vthriller', 'id': 176062, 'node_id': 'MDQ6VXNlcjE3NjA2Mg==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/176062?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/vthriller', 'html_url': 'https://github.com/vthriller', 'followers_url': 'https://api.github.com/users/vthriller/followers', 'following_url': 'https://api.github.com/users/vthriller/following{/other_user}', 'gists_url': 'https://api.github.com/users/vthriller/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/vthriller/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/vthriller/subscriptions', 'organizations_url': 'https://api.github.com/users/vthriller/orgs', 'repos_url': 'https://api.github.com/users/vthriller/repos', 'events_url': 'https://api.github.com/users/vthriller/events{/privacy}', 'received_events_url': 'https://api.github.com/users/vthriller/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/39', 'html_url': 'https://github.com/processone/ejabberd/milestone/39', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/39/labels', 'id': 5116012, 'node_id': 'MDk6TWlsZXN0b25lNTExNjAxMg==', 'number': 39, 'title': 'ejabberd 20.02', 'description': '', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 10, 'state': 'closed', 'created_at': '2020-02-18T08:48:31Z', 'updated_at': '2020-02-26T13:07:59Z', 'due_on': '2020-02-26T08:00:00Z', 'closed_at': '2020-02-26T13:07:59Z'}",2,2020-02-14T14:59:20Z,2020-02-18T08:48:49Z,2020-02-14T18:02:06Z,CONTRIBUTOR,,,"## Environment
- ejabberd version: 20.01
- Erlang version: `Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.2.1`
- OS: Linux (Alpine 3.9.5)
- Installed from: official docker image (`ejabberd/ecs:20.01`)
## Configuration (only if needed):
Heavily trimmed (and a bit abbreviated) stock config:
```yaml
hosts: [localhost]
loglevel: 4
log_rotate_size: 10485760
log_rotate_count: 10
certfiles: []
acme:
auto: false
listen:
-
port: 5222
ip: ""::""
module: ejabberd_c2s
max_stanza_size: 262144
shaper: c2s_shaper
access: c2s
starttls_required: true
s2s_use_starttls: optional
acl:
local: {user_regexp: """"}
loopback: {ip: [127.0.0.0/8]}
admin: {user: []}
access_rules:
local: {allow: local}
c2s: {allow: all}
api_permissions:
""console commands"":
from: [ejabberd_ctl]
who: all
what: ""*""
shaper:
normal: 1000
fast: 50000
shaper_rules:
c2s_shaper:
none: admin
normal: all
max_fsm_queue: 10000
modules: {}
```
## Bug description
Start ejabberd:
```
# docker run --name ejabberd -v $(pwd)/ejabberd.yml:/home/ejabberd/conf/ejabberd.yml ejabberd/ecs:20.01
```
It seems to be ok with the config:
```
[info] Loading configuration from /home/ejabberd/conf/ejabberd.yml
[info] Configuration loaded successfully
[info] Loading modules for localhost
[info] Waiting for Mnesia synchronization to complete
[info] ejabberd 20.1.0 is started in the node ejabberd@32ed935e8f1a in 2.32s
[info] Start accepting TCP connections at [::]:5222 for ejabberd_c2s
```
But if we reload the same config, with or without any changes, `ejabberdctl` exits with 1 with no complaints otherwise.
```
# docker exec -it ejabberd sh
# bin/ejabberdctl set_loglevel debug; echo $?
0
# bin/ejabberdctl reload_config; echo $?
1
```
Maybe logs will say more? Nope, that's all I got:
```
[debug] Command 'reload_config' execution allowed by rule 'console commands' (CallerInfo=#{caller_module =>
ejabberd_ctl})
```",
543,https://api.github.com/repos/processone/ejabberd/issues/3169,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3169/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3169/comments,https://api.github.com/repos/processone/ejabberd/issues/3169/events,https://github.com/processone/ejabberd/issues/3169,563899423,MDU6SXNzdWU1NjM4OTk0MjM=,3169,TLS Client certificate Verification in Start TLS,"{'login': 'junaidsarwar414', 'id': 60965736, 'node_id': 'MDQ6VXNlcjYwOTY1NzM2', 'avatar_url': 'https://avatars0.githubusercontent.com/u/60965736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/junaidsarwar414', 'html_url': 'https://github.com/junaidsarwar414', 'followers_url': 'https://api.github.com/users/junaidsarwar414/followers', 'following_url': 'https://api.github.com/users/junaidsarwar414/following{/other_user}', 'gists_url': 'https://api.github.com/users/junaidsarwar414/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/junaidsarwar414/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/junaidsarwar414/subscriptions', 'organizations_url': 'https://api.github.com/users/junaidsarwar414/orgs', 'repos_url': 'https://api.github.com/users/junaidsarwar414/repos', 'events_url': 'https://api.github.com/users/junaidsarwar414/events{/privacy}', 'received_events_url': 'https://api.github.com/users/junaidsarwar414/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",open,False,,[],,3,2020-02-12T10:26:41Z,2020-02-12T14:45:40Z,,NONE,,,"I need To Ask that Ejabberd Community version Supports Client Certificate verification .I am not taking about XEP-0178.I want to enable Client Certificate Verification in TLS Connection.
",
544,https://api.github.com/repos/processone/ejabberd/issues/3168,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3168/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3168/comments,https://api.github.com/repos/processone/ejabberd/issues/3168/events,https://github.com/processone/ejabberd/issues/3168,563166724,MDU6SXNzdWU1NjMxNjY3MjQ=,3168,EjabberD installation failed on Windows Server 2012 (erl.exe has stopped working),"{'login': 'swifty94', 'id': 49090543, 'node_id': 'MDQ6VXNlcjQ5MDkwNTQz', 'avatar_url': 'https://avatars0.githubusercontent.com/u/49090543?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/swifty94', 'html_url': 'https://github.com/swifty94', 'followers_url': 'https://api.github.com/users/swifty94/followers', 'following_url': 'https://api.github.com/users/swifty94/following{/other_user}', 'gists_url': 'https://api.github.com/users/swifty94/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/swifty94/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/swifty94/subscriptions', 'organizations_url': 'https://api.github.com/users/swifty94/orgs', 'repos_url': 'https://api.github.com/users/swifty94/repos', 'events_url': 'https://api.github.com/users/swifty94/events{/privacy}', 'received_events_url': 'https://api.github.com/users/swifty94/received_events', 'type': 'User', 'site_admin': False}","[{'id': 231569227, 'node_id': 'MDU6TGFiZWwyMzE1NjkyMjc=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Installers', 'name': 'Component:Installers', 'color': 'fef2c0', 'default': False, 'description': None}]",closed,False,,[],,7,2020-02-11T12:13:17Z,2020-02-12T10:54:29Z,2020-02-12T10:54:29Z,NONE,,,"## Environment
- ejabberd version: 20.01
- Erlang version:
Erlang/OTP 22 [erts-10.5] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1]
Eshell V10.5 (abort with ^G)
- OS: Windows Server 2012 R2 64bit
- Installed from: official website https://www.process-one.net/en/ejabberd/downloads/
Installation hangs and fails on the step of post-install script execution.
Screenshot attached.
![ejabberd_install_fail](https://user-images.githubusercontent.com/49090543/74235730-591de600-4cd8-11ea-8d7b-3f270510dbdd.png)
Details about the error below:
---------------------------------------------------------------------------------------------------------------------------------
Problem signature:
Problem Event Name: APPCRASH
Application Name: erl.exe
Application Version: 0.0.0.0
Application Timestamp: 5c86ce75
Fault Module Name: MSVCR120.dll
Fault Module Version: 12.0.21005.1
Fault Module Timestamp: 524f83ff
Exception Code: c0000005
Exception Offset: 000000000003c798
OS Version: 6.3.9600.2.0.0.16.79
Locale ID: 9226
Additional Information 1: e91a
Additional Information 2: e91a6bd26807196ed21cb7c46c0b76ec
Additional Information 3: 8924
Additional Information 4: 892491a9552acccdeb582488560d0d7b
Read our privacy statement online:
http://go.microsoft.com/fwlink/?linkid=280262
If the online privacy statement is not available, please read our privacy statement offline:
C:\Windows\system32\en-US\erofflps.txt
--------------------------------------------------------------------------------------------------------------------------------------
I've installed the update for Visual C++ 2013 and Visual C++ Redistributable Package already (judging on MSVCR120.dll mentioning in error code), but no luck. I am facing exactly the same error code and I am not able to install the EjabberD at all.
Please advise.",
545,https://api.github.com/repos/processone/ejabberd/issues/3167,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3167/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3167/comments,https://api.github.com/repos/processone/ejabberd/issues/3167/events,https://github.com/processone/ejabberd/issues/3167,561923531,MDU6SXNzdWU1NjE5MjM1MzE=,3167,export/import_piefxis breaks SCRAM passwords,"{'login': 'michaelkuhn', 'id': 4062614, 'node_id': 'MDQ6VXNlcjQwNjI2MTQ=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/4062614?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/michaelkuhn', 'html_url': 'https://github.com/michaelkuhn', 'followers_url': 'https://api.github.com/users/michaelkuhn/followers', 'following_url': 'https://api.github.com/users/michaelkuhn/following{/other_user}', 'gists_url': 'https://api.github.com/users/michaelkuhn/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/michaelkuhn/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/michaelkuhn/subscriptions', 'organizations_url': 'https://api.github.com/users/michaelkuhn/orgs', 'repos_url': 'https://api.github.com/users/michaelkuhn/repos', 'events_url': 'https://api.github.com/users/michaelkuhn/events{/privacy}', 'received_events_url': 'https://api.github.com/users/michaelkuhn/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,"{'login': 'prefiks', 'id': 61998, 'node_id': 'MDQ6VXNlcjYxOTk4', 'avatar_url': 'https://avatars0.githubusercontent.com/u/61998?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/prefiks', 'html_url': 'https://github.com/prefiks', 'followers_url': 'https://api.github.com/users/prefiks/followers', 'following_url': 'https://api.github.com/users/prefiks/following{/other_user}', 'gists_url': 'https://api.github.com/users/prefiks/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/prefiks/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/prefiks/subscriptions', 'organizations_url': 'https://api.github.com/users/prefiks/orgs', 'repos_url': 'https://api.github.com/users/prefiks/repos', 'events_url': 'https://api.github.com/users/prefiks/events{/privacy}', 'received_events_url': 'https://api.github.com/users/prefiks/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'prefiks', 'id': 61998, 'node_id': 'MDQ6VXNlcjYxOTk4', 'avatar_url': 'https://avatars0.githubusercontent.com/u/61998?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/prefiks', 'html_url': 'https://github.com/prefiks', 'followers_url': 'https://api.github.com/users/prefiks/followers', 'following_url': 'https://api.github.com/users/prefiks/following{/other_user}', 'gists_url': 'https://api.github.com/users/prefiks/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/prefiks/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/prefiks/subscriptions', 'organizations_url': 'https://api.github.com/users/prefiks/orgs', 'repos_url': 'https://api.github.com/users/prefiks/repos', 'events_url': 'https://api.github.com/users/prefiks/events{/privacy}', 'received_events_url': 'https://api.github.com/users/prefiks/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/39', 'html_url': 'https://github.com/processone/ejabberd/milestone/39', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/39/labels', 'id': 5116012, 'node_id': 'MDk6TWlsZXN0b25lNTExNjAxMg==', 'number': 39, 'title': 'ejabberd 20.02', 'description': '', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 10, 'state': 'closed', 'created_at': '2020-02-18T08:48:31Z', 'updated_at': '2020-02-26T13:07:59Z', 'due_on': '2020-02-26T08:00:00Z', 'closed_at': '2020-02-26T13:07:59Z'}",2,2020-02-07T23:30:16Z,2020-02-21T16:10:15Z,2020-02-11T11:50:25Z,NONE,,,"## Environment
- ejabberd version: 19.09.1
- Erlang version: Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.6.2
- OS: Linux (Fedora)
- Installed from: distro package
## Errors from error.log/crash.log
No errors
## Bug description
I used export_piefxis on my old server and import_piefxis on my new server, afterwards no users could log in anymore due to mismatching passwords. It seems the problem is that the password components are base64 encoded in `format_scram_password` but are not decoded in `parse_scram_password` (see https://github.com/processone/ejabberd/blob/master/src/ejabberd_piefxis.erl#L184-L200). Manually decoding the password components within the XML file before importing it fixed the problem.",
546,https://api.github.com/repos/processone/ejabberd/issues/3166,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3166/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3166/comments,https://api.github.com/repos/processone/ejabberd/issues/3166/events,https://github.com/processone/ejabberd/issues/3166,561922519,MDU6SXNzdWU1NjE5MjI1MTk=,3166,import_piefxis fails for vcards with photo elements,"{'login': 'michaelkuhn', 'id': 4062614, 'node_id': 'MDQ6VXNlcjQwNjI2MTQ=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/4062614?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/michaelkuhn', 'html_url': 'https://github.com/michaelkuhn', 'followers_url': 'https://api.github.com/users/michaelkuhn/followers', 'following_url': 'https://api.github.com/users/michaelkuhn/following{/other_user}', 'gists_url': 'https://api.github.com/users/michaelkuhn/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/michaelkuhn/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/michaelkuhn/subscriptions', 'organizations_url': 'https://api.github.com/users/michaelkuhn/orgs', 'repos_url': 'https://api.github.com/users/michaelkuhn/repos', 'events_url': 'https://api.github.com/users/michaelkuhn/events{/privacy}', 'received_events_url': 'https://api.github.com/users/michaelkuhn/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/39', 'html_url': 'https://github.com/processone/ejabberd/milestone/39', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/39/labels', 'id': 5116012, 'node_id': 'MDk6TWlsZXN0b25lNTExNjAxMg==', 'number': 39, 'title': 'ejabberd 20.02', 'description': '', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 10, 'state': 'closed', 'created_at': '2020-02-18T08:48:31Z', 'updated_at': '2020-02-26T13:07:59Z', 'due_on': '2020-02-26T08:00:00Z', 'closed_at': '2020-02-26T13:07:59Z'}",8,2020-02-07T23:26:10Z,2020-02-18T17:15:54Z,2020-02-18T14:03:01Z,NONE,,,"## Environment
- ejabberd version: 19.09.1
- Erlang version: Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.6.2
- OS: Linux (Fedora)
- Installed from: distro package
## Errors from error.log/crash.log
`[error] <0.727.0>@ejabberd_piefxis:stop:554 Unexpected tag: {xmlel, ...`
## Bug description
I tried importing a piefxis XML (exported by ejabberd) with the following vcard: `...image/png...`, which failed with the above error. Removing the PHOTO element fixed the problem.",
547,https://api.github.com/repos/processone/ejabberd/issues/3165,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3165/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3165/comments,https://api.github.com/repos/processone/ejabberd/issues/3165/events,https://github.com/processone/ejabberd/issues/3165,561899465,MDU6SXNzdWU1NjE4OTk0NjU=,3165,Connect to PostgreSQL via unix socket.,"{'login': 'MrSorcus', 'id': 23472035, 'node_id': 'MDQ6VXNlcjIzNDcyMDM1', 'avatar_url': 'https://avatars2.githubusercontent.com/u/23472035?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/MrSorcus', 'html_url': 'https://github.com/MrSorcus', 'followers_url': 'https://api.github.com/users/MrSorcus/followers', 'following_url': 'https://api.github.com/users/MrSorcus/following{/other_user}', 'gists_url': 'https://api.github.com/users/MrSorcus/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/MrSorcus/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/MrSorcus/subscriptions', 'organizations_url': 'https://api.github.com/users/MrSorcus/orgs', 'repos_url': 'https://api.github.com/users/MrSorcus/repos', 'events_url': 'https://api.github.com/users/MrSorcus/events{/privacy}', 'received_events_url': 'https://api.github.com/users/MrSorcus/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179046635, 'node_id': 'MDU6TGFiZWwxNzkwNDY2MzU=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Databases', 'name': 'Component:Databases', 'color': 'fef2c0', 'default': False, 'description': None}, {'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",closed,False,,[],,4,2020-02-07T22:14:59Z,2020-06-24T10:37:19Z,2020-06-24T10:37:19Z,NONE,,,"## Environment
- ejabberd version: 20.01
- Erlang version: `Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.6.2`
- OS: Linux (Archlinux)
- Installed from: repository
## Configuration
```yaml
sql_server: /run/postgresql
```
## Errors
```
2020-02-07 22:06:24.909982+00:00 [warning] <0.332.0>@ejabberd_sql:handle_reconnect/2:471 pgsql connection failed:
** Reason: {init,{error,nxdomain}}
** Retry after: 30 seconds
```
## Bug description
Can't connect to PostgreSQL via unix socket.
`/run/postgresql`, `unix:/run/postgresql`, `localhost:/run/postgresql` - all variants failed.
",
548,https://api.github.com/repos/processone/ejabberd/issues/3164,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3164/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3164/comments,https://api.github.com/repos/processone/ejabberd/issues/3164/events,https://github.com/processone/ejabberd/issues/3164,561085264,MDU6SXNzdWU1NjEwODUyNjQ=,3164,ejabberd-20.01.tgz in ProcessOne website is not 20.01 source code,"{'login': 'madmalkav', 'id': 11020793, 'node_id': 'MDQ6VXNlcjExMDIwNzkz', 'avatar_url': 'https://avatars3.githubusercontent.com/u/11020793?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/madmalkav', 'html_url': 'https://github.com/madmalkav', 'followers_url': 'https://api.github.com/users/madmalkav/followers', 'following_url': 'https://api.github.com/users/madmalkav/following{/other_user}', 'gists_url': 'https://api.github.com/users/madmalkav/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/madmalkav/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/madmalkav/subscriptions', 'organizations_url': 'https://api.github.com/users/madmalkav/orgs', 'repos_url': 'https://api.github.com/users/madmalkav/repos', 'events_url': 'https://api.github.com/users/madmalkav/events{/privacy}', 'received_events_url': 'https://api.github.com/users/madmalkav/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,"{'login': 'f055', 'id': 53429, 'node_id': 'MDQ6VXNlcjUzNDI5', 'avatar_url': 'https://avatars3.githubusercontent.com/u/53429?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/f055', 'html_url': 'https://github.com/f055', 'followers_url': 'https://api.github.com/users/f055/followers', 'following_url': 'https://api.github.com/users/f055/following{/other_user}', 'gists_url': 'https://api.github.com/users/f055/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/f055/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/f055/subscriptions', 'organizations_url': 'https://api.github.com/users/f055/orgs', 'repos_url': 'https://api.github.com/users/f055/repos', 'events_url': 'https://api.github.com/users/f055/events{/privacy}', 'received_events_url': 'https://api.github.com/users/f055/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'f055', 'id': 53429, 'node_id': 'MDQ6VXNlcjUzNDI5', 'avatar_url': 'https://avatars3.githubusercontent.com/u/53429?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/f055', 'html_url': 'https://github.com/f055', 'followers_url': 'https://api.github.com/users/f055/followers', 'following_url': 'https://api.github.com/users/f055/following{/other_user}', 'gists_url': 'https://api.github.com/users/f055/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/f055/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/f055/subscriptions', 'organizations_url': 'https://api.github.com/users/f055/orgs', 'repos_url': 'https://api.github.com/users/f055/repos', 'events_url': 'https://api.github.com/users/f055/events{/privacy}', 'received_events_url': 'https://api.github.com/users/f055/received_events', 'type': 'User', 'site_admin': False}, {'login': 'jsautret', 'id': 568898, 'node_id': 'MDQ6VXNlcjU2ODg5OA==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/568898?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jsautret', 'html_url': 'https://github.com/jsautret', 'followers_url': 'https://api.github.com/users/jsautret/followers', 'following_url': 'https://api.github.com/users/jsautret/following{/other_user}', 'gists_url': 'https://api.github.com/users/jsautret/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jsautret/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jsautret/subscriptions', 'organizations_url': 'https://api.github.com/users/jsautret/orgs', 'repos_url': 'https://api.github.com/users/jsautret/repos', 'events_url': 'https://api.github.com/users/jsautret/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jsautret/received_events', 'type': 'User', 'site_admin': False}]",,4,2020-02-06T15:25:33Z,2020-02-17T20:27:50Z,2020-02-17T20:27:50Z,NONE,,,As per title. Discovered because of missing sql_prepared_statements support.,
549,https://api.github.com/repos/processone/ejabberd/issues/3163,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3163/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3163/comments,https://api.github.com/repos/processone/ejabberd/issues/3163/events,https://github.com/processone/ejabberd/issues/3163,560818712,MDU6SXNzdWU1NjA4MTg3MTI=,3163,"Support group unreachable, expired cert","{'login': 'licaon-kter', 'id': 2282799, 'node_id': 'MDQ6VXNlcjIyODI3OTk=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2282799?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/licaon-kter', 'html_url': 'https://github.com/licaon-kter', 'followers_url': 'https://api.github.com/users/licaon-kter/followers', 'following_url': 'https://api.github.com/users/licaon-kter/following{/other_user}', 'gists_url': 'https://api.github.com/users/licaon-kter/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/licaon-kter/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/licaon-kter/subscriptions', 'organizations_url': 'https://api.github.com/users/licaon-kter/orgs', 'repos_url': 'https://api.github.com/users/licaon-kter/repos', 'events_url': 'https://api.github.com/users/licaon-kter/events{/privacy}', 'received_events_url': 'https://api.github.com/users/licaon-kter/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,"{'login': 'prefiks', 'id': 61998, 'node_id': 'MDQ6VXNlcjYxOTk4', 'avatar_url': 'https://avatars0.githubusercontent.com/u/61998?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/prefiks', 'html_url': 'https://github.com/prefiks', 'followers_url': 'https://api.github.com/users/prefiks/followers', 'following_url': 'https://api.github.com/users/prefiks/following{/other_user}', 'gists_url': 'https://api.github.com/users/prefiks/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/prefiks/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/prefiks/subscriptions', 'organizations_url': 'https://api.github.com/users/prefiks/orgs', 'repos_url': 'https://api.github.com/users/prefiks/repos', 'events_url': 'https://api.github.com/users/prefiks/events{/privacy}', 'received_events_url': 'https://api.github.com/users/prefiks/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'prefiks', 'id': 61998, 'node_id': 'MDQ6VXNlcjYxOTk4', 'avatar_url': 'https://avatars0.githubusercontent.com/u/61998?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/prefiks', 'html_url': 'https://github.com/prefiks', 'followers_url': 'https://api.github.com/users/prefiks/followers', 'following_url': 'https://api.github.com/users/prefiks/following{/other_user}', 'gists_url': 'https://api.github.com/users/prefiks/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/prefiks/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/prefiks/subscriptions', 'organizations_url': 'https://api.github.com/users/prefiks/orgs', 'repos_url': 'https://api.github.com/users/prefiks/repos', 'events_url': 'https://api.github.com/users/prefiks/events{/privacy}', 'received_events_url': 'https://api.github.com/users/prefiks/received_events', 'type': 'User', 'site_admin': False}, {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}]",,2,2020-02-06T07:02:11Z,2020-02-07T11:12:10Z,2020-02-07T11:12:10Z,CONTRIBUTOR,,,"`conference.process-one.net
: Peer certificate rejected: certificate has expired; bouncing for 238 seconds`
(╯°□°)╯︵ ┻━┻",
550,https://api.github.com/repos/processone/ejabberd/issues/3162,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3162/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3162/comments,https://api.github.com/repos/processone/ejabberd/issues/3162/events,https://github.com/processone/ejabberd/issues/3162,559759675,MDU6SXNzdWU1NTk3NTk2NzU=,3162,Ejabberd 18.1.0 ignore accept_interval for C2S,"{'login': 'Adiii717', 'id': 23054298, 'node_id': 'MDQ6VXNlcjIzMDU0Mjk4', 'avatar_url': 'https://avatars3.githubusercontent.com/u/23054298?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Adiii717', 'html_url': 'https://github.com/Adiii717', 'followers_url': 'https://api.github.com/users/Adiii717/followers', 'following_url': 'https://api.github.com/users/Adiii717/following{/other_user}', 'gists_url': 'https://api.github.com/users/Adiii717/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Adiii717/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Adiii717/subscriptions', 'organizations_url': 'https://api.github.com/users/Adiii717/orgs', 'repos_url': 'https://api.github.com/users/Adiii717/repos', 'events_url': 'https://api.github.com/users/Adiii717/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Adiii717/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,7,2020-02-04T14:34:23Z,2020-02-04T16:20:30Z,2020-02-04T15:11:41Z,NONE,,,"## Environment
- ejabberd version: 18.1.0
- OS: Linux (Alpine)
- Installed from: docker image
## Configuration ejabberd.yml
```yaml
listen:
-
port: 5222
ip: ""::""
module: ejabberd_c2s
starttls: true
accept_interval: 100
...
```
## Bug description
Ejabberd does not crash but seems like its ignoring the `acept_interval` option.
```
00:06:28.546 [error] unknown listen option 'accept_interval' for 'ejabberd_c2s' will be likely ignored, available options are: access, shaper, certfile, ciphers, dhfile, cafile, protocol_options, tls, tls_compression, starttls, starttls_required, tls_verify, zlib, max_fsm_queue
```
",
551,https://api.github.com/repos/processone/ejabberd/issues/3161,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3161/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3161/comments,https://api.github.com/repos/processone/ejabberd/issues/3161/events,https://github.com/processone/ejabberd/issues/3161,559151002,MDU6SXNzdWU1NTkxNTEwMDI=,3161,Support XEP-0401: Easy User Onboarding,"{'login': 'licaon-kter', 'id': 2282799, 'node_id': 'MDQ6VXNlcjIyODI3OTk=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2282799?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/licaon-kter', 'html_url': 'https://github.com/licaon-kter', 'followers_url': 'https://api.github.com/users/licaon-kter/followers', 'following_url': 'https://api.github.com/users/licaon-kter/following{/other_user}', 'gists_url': 'https://api.github.com/users/licaon-kter/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/licaon-kter/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/licaon-kter/subscriptions', 'organizations_url': 'https://api.github.com/users/licaon-kter/orgs', 'repos_url': 'https://api.github.com/users/licaon-kter/repos', 'events_url': 'https://api.github.com/users/licaon-kter/events{/privacy}', 'received_events_url': 'https://api.github.com/users/licaon-kter/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,0,2020-02-03T15:19:59Z,2020-02-03T15:19:59Z,,CONTRIBUTOR,,,"https://xmpp.org/extensions/xep-0401.html
Supported already by clients: Conversations _(and forks, eg. the invitation only [Snikket](https://snikket.org/))_, Yaxim and servers: Prosody
Might need https://xmpp.org/extensions/xep-0379.html too :)",
552,https://api.github.com/repos/processone/ejabberd/issues/3160,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3160/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3160/comments,https://api.github.com/repos/processone/ejabberd/issues/3160/events,https://github.com/processone/ejabberd/issues/3160,558682759,MDU6SXNzdWU1NTg2ODI3NTk=,3160,[Docker] Update to 20.01,"{'login': 'Justinzobel', 'id': 1370117, 'node_id': 'MDQ6VXNlcjEzNzAxMTc=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/1370117?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Justinzobel', 'html_url': 'https://github.com/Justinzobel', 'followers_url': 'https://api.github.com/users/Justinzobel/followers', 'following_url': 'https://api.github.com/users/Justinzobel/following{/other_user}', 'gists_url': 'https://api.github.com/users/Justinzobel/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Justinzobel/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Justinzobel/subscriptions', 'organizations_url': 'https://api.github.com/users/Justinzobel/orgs', 'repos_url': 'https://api.github.com/users/Justinzobel/repos', 'events_url': 'https://api.github.com/users/Justinzobel/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Justinzobel/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",closed,False,"{'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, {'login': 'jsautret', 'id': 568898, 'node_id': 'MDQ6VXNlcjU2ODg5OA==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/568898?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jsautret', 'html_url': 'https://github.com/jsautret', 'followers_url': 'https://api.github.com/users/jsautret/followers', 'following_url': 'https://api.github.com/users/jsautret/following{/other_user}', 'gists_url': 'https://api.github.com/users/jsautret/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jsautret/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jsautret/subscriptions', 'organizations_url': 'https://api.github.com/users/jsautret/orgs', 'repos_url': 'https://api.github.com/users/jsautret/repos', 'events_url': 'https://api.github.com/users/jsautret/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jsautret/received_events', 'type': 'User', 'site_admin': False}]",,4,2020-02-02T11:29:29Z,2020-02-08T03:21:06Z,2020-02-07T14:46:16Z,NONE,,,"If someone can please update the docker image to the current release that would be great, thank you.",
553,https://api.github.com/repos/processone/ejabberd/issues/3159,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3159/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3159/comments,https://api.github.com/repos/processone/ejabberd/issues/3159/events,https://github.com/processone/ejabberd/issues/3159,558615041,MDU6SXNzdWU1NTg2MTUwNDE=,3159,Add support for SHA-256/512 and/or SHA-3 for password based authentication,"{'login': 'bowlofeggs', 'id': 354506, 'node_id': 'MDQ6VXNlcjM1NDUwNg==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/354506?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/bowlofeggs', 'html_url': 'https://github.com/bowlofeggs', 'followers_url': 'https://api.github.com/users/bowlofeggs/followers', 'following_url': 'https://api.github.com/users/bowlofeggs/following{/other_user}', 'gists_url': 'https://api.github.com/users/bowlofeggs/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/bowlofeggs/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/bowlofeggs/subscriptions', 'organizations_url': 'https://api.github.com/users/bowlofeggs/orgs', 'repos_url': 'https://api.github.com/users/bowlofeggs/repos', 'events_url': 'https://api.github.com/users/bowlofeggs/events{/privacy}', 'received_events_url': 'https://api.github.com/users/bowlofeggs/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",closed,False,,[],,3,2020-02-01T23:31:05Z,2020-02-03T15:53:24Z,2020-02-03T08:37:01Z,CONTRIBUTOR,,,"Greetings!
Is it possible to use SHA-256/512 or SHA-3 for password based authentication, in lieu of SHA-1 or MD5? When reading the docs here, it seems like SHA-256/512 are not supported:
https://docs.ejabberd.im/admin/configuration/#internal
If that is the case, I recommend adding a stronger hash to the list of supported authentication algorithms. SHA-1 is known to be weak, and it is thus not recommended to use it anymore.",
554,https://api.github.com/repos/processone/ejabberd/issues/3158,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3158/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3158/comments,https://api.github.com/repos/processone/ejabberd/issues/3158/events,https://github.com/processone/ejabberd/issues/3158,558097198,MDU6SXNzdWU1NTgwOTcxOTg=,3158,Adding one item into shared roster group results into >500 SQL queries,"{'login': 'sarsonj', 'id': 925756, 'node_id': 'MDQ6VXNlcjkyNTc1Ng==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/925756?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/sarsonj', 'html_url': 'https://github.com/sarsonj', 'followers_url': 'https://api.github.com/users/sarsonj/followers', 'following_url': 'https://api.github.com/users/sarsonj/following{/other_user}', 'gists_url': 'https://api.github.com/users/sarsonj/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/sarsonj/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/sarsonj/subscriptions', 'organizations_url': 'https://api.github.com/users/sarsonj/orgs', 'repos_url': 'https://api.github.com/users/sarsonj/repos', 'events_url': 'https://api.github.com/users/sarsonj/events{/privacy}', 'received_events_url': 'https://api.github.com/users/sarsonj/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/40', 'html_url': 'https://github.com/processone/ejabberd/milestone/40', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/40/labels', 'id': 5218332, 'node_id': 'MDk6TWlsZXN0b25lNTIxODMzMg==', 'number': 40, 'title': 'ejabberd 20.03', 'description': 'https://www.process-one.net/blog/ejabberd-20-03/', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 20, 'state': 'closed', 'created_at': '2020-03-19T15:58:57Z', 'updated_at': '2020-04-29T09:42:17Z', 'due_on': '2020-03-25T07:00:00Z', 'closed_at': '2020-03-26T10:03:11Z'}",2,2020-01-31T12:14:49Z,2020-04-29T09:32:08Z,2020-03-17T13:37:28Z,NONE,,,"## Environment
- ejabberd version: 19.9.1
- Erlang version: Erlang/OTP 19 [erts-8.2.1] [source] [64-bit] [smp:2:2] [async-threads:10] [kernel-poll:false]
- OS: Linux (Debian)
- Installed from: docker image
## Bug description
We are using shared roster groups - they are moderate sized (up to 20 members in each group), but we have many of groups (thousands). We realised, that adding and removing user from shared roster group is very slow, even with 20 users in group. The groups are very simple - no @all@ or no inclusion of other groups. Just plain users.
We are using SQL backend, that is recommended in ejabberd installation guide. But it looks, that shared roster group plugin is written very unoptimal to be used with SQL.
We attached SQL log as an example - for shared roster group, where we have 19 items and then we added 1 more item. The log shows queries executed when addind 1 user into shared roster group. As you can see in attached log, there is about 500 SQL queries just to add one user into shared roster group. It looks like, that the complexity grows with number of items in shared roster groups, I tried to add 1 user into group with 100 users the server just wrote Connection timeout.
## How to reproduce
1. install ejabberd with SQL backend (we are using Postgresql)
2. create Shared Roster Group in ejabberd admin
3. add 19 items
4. add one more item
Results when running step 4: hundred of SQL queries and about 10 seconds of execution time on normal server. With more items in group (like 100) the web interface timeouts.
Expected results: maximum tens of queries and no significant performance increate with more users in shared roster group
[shared-roster-group-add-sql-log.log](https://github.com/processone/ejabberd/files/4139196/shared-roster-group-add-sql-log.log)
",
555,https://api.github.com/repos/processone/ejabberd/issues/3157,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3157/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3157/comments,https://api.github.com/repos/processone/ejabberd/issues/3157/events,https://github.com/processone/ejabberd/issues/3157,557839383,MDU6SXNzdWU1NTc4MzkzODM=,3157,20.01 post/docs missing psql.new update block,"{'login': 'licaon-kter', 'id': 2282799, 'node_id': 'MDQ6VXNlcjIyODI3OTk=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2282799?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/licaon-kter', 'html_url': 'https://github.com/licaon-kter', 'followers_url': 'https://api.github.com/users/licaon-kter/followers', 'following_url': 'https://api.github.com/users/licaon-kter/following{/other_user}', 'gists_url': 'https://api.github.com/users/licaon-kter/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/licaon-kter/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/licaon-kter/subscriptions', 'organizations_url': 'https://api.github.com/users/licaon-kter/orgs', 'repos_url': 'https://api.github.com/users/licaon-kter/repos', 'events_url': 'https://api.github.com/users/licaon-kter/events{/privacy}', 'received_events_url': 'https://api.github.com/users/licaon-kter/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179053080, 'node_id': 'MDU6TGFiZWwxNzkwNTMwODA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Documentation', 'name': 'Kind:Documentation', 'color': '006b75', 'default': False, 'description': None}]",closed,False,"{'login': 'f055', 'id': 53429, 'node_id': 'MDQ6VXNlcjUzNDI5', 'avatar_url': 'https://avatars3.githubusercontent.com/u/53429?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/f055', 'html_url': 'https://github.com/f055', 'followers_url': 'https://api.github.com/users/f055/followers', 'following_url': 'https://api.github.com/users/f055/following{/other_user}', 'gists_url': 'https://api.github.com/users/f055/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/f055/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/f055/subscriptions', 'organizations_url': 'https://api.github.com/users/f055/orgs', 'repos_url': 'https://api.github.com/users/f055/repos', 'events_url': 'https://api.github.com/users/f055/events{/privacy}', 'received_events_url': 'https://api.github.com/users/f055/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'f055', 'id': 53429, 'node_id': 'MDQ6VXNlcjUzNDI5', 'avatar_url': 'https://avatars3.githubusercontent.com/u/53429?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/f055', 'html_url': 'https://github.com/f055', 'followers_url': 'https://api.github.com/users/f055/followers', 'following_url': 'https://api.github.com/users/f055/following{/other_user}', 'gists_url': 'https://api.github.com/users/f055/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/f055/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/f055/subscriptions', 'organizations_url': 'https://api.github.com/users/f055/orgs', 'repos_url': 'https://api.github.com/users/f055/repos', 'events_url': 'https://api.github.com/users/f055/events{/privacy}', 'received_events_url': 'https://api.github.com/users/f055/received_events', 'type': 'User', 'site_admin': False}, {'login': 'jsautret', 'id': 568898, 'node_id': 'MDQ6VXNlcjU2ODg5OA==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/568898?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jsautret', 'html_url': 'https://github.com/jsautret', 'followers_url': 'https://api.github.com/users/jsautret/followers', 'following_url': 'https://api.github.com/users/jsautret/following{/other_user}', 'gists_url': 'https://api.github.com/users/jsautret/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jsautret/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jsautret/subscriptions', 'organizations_url': 'https://api.github.com/users/jsautret/orgs', 'repos_url': 'https://api.github.com/users/jsautret/repos', 'events_url': 'https://api.github.com/users/jsautret/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jsautret/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/39', 'html_url': 'https://github.com/processone/ejabberd/milestone/39', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/39/labels', 'id': 5116012, 'node_id': 'MDk6TWlsZXN0b25lNTExNjAxMg==', 'number': 39, 'title': 'ejabberd 20.02', 'description': '', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 10, 'state': 'closed', 'created_at': '2020-02-18T08:48:31Z', 'updated_at': '2020-02-26T13:07:59Z', 'due_on': '2020-02-26T08:00:00Z', 'closed_at': '2020-02-26T13:07:59Z'}",5,2020-01-31T00:29:37Z,2020-02-19T10:08:03Z,2020-02-19T10:08:03Z,CONTRIBUTOR,,,"https://blog.process-one.net/ejabberd-20-01/
```
postgres=# \connect ejabberd
You are now connected to database ""ejabberd"" as user ""postgres"".
ejabberd=# ALTER TABLE oauth_client RENAME COLUMN client TO client_id;
ERROR: relation ""oauth_client"" does not exist
```
Umm, did I skip some upgrade step in ejabberd 19.xx or the blog post is missing the CREATE code block for ""If you are using the newer pg.new.sql schema:"" like MySQL has?
Hey, I'm right... https://github.com/processone/ejabberd/commit/5d549dca96c643345ba92e67504e67eb1b6b0681#diff-0227fb8e97e9895b7b5252cd1df5b2e3 not my fault 🙂",
556,https://api.github.com/repos/processone/ejabberd/issues/3156,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3156/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3156/comments,https://api.github.com/repos/processone/ejabberd/issues/3156/events,https://github.com/processone/ejabberd/pull/3156,557529715,MDExOlB1bGxSZXF1ZXN0MzY5MTAzODA1,3156,feat(fork): update,"{'login': 'Freyskeyd', 'id': 1394604, 'node_id': 'MDQ6VXNlcjEzOTQ2MDQ=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1394604?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Freyskeyd', 'html_url': 'https://github.com/Freyskeyd', 'followers_url': 'https://api.github.com/users/Freyskeyd/followers', 'following_url': 'https://api.github.com/users/Freyskeyd/following{/other_user}', 'gists_url': 'https://api.github.com/users/Freyskeyd/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Freyskeyd/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Freyskeyd/subscriptions', 'organizations_url': 'https://api.github.com/users/Freyskeyd/orgs', 'repos_url': 'https://api.github.com/users/Freyskeyd/repos', 'events_url': 'https://api.github.com/users/Freyskeyd/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Freyskeyd/received_events', 'type': 'User', 'site_admin': False}","[{'id': 1201869609, 'node_id': 'MDU6TGFiZWwxMjAxODY5NjA5', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/cla-missing', 'name': 'cla-missing', 'color': 'e11d21', 'default': False, 'description': 'Contributor needs to sign Contribution License Agreement'}]",closed,False,,[],,3,2020-01-30T14:27:32Z,2020-01-31T13:06:32Z,2020-01-31T09:05:10Z,NONE,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3156', 'html_url': 'https://github.com/processone/ejabberd/pull/3156', 'diff_url': 'https://github.com/processone/ejabberd/pull/3156.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3156.patch'}","Signed-off-by: Freyskeyd
",
557,https://api.github.com/repos/processone/ejabberd/issues/3155,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3155/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3155/comments,https://api.github.com/repos/processone/ejabberd/issues/3155/events,https://github.com/processone/ejabberd/issues/3155,557048559,MDU6SXNzdWU1NTcwNDg1NTk=,3155,mod_offline with auth_method jwt,"{'login': 'djha-effendi', 'id': 26117595, 'node_id': 'MDQ6VXNlcjI2MTE3NTk1', 'avatar_url': 'https://avatars3.githubusercontent.com/u/26117595?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/djha-effendi', 'html_url': 'https://github.com/djha-effendi', 'followers_url': 'https://api.github.com/users/djha-effendi/followers', 'following_url': 'https://api.github.com/users/djha-effendi/following{/other_user}', 'gists_url': 'https://api.github.com/users/djha-effendi/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/djha-effendi/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/djha-effendi/subscriptions', 'organizations_url': 'https://api.github.com/users/djha-effendi/orgs', 'repos_url': 'https://api.github.com/users/djha-effendi/repos', 'events_url': 'https://api.github.com/users/djha-effendi/events{/privacy}', 'received_events_url': 'https://api.github.com/users/djha-effendi/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,6,2020-01-29T18:49:01Z,2020-02-18T09:53:27Z,2020-02-18T09:53:27Z,NONE,,,"Hi,
When I use ""jwt"" as aut_method, mod_offline not working until I create an account for this user.
On sending message to a offline user ""johndoe@localhost"", I got ""service unavailable"" error.
But, if I create an account
`ejabberdctl register johndoe localhost passw0rd`
Then the message is stored.
I need to create an account for all my ""jwt"" users ?
The issue #1721 suggest to implement ""is_user_exists"" ... but how to fit that in jwt ?
I expected to use JWT to manage users account and enjoy IM with ejabberd ...
Thanks,",
558,https://api.github.com/repos/processone/ejabberd/issues/3154,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3154/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3154/comments,https://api.github.com/repos/processone/ejabberd/issues/3154/events,https://github.com/processone/ejabberd/pull/3154,555404546,MDExOlB1bGxSZXF1ZXN0MzY3MzUxODQ5,3154,getting latest changes,"{'login': 'navneetgupta', 'id': 12745312, 'node_id': 'MDQ6VXNlcjEyNzQ1MzEy', 'avatar_url': 'https://avatars3.githubusercontent.com/u/12745312?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/navneetgupta', 'html_url': 'https://github.com/navneetgupta', 'followers_url': 'https://api.github.com/users/navneetgupta/followers', 'following_url': 'https://api.github.com/users/navneetgupta/following{/other_user}', 'gists_url': 'https://api.github.com/users/navneetgupta/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/navneetgupta/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/navneetgupta/subscriptions', 'organizations_url': 'https://api.github.com/users/navneetgupta/orgs', 'repos_url': 'https://api.github.com/users/navneetgupta/repos', 'events_url': 'https://api.github.com/users/navneetgupta/events{/privacy}', 'received_events_url': 'https://api.github.com/users/navneetgupta/received_events', 'type': 'User', 'site_admin': False}","[{'id': 1201869609, 'node_id': 'MDU6TGFiZWwxMjAxODY5NjA5', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/cla-missing', 'name': 'cla-missing', 'color': 'e11d21', 'default': False, 'description': 'Contributor needs to sign Contribution License Agreement'}]",closed,False,,[],,1,2020-01-27T07:40:42Z,2020-01-27T07:40:51Z,2020-01-27T07:40:51Z,NONE,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3154', 'html_url': 'https://github.com/processone/ejabberd/pull/3154', 'diff_url': 'https://github.com/processone/ejabberd/pull/3154.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3154.patch'}","We are open to contributions for ejabberd, as GitHub pull requests (PR).
Here are a few points to consider before submitting your PR. (You can
remove the whole text after reading.)
1. Does this PR address an issue? Please reference it in the PR
description.
2. Have you properly described the proposed change?
3. Please make sure the change is atomic and does only touch the needed
modules. If you have other changes/fixes to provide, please submit
them as separate PRs.
4. If your change or new feature involves storage backends, did you make
sure your change works with all backends?
5. Do you provide tests? How can we check the behavior of the code?
6. Did you consider documentation changes in the
processone/docs.ejabberd.im repository?
",
559,https://api.github.com/repos/processone/ejabberd/issues/3153,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3153/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3153/comments,https://api.github.com/repos/processone/ejabberd/issues/3153/events,https://github.com/processone/ejabberd/issues/3153,555259427,MDU6SXNzdWU1NTUyNTk0Mjc=,3153,host configuration option of mod_http_upload,"{'login': 'Andy-2639', 'id': 13392804, 'node_id': 'MDQ6VXNlcjEzMzkyODA0', 'avatar_url': 'https://avatars0.githubusercontent.com/u/13392804?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Andy-2639', 'html_url': 'https://github.com/Andy-2639', 'followers_url': 'https://api.github.com/users/Andy-2639/followers', 'following_url': 'https://api.github.com/users/Andy-2639/following{/other_user}', 'gists_url': 'https://api.github.com/users/Andy-2639/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Andy-2639/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Andy-2639/subscriptions', 'organizations_url': 'https://api.github.com/users/Andy-2639/orgs', 'repos_url': 'https://api.github.com/users/Andy-2639/repos', 'events_url': 'https://api.github.com/users/Andy-2639/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Andy-2639/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-01-26T17:18:43Z,2020-01-27T12:09:52Z,2020-01-27T12:09:51Z,NONE,,,"## Environment
- OS: Windows 10 1909
- ejabberd: https://www.process-one.net/downloads/downloads-action.php?file=/ejabberd/20.01/ejabberd-20.01-windows.exe
## Description
I configured `mod_http_upload` without `host` option (= `upload.@HOST@`). In the log, the warning
```
2020-01-26 00:10:43.016 [warning] <0.328.0>@ejabberd_pkix:check_domain_certfiles:312 No certificate found matching upload.***
```
appears but http_upload works without problems with the conversations client.
When I configure `mod_http_upload` with `host: @HOST@`, I get the error message
```
2020-01-26 00:09:29.641 [critical] <0.105.0>@ejabberd_app:start:71 Failed to start ejabberd application: Invalid value of option modules->mod_http_upload->host: failed to reuse route '***' because it's already registered on a virtual host
```
Is this a XMPP limitation or an ejabberd limitation that I cannot just use `@HOST@` as value for the `host` option?
In the issue https://github.com/processone/ejabberd/issues/1386#issuecomment-359574752 , I found the information that the given domain only needs to exist for remote users. Could this information be put into the documentation (also for muc, pubsub, ...)?",
560,https://api.github.com/repos/processone/ejabberd/issues/3152,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3152/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3152/comments,https://api.github.com/repos/processone/ejabberd/issues/3152/events,https://github.com/processone/ejabberd/issues/3152,555257484,MDU6SXNzdWU1NTUyNTc0ODQ=,3152,Documentation: put_url in mod_http_upload documentation out-of-sync with implementation,"{'login': 'Andy-2639', 'id': 13392804, 'node_id': 'MDQ6VXNlcjEzMzkyODA0', 'avatar_url': 'https://avatars0.githubusercontent.com/u/13392804?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Andy-2639', 'html_url': 'https://github.com/Andy-2639', 'followers_url': 'https://api.github.com/users/Andy-2639/followers', 'following_url': 'https://api.github.com/users/Andy-2639/following{/other_user}', 'gists_url': 'https://api.github.com/users/Andy-2639/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Andy-2639/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Andy-2639/subscriptions', 'organizations_url': 'https://api.github.com/users/Andy-2639/orgs', 'repos_url': 'https://api.github.com/users/Andy-2639/repos', 'events_url': 'https://api.github.com/users/Andy-2639/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Andy-2639/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/39', 'html_url': 'https://github.com/processone/ejabberd/milestone/39', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/39/labels', 'id': 5116012, 'node_id': 'MDk6TWlsZXN0b25lNTExNjAxMg==', 'number': 39, 'title': 'ejabberd 20.02', 'description': '', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 10, 'state': 'closed', 'created_at': '2020-02-18T08:48:31Z', 'updated_at': '2020-02-26T13:07:59Z', 'due_on': '2020-02-26T08:00:00Z', 'closed_at': '2020-02-26T13:07:59Z'}",2,2020-01-26T17:04:11Z,2020-02-21T16:08:54Z,2020-01-27T13:54:05Z,NONE,,,"## Environment
- ejabberd version: master
## Bug description
src/mod_http_upload.erl:219: `{put_url, <<""https://"", Host/binary, "":5443/upload"">>},`
src/mod_http_upload.erl:323 (documentation) `""The default value is \""http://@HOST@:5444\""."")}},`
I think the URL in the documentation should be `https://@HOST@:5443/upload` (http vs. https and port number).",
561,https://api.github.com/repos/processone/ejabberd/issues/3151,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3151/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3151/comments,https://api.github.com/repos/processone/ejabberd/issues/3151/events,https://github.com/processone/ejabberd/issues/3151,555080976,MDU6SXNzdWU1NTUwODA5NzY=,3151,LDAPs not working on w12k?,"{'login': 'Snowmanko', 'id': 25300463, 'node_id': 'MDQ6VXNlcjI1MzAwNDYz', 'avatar_url': 'https://avatars0.githubusercontent.com/u/25300463?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Snowmanko', 'html_url': 'https://github.com/Snowmanko', 'followers_url': 'https://api.github.com/users/Snowmanko/followers', 'following_url': 'https://api.github.com/users/Snowmanko/following{/other_user}', 'gists_url': 'https://api.github.com/users/Snowmanko/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Snowmanko/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Snowmanko/subscriptions', 'organizations_url': 'https://api.github.com/users/Snowmanko/orgs', 'repos_url': 'https://api.github.com/users/Snowmanko/repos', 'events_url': 'https://api.github.com/users/Snowmanko/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Snowmanko/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,9,2020-01-25T12:40:27Z,2020-01-27T12:07:48Z,2020-01-27T12:07:48Z,CONTRIBUTOR,,,"Hi,
we have recently upgraded our Windows Servers (Active Directory) from 2008 to 2012 and ejabberd suddenly stoped working. Can someone identify this issue?
`2020-01-25 13:26:54.093 [error] <0.483.0>@eldap:connect_bind:1073 LDAP connection to 10.1.2.3:636 failed: TLS connection is closed`
ejabberd configuration was not changed. I've searched for everything and I could not make it work.
`OS is Debian 9, ejabberd 18.09-2~bpo9+1, openssl 1.1.0l-1~deb9u1 `
```
host_config:
""jabber.domain.com"":
auth_method: ldap
language: ""cs""
ldap_base: ""[redacted]""
ldap_encrypt: tls
ldap_filter: ""[redacted]""
ldap_uids: [""sAMAccountName""]
ldap_password: ""[redacted]""
ldap_port: 636
ldap_rootdn: ""[redacted]""
ldap_servers:
- ""10.1.2.3""
```",
562,https://api.github.com/repos/processone/ejabberd/issues/3150,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3150/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3150/comments,https://api.github.com/repos/processone/ejabberd/issues/3150/events,https://github.com/processone/ejabberd/issues/3150,555032608,MDU6SXNzdWU1NTUwMzI2MDg=,3150,External eimp process has terminated unexpectedly,"{'login': 'protist', 'id': 646668, 'node_id': 'MDQ6VXNlcjY0NjY2OA==', 'avatar_url': 'https://avatars1.githubusercontent.com/u/646668?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/protist', 'html_url': 'https://github.com/protist', 'followers_url': 'https://api.github.com/users/protist/followers', 'following_url': 'https://api.github.com/users/protist/following{/other_user}', 'gists_url': 'https://api.github.com/users/protist/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/protist/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/protist/subscriptions', 'organizations_url': 'https://api.github.com/users/protist/orgs', 'repos_url': 'https://api.github.com/users/protist/repos', 'events_url': 'https://api.github.com/users/protist/events{/privacy}', 'received_events_url': 'https://api.github.com/users/protist/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,8,2020-01-25T02:41:09Z,2020-05-26T03:24:52Z,2020-05-26T03:24:52Z,NONE,,,"## Environment
- ejabberd version: 20.01
- Erlang version: `erl +V` -> `Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.6`
- OS: Linux (ArchARM)
- Installed from: distro package
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```
hosts:
- ""foo.dynu.com""
loglevel: info
certfiles:
- /etc/ejabberd/ejabberd.pem
listen:
-
port: 5222
ip: ""::""
module: ejabberd_c2s
max_stanza_size: 262144
shaper: c2s_shaper
access: c2s
starttls_required: true
-
port: 5269
ip: ""::""
module: ejabberd_s2s_in
max_stanza_size: 524288
-
port: 5443
ip: ""::""
module: ejabberd_http
tls: true
request_handlers:
/admin: ejabberd_web_admin
/api: mod_http_api
/bosh: mod_bosh
/captcha: ejabberd_captcha
/upload: mod_http_upload
/ws: ejabberd_http_ws
-
port: 5280
ip: ""::""
module: ejabberd_http
request_handlers:
/admin: ejabberd_web_admin
/.well-known/acme-challenge: ejabberd_acme
-
port: 1883
ip: ""::""
module: mod_mqtt
backlog: 1000
s2s_use_starttls: optional
acl:
local:
user_regexp: """"
loopback:
ip:
- 127.0.0.0/8
- ::1/128
access_rules:
local:
allow: local
c2s:
deny: blocked
allow: all
announce:
allow: admin
configure:
allow: admin
muc_create:
allow: local
pubsub_createnode:
allow: local
trusted_network:
allow: loopback
api_permissions:
""console commands"":
from:
- ejabberd_ctl
who: all
what: ""*""
""admin access"":
who:
access:
allow:
acl: loopback
acl: admin
oauth:
scope: ""ejabberd:admin""
access:
allow:
acl: loopback
acl: admin
what:
- ""*""
- ""!stop""
- ""!start""
""public commands"":
who:
ip: 127.0.0.1/8
what:
- status
- connected_users_number
shaper:
normal: 1000
fast: 50000
shaper_rules:
max_user_sessions: 10
max_user_offline_messages:
5000: admin
100: all
c2s_shaper:
none: admin
normal: all
s2s_shaper: fast
modules:
mod_adhoc: {}
mod_admin_extra: {}
mod_announce:
access: announce
mod_avatar: {}
mod_blocking: {}
mod_bosh: {}
mod_caps: {}
mod_carboncopy: {}
mod_client_state: {}
mod_configure: {}
mod_disco: {}
mod_fail2ban: {}
mod_http_api: {}
mod_http_upload:
put_url: https://@HOST@:5443/upload
mod_last: {}
mod_mam:
assume_mam_usage: true
default: always
mod_mqtt: {}
mod_muc:
access:
- allow
access_admin:
- allow: admin
access_create: muc_create
access_persistent: muc_create
access_mam:
- allow
default_room_options:
mam: true
mod_muc_admin: {}
mod_offline:
access_max_user_messages: max_user_offline_messages
mod_ping: {}
mod_privacy: {}
mod_private: {}
mod_proxy65:
access: local
max_connections: 5
mod_pubsub:
access_createnode: pubsub_createnode
plugins:
- flat
- pep
force_node_config:
storage:bookmarks:
access_model: whitelist
mod_push: {}
mod_push_keepalive: {}
mod_register:
ip_access: trusted_network
mod_roster:
versioning: true
mod_s2s_dialback: {}
mod_shared_roster: {}
mod_stream_mgmt:
resend_on_timeout: if_offline
mod_vcard: {}
mod_vcard_xupdate: {}
mod_version:
show_os: false
```
## Errors from `/var/log/ejabberd/error.log`
```
2020-01-25 13:23:10.052145+11:00 [error] <0.180.0> External eimp process (pid=3039) has terminated unexpectedly, restarting in a few seconds
2020-01-25 13:23:10.053712+11:00 [error] <0.184.0> External eimp process (pid=3041) has terminated unexpectedly, restarting in a few seconds
2020-01-25 13:23:10.055076+11:00 [error] <0.186.0> External eimp process (pid=3042) has terminated unexpectedly, restarting in a few seconds
2020-01-25 13:23:10.057256+11:00 [error] <0.182.0> External eimp process (pid=3040) has terminated unexpectedly, restarting in a few seconds
2020-01-25 13:23:10.067424+11:00 [error] <0.477.0>@gen_server:error_info/7:889 ** Generic server memsup terminating
** Last message in was {'EXIT',<0.478.0>,{port_died,normal}}
** When Server state == [{data,[{""Timeout"",60000}]},
{items,{""Memory Usage"",
[{""Allocated"",3307241472},
{""Total"",4104364032}]}},
{items,{""Worst Memory User"",
[{""Pid"",<0.49.0>},{""Memory"",27622}]}}]
** Reason for termination ==
** {port_died,normal}
2020-01-25 13:23:10.069892+11:00 [error] <0.477.0>@proc_lib:crash_report/4:508 CRASH REPORT:
crasher:
initial call: memsup:init/1
pid: <0.477.0>
registered_name: memsup
exception exit: {port_died,normal}
in function gen_server:handle_common_reply/8 (gen_server.erl, line 751)
ancestors: [os_mon_sup,<0.475.0>]
message_queue_len: 0
messages: []
links: [<0.476.0>]
dictionary: [{system_memory_high_watermark,set}]
trap_exit: true
status: running
heap_size: 2586
stack_size: 27
reductions: 41064
neighbours:
2020-01-25 13:23:10.082059+11:00 [error] <0.476.0>@supervisor:do_restart/3:701 SUPERVISOR REPORT:
supervisor: {local,os_mon_sup}
errorContext: child_terminated
reason: {port_died,normal}
offender: [{pid,<0.477.0>},
{id,memsup},
{mfargs,{memsup,start_link,[]}},
{restart_type,permanent},
{shutdown,2000},
{child_type,worker}]
2020-01-25 13:23:12.145859+11:00 [error] <0.86.0>@supervisor:do_terminate/2:838 SUPERVISOR REPORT:
supervisor: {local,sasl_safe_sup}
errorContext: shutdown_error
reason: killed
offender: [{pid,<0.87.0>},
{id,alarm_handler},
{mfargs,{alarm_handler,start_link,[]}},
{restart_type,permanent},
{shutdown,2000},
{child_type,worker}]
```
## Bug description
I can't get ejabberd to start. I previously had it working on my server, but after moving from Debian to Arch, it no longer starts. This also involved upgrading versions, and moving from a self-signed certificate to Let's Encrypt.
## Troubleshooting
I found several other issues here mentioning the eimp errors.
I [checked for missing libraries](https://github.com/processone/ejabberd/issues/2362), but all appeared to be present.
```
$ ldd /usr/lib/eimp-1.0.13/priv/bin/eimp
linux-vdso.so.1 (0xbeedf000)
libwebp.so.7 => /usr/lib/libwebp.so.7 (0xb6f00000)
libpng16.so.16 => /usr/lib/libpng16.so.16 (0xb6ec3000)
libjpeg.so.8 => /usr/lib/libjpeg.so.8 (0xb6e77000)
libgd.so.3 => /usr/lib/libgd.so.3 (0xb6e10000)
libpthread.so.0 => /usr/lib/libpthread.so.0 (0xb6de5000)
libc.so.6 => /usr/lib/libc.so.6 (0xb6c96000)
/lib/ld-linux-armhf.so.3 => /usr/lib/ld-linux-armhf.so.3 (0xb6f90000)
libm.so.6 => /usr/lib/libm.so.6 (0xb6c27000)
libz.so.1 => /usr/lib/libz.so.1 (0xb6c02000)
libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0xb6bb8000)
libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0xb6b03000)
libXpm.so.4 => /usr/lib/libXpm.so.4 (0xb6ae4000)
libX11.so.6 => /usr/lib/libX11.so.6 (0xb69c3000)
libtiff.so.5 => /usr/lib/libtiff.so.5 (0xb693d000)
libexpat.so.1 => /usr/lib/libexpat.so.1 (0xb68f9000)
libbz2.so.1.0 => /usr/lib/libbz2.so.1.0 (0xb68d9000)
libharfbuzz.so.0 => /usr/lib/libharfbuzz.so.0 (0xb67dd000)
libxcb.so.1 => /usr/lib/libxcb.so.1 (0xb67ad000)
libdl.so.2 => /usr/lib/libdl.so.2 (0xb679a000)
libzstd.so.1 => /usr/lib/libzstd.so.1 (0xb66fa000)
liblzma.so.5 => /usr/lib/liblzma.so.5 (0xb66c9000)
libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0xb65b6000)
libgraphite2.so.3 => /usr/lib/libgraphite2.so.3 (0xb658b000)
libXau.so.6 => /usr/lib/libXau.so.6 (0xb6578000)
libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0xb6563000)
libpcre.so.1 => /usr/lib/libpcre.so.1 (0xb64ea000)
```
I can confirm that the [file is executable](https://github.com/processone/ejabberd/issues/2016#issuecomment-332163085).
I tried [running eimp directly from the binary](https://github.com/processone/ejabberd/issues/2497#issuecomment-401625604), but this just stalled for several minutes until I hit ctrl+c.
```
$ /usr/lib/eimp-1.0.13/priv/bin/eimp
```
I tried [replacing the eimp binary with one I manually built](https://github.com/processone/ejabberd/issues/2016#issuecomment-377285343), but this didn't allow ejabberd to start, nor work when launched manually.",
563,https://api.github.com/repos/processone/ejabberd/issues/3149,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3149/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3149/comments,https://api.github.com/repos/processone/ejabberd/issues/3149/events,https://github.com/processone/ejabberd/issues/3149,555030974,MDU6SXNzdWU1NTUwMzA5NzQ=,3149,2020 New Year copyright update in all ProcessOne projects,"{'login': 'Neustradamus', 'id': 104737, 'node_id': 'MDQ6VXNlcjEwNDczNw==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/104737?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Neustradamus', 'html_url': 'https://github.com/Neustradamus', 'followers_url': 'https://api.github.com/users/Neustradamus/followers', 'following_url': 'https://api.github.com/users/Neustradamus/following{/other_user}', 'gists_url': 'https://api.github.com/users/Neustradamus/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Neustradamus/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Neustradamus/subscriptions', 'organizations_url': 'https://api.github.com/users/Neustradamus/orgs', 'repos_url': 'https://api.github.com/users/Neustradamus/repos', 'events_url': 'https://api.github.com/users/Neustradamus/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Neustradamus/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/39', 'html_url': 'https://github.com/processone/ejabberd/milestone/39', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/39/labels', 'id': 5116012, 'node_id': 'MDk6TWlsZXN0b25lNTExNjAxMg==', 'number': 39, 'title': 'ejabberd 20.02', 'description': '', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 10, 'state': 'closed', 'created_at': '2020-02-18T08:48:31Z', 'updated_at': '2020-02-26T13:07:59Z', 'due_on': '2020-02-26T08:00:00Z', 'closed_at': '2020-02-26T13:07:59Z'}",5,2020-01-25T02:23:11Z,2020-02-21T16:09:15Z,2020-01-29T11:40:21Z,NONE,,,"Like each year, I request the new year copyright update for all ProcessOne projects ;)
Happy New Year 2020!",
564,https://api.github.com/repos/processone/ejabberd/issues/3148,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3148/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3148/comments,https://api.github.com/repos/processone/ejabberd/issues/3148/events,https://github.com/processone/ejabberd/issues/3148,550711097,MDU6SXNzdWU1NTA3MTEwOTc=,3148,External XMPP components communication issue,"{'login': 'gal1990', 'id': 17745509, 'node_id': 'MDQ6VXNlcjE3NzQ1NTA5', 'avatar_url': 'https://avatars3.githubusercontent.com/u/17745509?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/gal1990', 'html_url': 'https://github.com/gal1990', 'followers_url': 'https://api.github.com/users/gal1990/followers', 'following_url': 'https://api.github.com/users/gal1990/following{/other_user}', 'gists_url': 'https://api.github.com/users/gal1990/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/gal1990/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/gal1990/subscriptions', 'organizations_url': 'https://api.github.com/users/gal1990/orgs', 'repos_url': 'https://api.github.com/users/gal1990/repos', 'events_url': 'https://api.github.com/users/gal1990/events{/privacy}', 'received_events_url': 'https://api.github.com/users/gal1990/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,9,2020-01-16T10:22:33Z,2020-02-25T10:44:22Z,2020-02-25T10:44:21Z,NONE,,,"## Environment
- ejabberd version: 18.12,1
- Erlang version: `erl +V`
- OS: Linux (Centos 7)
- Installed from: source | distro package | official deb/rpm | official binary installer | other
## Configuration file is attached
[ejabberd_yml.txt](https://github.com/processone/ejabberd/files/4070560/ejabberd_yml.txt)
## Errors from error.log/crash.log
No errors
## Bug description
I implemented 2 external components which send messages to each other throw the ejabberd server.
My problem is that the server doesn't deliver all off messages from the sender XMPP component to the receiver external XMPP component.
The messages which are not sent to the destination component, the sender component receives back from the server.
Could somebody help me please to solve this issue? What I am doing wrong?
Thank you for the answer!
Kindly regards
",
565,https://api.github.com/repos/processone/ejabberd/issues/3147,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3147/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3147/comments,https://api.github.com/repos/processone/ejabberd/issues/3147/events,https://github.com/processone/ejabberd/issues/3147,550195005,MDU6SXNzdWU1NTAxOTUwMDU=,3147,How to request API with basic auth?,"{'login': 'xdnroot', 'id': 47464217, 'node_id': 'MDQ6VXNlcjQ3NDY0MjE3', 'avatar_url': 'https://avatars2.githubusercontent.com/u/47464217?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/xdnroot', 'html_url': 'https://github.com/xdnroot', 'followers_url': 'https://api.github.com/users/xdnroot/followers', 'following_url': 'https://api.github.com/users/xdnroot/following{/other_user}', 'gists_url': 'https://api.github.com/users/xdnroot/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/xdnroot/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/xdnroot/subscriptions', 'organizations_url': 'https://api.github.com/users/xdnroot/orgs', 'repos_url': 'https://api.github.com/users/xdnroot/repos', 'events_url': 'https://api.github.com/users/xdnroot/events{/privacy}', 'received_events_url': 'https://api.github.com/users/xdnroot/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179053760, 'node_id': 'MDU6TGFiZWwxNzkwNTM3NjA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Note:Needs%20more%20info', 'name': 'Note:Needs more info', 'color': 'c7def8', 'default': False, 'description': None}]",closed,False,,[],,1,2020-01-15T13:44:32Z,2020-02-21T16:06:36Z,2020-02-21T16:06:36Z,NONE,,,"Hi, I didn't see example request parameter that needed in order to exec api command with basic auth in ejabberd documentation, except: [https://docs.ejabberd.im/developer/ejabberd-api/admin-api/](https://docs.ejabberd.im/developer/ejabberd-api/admin-api/)
And my question is:
> what are the parameters needed to get data from API request with Basic Auth?
I tried to request to _https://mydomain.com/api/check_account_ like this, HTTP Header
`X-Admin: true`
`Authorization: Basic`
And with data json:
`{
""user"": ""user"",
""host"": ""mydomain.com""
}`
This is the response frome that request:
`{""status"":""error"",""code"":10,""message"":""You are not authorized to call this command.""}`
In my config yml file, I just set default configuratiion to allow admin (user@mydomain.com is admin):
```
api_permissions:
""console commands"":
from:
- ejabberd_ctl
who: all
what: ""*""
""admin access"":
who:
access:
allow:
acl: globalip
acl: admin
oauth:
scope: ""ejabberd:admin""
access:
allow:
acl: loopback
acl: admin
what:
- ""*""
- ""!stop""
- ""!start""
```
",
566,https://api.github.com/repos/processone/ejabberd/issues/3146,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3146/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3146/comments,https://api.github.com/repos/processone/ejabberd/issues/3146/events,https://github.com/processone/ejabberd/issues/3146,549632778,MDU6SXNzdWU1NDk2MzI3Nzg=,3146,NS_CARBONS_RULES_0 is not defined and prevent ejabberd to compile,"{'login': 'otiteca971', 'id': 30328367, 'node_id': 'MDQ6VXNlcjMwMzI4MzY3', 'avatar_url': 'https://avatars0.githubusercontent.com/u/30328367?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/otiteca971', 'html_url': 'https://github.com/otiteca971', 'followers_url': 'https://api.github.com/users/otiteca971/followers', 'following_url': 'https://api.github.com/users/otiteca971/following{/other_user}', 'gists_url': 'https://api.github.com/users/otiteca971/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/otiteca971/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/otiteca971/subscriptions', 'organizations_url': 'https://api.github.com/users/otiteca971/orgs', 'repos_url': 'https://api.github.com/users/otiteca971/repos', 'events_url': 'https://api.github.com/users/otiteca971/events{/privacy}', 'received_events_url': 'https://api.github.com/users/otiteca971/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,"{'login': 'weiss', 'id': 71850, 'node_id': 'MDQ6VXNlcjcxODUw', 'avatar_url': 'https://avatars1.githubusercontent.com/u/71850?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/weiss', 'html_url': 'https://github.com/weiss', 'followers_url': 'https://api.github.com/users/weiss/followers', 'following_url': 'https://api.github.com/users/weiss/following{/other_user}', 'gists_url': 'https://api.github.com/users/weiss/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/weiss/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/weiss/subscriptions', 'organizations_url': 'https://api.github.com/users/weiss/orgs', 'repos_url': 'https://api.github.com/users/weiss/repos', 'events_url': 'https://api.github.com/users/weiss/events{/privacy}', 'received_events_url': 'https://api.github.com/users/weiss/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'weiss', 'id': 71850, 'node_id': 'MDQ6VXNlcjcxODUw', 'avatar_url': 'https://avatars1.githubusercontent.com/u/71850?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/weiss', 'html_url': 'https://github.com/weiss', 'followers_url': 'https://api.github.com/users/weiss/followers', 'following_url': 'https://api.github.com/users/weiss/following{/other_user}', 'gists_url': 'https://api.github.com/users/weiss/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/weiss/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/weiss/subscriptions', 'organizations_url': 'https://api.github.com/users/weiss/orgs', 'repos_url': 'https://api.github.com/users/weiss/repos', 'events_url': 'https://api.github.com/users/weiss/events{/privacy}', 'received_events_url': 'https://api.github.com/users/weiss/received_events', 'type': 'User', 'site_admin': False}]",,3,2020-01-14T15:15:07Z,2020-01-15T13:57:01Z,2020-01-15T13:57:01Z,NONE,,,"## Environment
- ejabberd version: master
- Erlang version: Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.6.1
- OS: Linux (Debian)
- Installed from: source
## Bug description
Compiling 265 files (.erl)
src/mod_pubsub.erl:35: Warning: undefined callback function mod_doc/0 (behaviour 'gen_mod')
src/mod_shared_roster_ldap.erl:31: Warning: undefined callback function mod_doc/0 (behaviour 'gen_mod')
src/mod_carboncopy.erl:80: undefined macro 'NS_CARBONS_RULES_0'
src/mod_carboncopy.erl:37: function disco_features/5 undefined
src/mod_carboncopy.erl:74: spec for undefined function disco_features/5
",
567,https://api.github.com/repos/processone/ejabberd/issues/3145,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3145/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3145/comments,https://api.github.com/repos/processone/ejabberd/issues/3145/events,https://github.com/processone/ejabberd/issues/3145,549578224,MDU6SXNzdWU1NDk1NzgyMjQ=,3145,Oracle ODBC Support,"{'login': 'stealthgun', 'id': 129263, 'node_id': 'MDQ6VXNlcjEyOTI2Mw==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/129263?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/stealthgun', 'html_url': 'https://github.com/stealthgun', 'followers_url': 'https://api.github.com/users/stealthgun/followers', 'following_url': 'https://api.github.com/users/stealthgun/following{/other_user}', 'gists_url': 'https://api.github.com/users/stealthgun/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/stealthgun/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/stealthgun/subscriptions', 'organizations_url': 'https://api.github.com/users/stealthgun/orgs', 'repos_url': 'https://api.github.com/users/stealthgun/repos', 'events_url': 'https://api.github.com/users/stealthgun/events{/privacy}', 'received_events_url': 'https://api.github.com/users/stealthgun/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-01-14T13:46:13Z,2020-01-26T20:57:00Z,2020-01-23T12:20:01Z,NONE,,,"Is support for an Oracle DB been dropped? I cannot find any information about the newest Oracle Schema anymore in the AQL directory of the repo.
Does anyone has more information about this?",
568,https://api.github.com/repos/processone/ejabberd/issues/3144,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3144/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3144/comments,https://api.github.com/repos/processone/ejabberd/issues/3144/events,https://github.com/processone/ejabberd/issues/3144,549323874,MDU6SXNzdWU1NDkzMjM4NzQ=,3144,Ejabberd throws 'deps/.got' exception while installation,"{'login': 'dineshrawat11', 'id': 52068431, 'node_id': 'MDQ6VXNlcjUyMDY4NDMx', 'avatar_url': 'https://avatars3.githubusercontent.com/u/52068431?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dineshrawat11', 'html_url': 'https://github.com/dineshrawat11', 'followers_url': 'https://api.github.com/users/dineshrawat11/followers', 'following_url': 'https://api.github.com/users/dineshrawat11/following{/other_user}', 'gists_url': 'https://api.github.com/users/dineshrawat11/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dineshrawat11/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dineshrawat11/subscriptions', 'organizations_url': 'https://api.github.com/users/dineshrawat11/orgs', 'repos_url': 'https://api.github.com/users/dineshrawat11/repos', 'events_url': 'https://api.github.com/users/dineshrawat11/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dineshrawat11/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,4,2020-01-14T04:26:32Z,2020-01-14T11:38:38Z,2020-01-14T11:38:26Z,NONE,,,"## Environment
- ejabberd version: 19
- Erlang version:
`Erlang/OTP 22 [erts-10.6.1] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:1]
Eshell V10.6.1
`
- OS: Linux (Ubuntu 16)
## Steps followed
- git clone ...
- ./autogen.sh
- ./configure --enable-mysql
Result:
--------
`
$ ./configure --enable-mysql
checking whether make sets $(MAKE)... yes
checking for a BSD-compatible install... /usr/bin/install -c
checking for a sed that does not truncate output... /bin/sed
checking for erl... /usr/bin/erl
checking for erlc... /usr/bin/erlc
checking for epmd... /usr/bin/epmd
checking for erl... /usr/bin/erl
checking for erlc... /usr/bin/erlc
checking Erlang/OTP version... ok
checking for Erlang/OTP root directory... /usr/lib/erlang
checking for escript... /usr/lib/erlang/bin/escript
checking for make... make
configure: creating ./config.status
config.status: creating Makefile
config.status: creating vars.config
config.status: creating src/ejabberd.app.src
`
- make
## Errors while installation
The last command make throws error everytime-
`
rm -rf deps/.got
rm -rf deps/.built
mkdir -p deps
/usr/lib/erlang/bin/escript rebar get-deps && :> deps/.got
WARN: Directory expected to be an app dir, but no app file found
in ebin/ or src/:
/media/dineshrawat/data/node-js/projects/ejabberd/deps/pkix
==> goldrush (get-deps)
==> lager (get-deps)
==> p1_utils (get-deps)
==> cache_tab (get-deps)
==> fast_tls (get-deps)
==> stringprep (get-deps)
==> fast_xml (get-deps)
==> unicode_util_compat (get-deps)
==> idna (get-deps)
==> ezlib (get-deps)
==> xmpp (get-deps)
==> fast_yaml (get-deps)
==> yconf (get-deps)
==> jiffy (get-deps)
WARN: Missing plugins: [rebar3_hex]
==> p1_oauth2 (get-deps)
==> rel (get-deps)
==> ejabberd (get-deps)
WARN: Directory expected to be an app dir, but no app file found
in ebin/ or src/:
/media/dineshrawat/data/node-js/projects/ejabberd/deps/pkix
WARN: Directory expected to be an app dir, but no app file found
in ebin/ or src/:
/media/dineshrawat/data/node-js/projects/ejabberd/deps/pkix
ERROR: Dependency dir /media/dineshrawat/data/node-js/projects/ejabberd/deps/pkix failed application validation with reason:
{missing_app_file,""/media/dineshrawat/data/node-js/projects/ejabberd/deps/pkix""}.
ERROR: 'get-deps' failed while processing /media/dineshrawat/data/node-js/projects/ejabberd: rebar_abort
Makefile:105: recipe for target 'deps/.got' failed
make: *** [deps/.got] Error 1
`
[Stackoverflow link](https://stackoverflow.com/q/59717019/3704054)",
569,https://api.github.com/repos/processone/ejabberd/issues/3143,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3143/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3143/comments,https://api.github.com/repos/processone/ejabberd/issues/3143/events,https://github.com/processone/ejabberd/issues/3143,548052494,MDU6SXNzdWU1NDgwNTI0OTQ=,3143,mod_sip.erl:381: undefined macro 'T/1',"{'login': 'yandrey', 'id': 76512, 'node_id': 'MDQ6VXNlcjc2NTEy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/76512?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/yandrey', 'html_url': 'https://github.com/yandrey', 'followers_url': 'https://api.github.com/users/yandrey/followers', 'following_url': 'https://api.github.com/users/yandrey/following{/other_user}', 'gists_url': 'https://api.github.com/users/yandrey/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/yandrey/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/yandrey/subscriptions', 'organizations_url': 'https://api.github.com/users/yandrey/orgs', 'repos_url': 'https://api.github.com/users/yandrey/repos', 'events_url': 'https://api.github.com/users/yandrey/events{/privacy}', 'received_events_url': 'https://api.github.com/users/yandrey/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,5,2020-01-10T12:26:42Z,2020-01-11T19:42:56Z,2020-01-11T19:42:56Z,NONE,,,"## Environment
- ejabberd version: master
make
...
==> ejabberd (compile)
src/mod_sip.erl:381: undefined macro 'T/1'
src/mod_sip.erl:32: function mod_doc/0 undefined
Compiling src/mod_sip.erl failed:
ERROR: compile failed while processing /home/andrey/dev/ejabberd: rebar_abort
Makefile:112: recipe for target 'src' failed
make: *** [src] Error 1
the -include(""translate.hrl""). is inside -ifndef(SIP)...endif but mod_doc() with ?T macro is outside.
maybe just to push that mod_sip ... :slightly_smiling_face:
",
570,https://api.github.com/repos/processone/ejabberd/issues/3142,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3142/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3142/comments,https://api.github.com/repos/processone/ejabberd/issues/3142/events,https://github.com/processone/ejabberd/pull/3142,548026739,MDExOlB1bGxSZXF1ZXN0MzYxNDA3MjYx,3142,Update Turkish Language,"{'login': 'kenanilgun', 'id': 3466008, 'node_id': 'MDQ6VXNlcjM0NjYwMDg=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/3466008?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/kenanilgun', 'html_url': 'https://github.com/kenanilgun', 'followers_url': 'https://api.github.com/users/kenanilgun/followers', 'following_url': 'https://api.github.com/users/kenanilgun/following{/other_user}', 'gists_url': 'https://api.github.com/users/kenanilgun/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/kenanilgun/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/kenanilgun/subscriptions', 'organizations_url': 'https://api.github.com/users/kenanilgun/orgs', 'repos_url': 'https://api.github.com/users/kenanilgun/repos', 'events_url': 'https://api.github.com/users/kenanilgun/events{/privacy}', 'received_events_url': 'https://api.github.com/users/kenanilgun/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]",,2,2020-01-10T11:27:25Z,2020-01-10T11:46:36Z,2020-01-10T11:46:36Z,NONE,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3142', 'html_url': 'https://github.com/processone/ejabberd/pull/3142', 'diff_url': 'https://github.com/processone/ejabberd/pull/3142.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3142.patch'}","We are open to contributions for ejabberd, as GitHub pull requests (PR).
Here are a few points to consider before submitting your PR. (You can
remove the whole text after reading.)
1. Does this PR address an issue? Please reference it in the PR
description.
2. Have you properly described the proposed change?
3. Please make sure the change is atomic and does only touch the needed
modules. If you have other changes/fixes to provide, please submit
them as separate PRs.
4. If your change or new feature involves storage backends, did you make
sure your change works with all backends?
5. Do you provide tests? How can we check the behavior of the code?
6. Did you consider documentation changes in the
processone/docs.ejabberd.im repository?
",
571,https://api.github.com/repos/processone/ejabberd/issues/3141,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3141/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3141/comments,https://api.github.com/repos/processone/ejabberd/issues/3141/events,https://github.com/processone/ejabberd/issues/3141,546212292,MDU6SXNzdWU1NDYyMTIyOTI=,3141,"API created muc_room , phone sdk can not fetch it's options","{'login': 'arpitvaishnav', 'id': 255244, 'node_id': 'MDQ6VXNlcjI1NTI0NA==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/255244?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/arpitvaishnav', 'html_url': 'https://github.com/arpitvaishnav', 'followers_url': 'https://api.github.com/users/arpitvaishnav/followers', 'following_url': 'https://api.github.com/users/arpitvaishnav/following{/other_user}', 'gists_url': 'https://api.github.com/users/arpitvaishnav/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/arpitvaishnav/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/arpitvaishnav/subscriptions', 'organizations_url': 'https://api.github.com/users/arpitvaishnav/orgs', 'repos_url': 'https://api.github.com/users/arpitvaishnav/repos', 'events_url': 'https://api.github.com/users/arpitvaishnav/events{/privacy}', 'received_events_url': 'https://api.github.com/users/arpitvaishnav/received_events', 'type': 'User', 'site_admin': False}","[{'id': 346842756, 'node_id': 'MDU6TGFiZWwzNDY4NDI3NTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Note:Cannot%20reproduce', 'name': 'Note:Cannot reproduce', 'color': 'c7def8', 'default': False, 'description': None}]",closed,False,,[],,6,2020-01-07T10:44:25Z,2020-06-24T10:36:01Z,2020-06-24T10:36:01Z,NONE,,,"I am creating muc_room from the admin API with all the required options of the team.
```
{title,<<""1 X Team"">>},
{description,<<>>},
{allow_change_subj,true},
{allow_query_users,true},
{allow_private_messages,true},
{allow_private_messages_from_visitors,anyone},
{allow_visitor_status,true},
{allow_visitor_nickchange,true},
{public,false},
{public_list,true},
{persistent,true},
{moderated,true},
{members_by_default,true},
{members_only,true},
{allow_user_invites,true},
{password_protected,false},
{captcha_protected,false},
{password,<<>>},
{anonymous,true},
{logging,false},
{max_users,200},
{allow_voice_requests,true},
{allow_subscription,true},
{mam,true},
{presence_broadcast,[moderator,participant,visitor]},
{voice_request_min_interval,'1800'},
{vcard,<<>>},
{captcha_whitelist,[]},
{affiliations,[{{<<""z"">>,<>,<<>>},{owner,<<>>}}]},
{subject,[]},
{subject_author,<<>>}]
```
mod_muc settings on the server
```
mod_muc:
db_type: sql
access_admin:
allow: admin
access_create: muc_create
access_persistent: muc_create
history_size: 30
max_rooms_discoitems: 1000
max_user_conferences: 105
max_users_presence: 100
min_presence_interval: 0
```
Now, the owner of the team is not able to access the options of team from mobile SDK
which again is possible if with the same option created from SDK.
any reason? Any solution ",
572,https://api.github.com/repos/processone/ejabberd/issues/3140,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3140/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3140/comments,https://api.github.com/repos/processone/ejabberd/issues/3140/events,https://github.com/processone/ejabberd/issues/3140,545678222,MDU6SXNzdWU1NDU2NzgyMjI=,3140,No log to explain why ejabberd is started but not running,"{'login': 'joudinet', 'id': 2621900, 'node_id': 'MDQ6VXNlcjI2MjE5MDA=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/2621900?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/joudinet', 'html_url': 'https://github.com/joudinet', 'followers_url': 'https://api.github.com/users/joudinet/followers', 'following_url': 'https://api.github.com/users/joudinet/following{/other_user}', 'gists_url': 'https://api.github.com/users/joudinet/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/joudinet/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/joudinet/subscriptions', 'organizations_url': 'https://api.github.com/users/joudinet/orgs', 'repos_url': 'https://api.github.com/users/joudinet/repos', 'events_url': 'https://api.github.com/users/joudinet/events{/privacy}', 'received_events_url': 'https://api.github.com/users/joudinet/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,4,2020-01-06T11:24:12Z,2020-01-06T14:41:54Z,2020-01-06T14:41:53Z,CONTRIBUTOR,,,"## Environment
- ejabberd version: 19.09.1
- Erlang version: Erlang (SMP,ASYNC_THREADS) (BEAM) emulator version 10.0
- OS: Linux (Buildroot)
- Installed from: source
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
default configuration file.
## Errors from error.log/crash.log
No error or log files
## Bug description
ejabberd starts but says it is not running and no single output is present to help me debug the problem. I've tried to run `ejabberdctl live` to get more details but it also does not output anything after giving me an eshell:
```
# ejabberdctl live
--------------------------------------------------------------------
IMPORTANT: ejabberd is going to start in LIVE (interactive) mode.
All log messages will be shown in the command shell.
You can interact with the ejabberd node if you know how to use it.
Please be extremely cautious with your actions,
and exit immediately if you are not completely sure.
To exit this LIVE mode and stop ejabberd, press:
q(). and press the Enter key
--------------------------------------------------------------------
To bypass permanently this warning, add to ejabberdctl.cfg the line:
EJABBERD_BYPASS_WARNINGS=true
Press return to continue
Eshell V10.0 (abort with ^G)
(ejabberd@localhost)1>
```
Before upgrading to ejabberd-19.09.1, I was using ejabberd-18.09 and `ejabberdctl live` did outputs stuff saying ejabberd is started. Now, it does not output anything after giving me an Eshell.
I try the following command from this eshell (I'm unfamiliar with eshell, so I don't really know what to do):
```
(ejabberd@localhost)3> ejabberd_logger:get().
{0,no_log,""No log""}
```
There is a new dependency (erlang-p1-yconf). Maybe I've installed it incorrectly? Because the default configuration file says log_level should be 4.
I've tried to set it to 5 from via the `ejabberd_logger:set` command, but it fails with the following exception:
```
(ejabberd@localhost)4> ejabberd_logger:set(5).
** exception error: bad argument
in function ets:insert/2
called as ets:insert(xmpp_config,{{debug,global},true})
in call from p1_options:insert/4 (src/p1_options.erl, line 62)
in call from lists:foreach/2 (lists.erl, line 1338)
in call from xmpp:set_config/1 (src/xmpp.erl, line 626)
```
Any idea where I should look to or how I could activate ejabberd log output?",
573,https://api.github.com/repos/processone/ejabberd/issues/3139,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3139/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3139/comments,https://api.github.com/repos/processone/ejabberd/issues/3139/events,https://github.com/processone/ejabberd/issues/3139,545631852,MDU6SXNzdWU1NDU2MzE4NTI=,3139,PEP and pubsub#publish_model results in forbidden,"{'login': 'COM8', 'id': 11741404, 'node_id': 'MDQ6VXNlcjExNzQxNDA0', 'avatar_url': 'https://avatars3.githubusercontent.com/u/11741404?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/COM8', 'html_url': 'https://github.com/COM8', 'followers_url': 'https://api.github.com/users/COM8/followers', 'following_url': 'https://api.github.com/users/COM8/following{/other_user}', 'gists_url': 'https://api.github.com/users/COM8/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/COM8/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/COM8/subscriptions', 'organizations_url': 'https://api.github.com/users/COM8/orgs', 'repos_url': 'https://api.github.com/users/COM8/repos', 'events_url': 'https://api.github.com/users/COM8/events{/privacy}', 'received_events_url': 'https://api.github.com/users/COM8/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,2,2020-01-06T09:39:14Z,2020-01-06T14:34:30Z,,NONE,,,"## Environment
- ejabberd version: 19.09.1
- Erlang version: (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.3.4
- OS: Linux (Fedora Server 30)
- Installed from: official binary installer
## Configuration
```yaml
hosts:
- ""xmpp.example.org""
loglevel: 4
log_rotate_size: 10485760
log_rotate_date: """"
log_rotate_count: 1
log_rate_limit: 100
certfiles:
- ""/etc/letsencrypt/live/server.example.org/ejabberd.pem""
ca_file: ""/etc/letsencrypt/live/server.example.org/ejabberd.pem""
listen:
-
port: 5222
ip: ""::""
module: ejabberd_c2s
max_stanza_size: 262144
shaper: c2s_shaper
access: c2s
starttls: true
-
port: 5269
ip: ""::""
module: ejabberd_s2s_in
max_stanza_size: 524288
-
port: 5443
ip: ""::""
module: ejabberd_http
tls: true
request_handlers:
""/admin"": ejabberd_web_admin
""/api"": mod_http_api
""/bosh"": mod_bosh
""/captcha"": ejabberd_captcha
""/upload"": mod_http_upload
""/ws"": ejabberd_http_ws
""/oauth"": ejabberd_oauth
-
port: 5280
ip: ""::""
module: ejabberd_http
request_handlers:
""/admin"": ejabberd_web_admin
-
port: 1883
ip: ""::""
module: mod_mqtt
backlog: 1000
s2s_use_starttls: optional
acl:
local:
user_regexp: """"
loopback:
ip:
- 127.0.0.0/8
- ::1/128
- ::FFFF:127.0.0.1/128
admin:
user:
- ""admin@xmpp.example.org""
access_rules:
local:
allow: local
c2s:
deny: blocked
allow: all
announce:
allow: admin
configure:
allow: admin
muc_create:
allow: local
pubsub_createnode:
allow: local
trusted_network:
allow: loopback
api_permissions:
""console commands"":
from:
- ejabberd_ctl
who: all
what: ""*""
""admin access"":
who:
access:
allow:
acl: loopback
acl: admin
oauth:
scope: ""ejabberd:admin""
access:
allow:
acl: loopback
acl: admin
what:
- ""*""
- ""!stop""
- ""!start""
""public commands"":
who:
ip: 127.0.0.1/8
what:
- status
- connected_users_number
shaper:
normal: 1000
fast: 50000
shaper_rules:
max_user_sessions: 10
max_user_offline_messages:
5000: admin
100: all
c2s_shaper:
none: admin
normal: all
s2s_shaper: fast
max_fsm_queue: 10000
acme:
contact: ""mailto:support@example.org""
ca_url: ""https://acme-v01.api.letsencrypt.org""
modules:
mod_adhoc: {}
mod_admin_extra: {}
mod_announce:
access: announce
mod_avatar: {}
mod_blocking: {}
mod_bosh: {}
mod_caps: {}
mod_carboncopy: {}
mod_client_state: {}
mod_configure: {}
mod_disco: {}
mod_fail2ban: {}
mod_http_api: {}
mod_http_upload:
put_url: https://@HOST@:5443/upload
mod_last: {}
mod_mam:
assume_mam_usage: true
default: never
mod_mqtt: {}
mod_muc:
access:
- allow
access_admin:
- allow: admin
access_create: muc_create
access_persistent: muc_create
access_mam:
- allow
default_room_options:
allow_subscription: true # enable MucSub
mam: false
mod_muc_admin: {}
mod_offline:
access_max_user_messages: max_user_offline_messages
mod_ping: {}
mod_privacy: {}
mod_private: {}
mod_proxy65:
access: local
max_connections: 5
mod_pubsub:
access_createnode: pubsub_createnode
plugins:
- flat
- pep
force_node_config:
storage:bookmarks:
access_model: whitelist
""xmpp.iot.**"":
access_model: presence
publish_model: open
persist_items: true
""eu.siacs.conversations.axolotl.*"":
access_model: open
mod_push: {}
mod_push_keepalive: {}
mod_register:
ip_access: trusted_network
mod_roster:
versioning: true
mod_s2s_dialback: {}
mod_shared_roster: {}
mod_stream_mgmt:
resend_on_timeout: if_offline
mod_vcard: {}
mod_vcard_xupdate: {}
mod_version:
show_os: false
...
```
## Errors from error.log/crash.log
No errors
## Bug description
It looks like the `pubsub#publish_model` property is ignored for [PEP](https://xmpp.org/extensions/xep-0163.html) nodes.
When I publish a node with `pubsub#publish_model` set to `open` it succeeds.
But when I then try to change this node from an other user I get error 403 (forbidden).
I also tried to enforce `pubsub#publish_model` to `open` by setting it in the `ejabberd.yml`
### Publishing a Node
```XML
falsehttp://jabber.org/protocol/pubsub#publish-optionstruepresenceopen
```
### Publishing a new Value from an other User
```XML
False
```
### Server Response
```XML
False
```
",
574,https://api.github.com/repos/processone/ejabberd/issues/3138,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3138/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3138/comments,https://api.github.com/repos/processone/ejabberd/issues/3138/events,https://github.com/processone/ejabberd/issues/3138,545366871,MDU6SXNzdWU1NDUzNjY4NzE=,3138,Native library for xcode ,"{'login': 'dverdugo85', 'id': 5117517, 'node_id': 'MDQ6VXNlcjUxMTc1MTc=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/5117517?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dverdugo85', 'html_url': 'https://github.com/dverdugo85', 'followers_url': 'https://api.github.com/users/dverdugo85/followers', 'following_url': 'https://api.github.com/users/dverdugo85/following{/other_user}', 'gists_url': 'https://api.github.com/users/dverdugo85/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dverdugo85/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dverdugo85/subscriptions', 'organizations_url': 'https://api.github.com/users/dverdugo85/orgs', 'repos_url': 'https://api.github.com/users/dverdugo85/repos', 'events_url': 'https://api.github.com/users/dverdugo85/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dverdugo85/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-01-05T04:14:23Z,2020-02-08T08:30:58Z,2020-01-06T09:06:54Z,NONE,,,"## Environment
Hello
I development a native app for iPhone and I need a library to connect to ejabbberd.. what recommend?? Regards!!
- ejabberd version: 19.09
- Erlang version: `erl +V`
- OS: Linux xcode
- Installed from: source | distro package | official deb/rpm | official binary installer | other
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
loglevel: 4
...
```
## Errors from error.log/crash.log
No errors
## Bug description
Please, give us a precise description (what does not work, what is expected, etc.)
",
575,https://api.github.com/repos/processone/ejabberd/issues/3137,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3137/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3137/comments,https://api.github.com/repos/processone/ejabberd/issues/3137/events,https://github.com/processone/ejabberd/issues/3137,544790199,MDU6SXNzdWU1NDQ3OTAxOTk=,3137,MAM: Unable to get more than the 20 latest messages,"{'login': 'Bonjour123', 'id': 17679888, 'node_id': 'MDQ6VXNlcjE3Njc5ODg4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/17679888?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Bonjour123', 'html_url': 'https://github.com/Bonjour123', 'followers_url': 'https://api.github.com/users/Bonjour123/followers', 'following_url': 'https://api.github.com/users/Bonjour123/following{/other_user}', 'gists_url': 'https://api.github.com/users/Bonjour123/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Bonjour123/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Bonjour123/subscriptions', 'organizations_url': 'https://api.github.com/users/Bonjour123/orgs', 'repos_url': 'https://api.github.com/users/Bonjour123/repos', 'events_url': 'https://api.github.com/users/Bonjour123/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Bonjour123/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,4,2020-01-02T23:25:34Z,2020-01-03T12:35:02Z,2020-01-03T12:35:02Z,NONE,,,"## Environment
- ejabberd version: 19.09.1
- Erlang version: 10.3
- OS: Windows 7 64 bit
- Installed from:installer
## Errors from error.log/crash.log
No errors
## Bug description
What I get:
When requesting the last 100 MAM archives of a MUC from StropheJS, I always only get the 20 latest. I don't think it's related to Strophe, as the stanza (gotten from Chrome Dev Network tab) display valid stanzas + if I indicate a max number of 10, I indeed get only 10 message archives.
What I should get:
All messages, or at least 100 in there are more than 100.
Here is the mam request sent by Strophe to ejabberd:
`urn:xmpp:mam:2100`
Here how looks the archives answered back by the ejabberd:
`fdf`
So Why can't I get more than 20 messages archives ? (I precise that I do have sent more than 20 messages to this MUC)",
576,https://api.github.com/repos/processone/ejabberd/issues/3136,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3136/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3136/comments,https://api.github.com/repos/processone/ejabberd/issues/3136/events,https://github.com/processone/ejabberd/pull/3136,544695564,MDExOlB1bGxSZXF1ZXN0MzU4NzUyNzg2,3136,enable tests with mssql-backend,"{'login': 'ChaosKid42', 'id': 15179432, 'node_id': 'MDQ6VXNlcjE1MTc5NDMy', 'avatar_url': 'https://avatars0.githubusercontent.com/u/15179432?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ChaosKid42', 'html_url': 'https://github.com/ChaosKid42', 'followers_url': 'https://api.github.com/users/ChaosKid42/followers', 'following_url': 'https://api.github.com/users/ChaosKid42/following{/other_user}', 'gists_url': 'https://api.github.com/users/ChaosKid42/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ChaosKid42/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ChaosKid42/subscriptions', 'organizations_url': 'https://api.github.com/users/ChaosKid42/orgs', 'repos_url': 'https://api.github.com/users/ChaosKid42/repos', 'events_url': 'https://api.github.com/users/ChaosKid42/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ChaosKid42/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/41', 'html_url': 'https://github.com/processone/ejabberd/milestone/41', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/41/labels', 'id': 5368239, 'node_id': 'MDk6TWlsZXN0b25lNTM2ODIzOQ==', 'number': 41, 'title': 'ejabberd 20.04', 'description': 'https://www.process-one.net/blog/ejabberd-20-04/', 'creator': {'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 18, 'state': 'closed', 'created_at': '2020-04-30T16:07:38Z', 'updated_at': '2020-04-30T16:08:55Z', 'due_on': '2020-04-29T07:00:00Z', 'closed_at': '2020-04-30T16:08:55Z'}",2,2020-01-02T18:38:17Z,2020-04-30T16:08:07Z,2020-04-28T14:22:43Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3136', 'html_url': 'https://github.com/processone/ejabberd/pull/3136', 'diff_url': 'https://github.com/processone/ejabberd/pull/3136.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3136.patch'}","This is my attempt to enable tests with mssql backend.
I'm sure a good erlang developer could improve this PR a lot. Hope this is useful though.",
577,https://api.github.com/repos/processone/ejabberd/issues/3135,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3135/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3135/comments,https://api.github.com/repos/processone/ejabberd/issues/3135/events,https://github.com/processone/ejabberd/issues/3135,544654044,MDU6SXNzdWU1NDQ2NTQwNDQ=,3135,Ejabberd and Postgresql,"{'login': 'BooneyNoobington', 'id': 17342637, 'node_id': 'MDQ6VXNlcjE3MzQyNjM3', 'avatar_url': 'https://avatars2.githubusercontent.com/u/17342637?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/BooneyNoobington', 'html_url': 'https://github.com/BooneyNoobington', 'followers_url': 'https://api.github.com/users/BooneyNoobington/followers', 'following_url': 'https://api.github.com/users/BooneyNoobington/following{/other_user}', 'gists_url': 'https://api.github.com/users/BooneyNoobington/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/BooneyNoobington/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/BooneyNoobington/subscriptions', 'organizations_url': 'https://api.github.com/users/BooneyNoobington/orgs', 'repos_url': 'https://api.github.com/users/BooneyNoobington/repos', 'events_url': 'https://api.github.com/users/BooneyNoobington/events{/privacy}', 'received_events_url': 'https://api.github.com/users/BooneyNoobington/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-01-02T16:41:25Z,2020-01-03T09:31:25Z,2020-01-03T09:31:25Z,NONE,,,"ejabberd 19.09.74 (erlang version is 23) works well with postgres 12.1. I have compiled all these programms from source on Ubuntu 19.10. Erlang with ssl-support and ejabberd with the --with-pgsql option.
Unfortunately ejabberd can only connect to the postgresql-server (localhost:5432) using the (plaintext) password authentification method. Using md5 or scram-sha-256 yields the error message.
`{authentication,{unknown,10}}`
I'm not sure if this is actually an issue with ejabberd or rather erlang since the following page states that the only supported driver for erlang is ""epgsql"" which I don't think my erlang installation is using (or is it?).
https://wiki.postgresql.org/wiki/List_of_drivers
I'm quite lost on this one and google isn't much help either since the mysql/maridb is well documented and postgres not so much.
Any idea what I'm doing wrong?
Additional information:
Portion of my ejabberd config.
```
sql_type: pgsql
sql_server: ""localhost""
sql_database: ""ejabberd""
sql_username: ""ejabberd""
#sql_ssl: true
#sql_ssl_verify: true
#sql_ssl_cafile: /srv/ejabberd/etc/ejabberd/root.crt
#sql_ssl_certfile: /srv/ejabberd/etc/ejabberd/ejabberd.key
sql_password: ************************
## If you want to specify the port:
#odbc_port: 5432
auth_method: [sql]
auth_password_format: scram
default_db: sql
```
Portion of pg_hba.conf (controls how postgres handles logins).
```
# TYPE DATABASE USER ADDRESS METHOD
# ""local"" is for Unix domain socket connections only
local ejabberd ejabberd peer
local all postgresql peer
# IPv4 local connections:
host ejabberd ejabberd 127.0.0.1/32 password
# IPv6 local connections:
#host all all ::1/128 scram-sha-256
# Allow replication connections from localhost, by a user with the
# replication privilege.
#local replication all scram-sha-256
#host replication all 127.0.0.1/32 scram-sha-256
#host replication all ::1/128 scram-sha-256
```
",
578,https://api.github.com/repos/processone/ejabberd/issues/3134,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3134/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3134/comments,https://api.github.com/repos/processone/ejabberd/issues/3134/events,https://github.com/processone/ejabberd/issues/3134,544424428,MDU6SXNzdWU1NDQ0MjQ0Mjg=,3134,Import from Prosody 0.12.x do not work,"{'login': 'Neustradamus', 'id': 104737, 'node_id': 'MDQ6VXNlcjEwNDczNw==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/104737?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Neustradamus', 'html_url': 'https://github.com/Neustradamus', 'followers_url': 'https://api.github.com/users/Neustradamus/followers', 'following_url': 'https://api.github.com/users/Neustradamus/following{/other_user}', 'gists_url': 'https://api.github.com/users/Neustradamus/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Neustradamus/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Neustradamus/subscriptions', 'organizations_url': 'https://api.github.com/users/Neustradamus/orgs', 'repos_url': 'https://api.github.com/users/Neustradamus/repos', 'events_url': 'https://api.github.com/users/Neustradamus/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Neustradamus/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-01-02T02:05:35Z,2020-01-03T09:33:08Z,2020-01-03T09:33:08Z,NONE,,,"A new ticket because no reply on closed ticket:
- https://github.com/processone/ejabberd/issues/3118
- https://github.com/processone/ejabberd/issues/3118#issuecomment-568890821
Currently, there is a problem to import data into ejabberd from:
- Prosody XMPP server 0.12.x
I think it is linked to SCRAM-SHA-256 but I am not 100% sure.",
579,https://api.github.com/repos/processone/ejabberd/issues/3133,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3133/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3133/comments,https://api.github.com/repos/processone/ejabberd/issues/3133/events,https://github.com/processone/ejabberd/issues/3133,544174254,MDU6SXNzdWU1NDQxNzQyNTQ=,3133,Can't connect from ejabberd to any pushservers (no SASL),"{'login': 'centertivevier', 'id': 27358890, 'node_id': 'MDQ6VXNlcjI3MzU4ODkw', 'avatar_url': 'https://avatars2.githubusercontent.com/u/27358890?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/centertivevier', 'html_url': 'https://github.com/centertivevier', 'followers_url': 'https://api.github.com/users/centertivevier/followers', 'following_url': 'https://api.github.com/users/centertivevier/following{/other_user}', 'gists_url': 'https://api.github.com/users/centertivevier/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/centertivevier/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/centertivevier/subscriptions', 'organizations_url': 'https://api.github.com/users/centertivevier/orgs', 'repos_url': 'https://api.github.com/users/centertivevier/repos', 'events_url': 'https://api.github.com/users/centertivevier/events{/privacy}', 'received_events_url': 'https://api.github.com/users/centertivevier/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,6,2019-12-31T12:09:34Z,2020-01-03T17:54:28Z,2020-01-02T08:03:43Z,NONE,,,"## Environment
- ejabberd version: 19.01
- Erlang version: `Erlang (SMP,ASYNC_THREADS) (BEAM) emulator version 10.2.4`
- OS: Linux (Debian 10)
- Installed from: source: deb http://deb.debian.org/debian buster-backports | distro package: ejabberd/buster-backports,now 19.09.1-1~bpo10+1 amd64
## Configuration:
```yaml
sql_type: mysql
loglevel: 3
hide_sensitive_log_data: true
log_rotate_size: 0
log_rotate_date: """"
###. ================
###' SERVED HOSTNAMES
hosts:
- ""myserver.com""
###. ============
###' Certificates
certfiles:
- ""/etc/ejabberd/certs/x.key""
- ""/etc/ejabberd/certs/x.crt""
###. =================
###' TLS configuration
define_macro:
'TLS_CIPHERS': ""ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA384""
'TLS_OPTIONS':
- ""no_sslv3""
- ""no_tlsv1""
- ""no_tlsv1_1""
- ""cipher_server_preference""
- ""no_compression""
'DH_FILE': ""/etc/ejabberd/dh4096.pem""
c2s_ciphers: 'TLS_CIPHERS'
s2s_ciphers: 'TLS_CIPHERS'
c2s_protocol_options: 'TLS_OPTIONS'
s2s_protocol_options: 'TLS_OPTIONS'
c2s_dhfile: 'DH_FILE'
s2s_dhfile: 'DH_FILE'
###. ===============
###' LISTENING PORTS
listen:
-
port: 5222
ip: ""::""
module: ejabberd_c2s
starttls_required: true
max_stanza_size: 262144
shaper: c2s_shaper
access: c2s
port: 5269
ip: ""::""
module: ejabberd_s2s_in
max_stanza_size: 524288
disable_sasl_mechanisms:
- ""digest-md5""
- ""x-oauth2""
###. ==================
###' S2S GLOBAL OPTIONS
s2s_use_starttls: required
###. ==============
###' AUTHENTICATION
auth_method: sql
auth_password_format: scram
###. ===============
###' TRAFFIC SHAPERS
shaper:
normal: 1000
fast: 50000
max_fsm_queue: 10000
###. ====================
###' ACCESS CONTROL LISTS
acl:
admin:
user:
- ""ABX"": ""myserver.com""
local:
user_regexp: """"
shortname:
user_glob:
- ""?""
- ""??""
loopback:
ip:
- ""127.0.0.0/8""
- ""::1/128""
###. ============
###' SHAPER RULES
shaper_rules:
max_user_sessions: 10
max_user_offline_messages:
- 5000: admin
- 500
c2s_shaper:
- none: admin
- normal
s2s_shaper: fast
###. ============
###' ACCESS RULES
access_rules:
local:
- allow: local
c2s:
- deny: blocked
- allow
announce:
- allow: admin
configure:
- allow: admin
muc_create:
- allow: local
pubsub_createnode:
- allow: local
register:
- deny: shortname
- allow: all
trusted_network:
- allow: local
## ===============
## API PERMISSIONS
## ===============
api_permissions:
""console commands"":
from:
- ejabberd_ctl
who: all
what: ""*""
""admin access"":
who:
- access:
- allow:
- acl: loopback
- acl: admin
- oauth:
- scope: ""ejabberd:admin""
- access:
- allow:
- acl: loopback
- acl: admin
what:
- ""*""
- ""!stop""
- ""!start""
""public commands"":
who:
- ip: ""127.0.0.1/8""
what:
- ""status""
- ""connected_users_number""
###. =======
###' CAPTCHA
captcha_cmd: ""/usr/share/ejabberd/captcha.sh""
captcha_limit: 5
###. =======
###' MODULES
modules:
mod_adhoc: {}
mod_admin_extra: {}
mod_announce:
access: announce
mod_block_strangers: {}
mod_blocking: {}
mod_caps: {}
mod_carboncopy: {}
mod_client_state: {}
mod_configure: {}
## mod_delegation: {}
mod_disco:
server_info:
-
modules: all
name: ""abuse-addresses""
urls:
- ""mailto:webmaster@myserver.com""
-
modules: all
name: ""support-addresses""
urls:
- ""mailto:webmaster@myserver.com""
-
modules: all
name: ""admin-addresses""
urls:
- ""mailto:webmaster@myserver.com""
## mod_echo: {}
mod_bosh: {}
## mod_http_fileserver:
mod_http_upload:
host: ""upload.@HOST@""
docroot: ""/opt/ejabberd/upload""
put_url: ""https://upload.myserver.com/""
get_url: ""https://upload.myserver.com/""
secret_length: 40
file_mode: ""0640""
dir_mode: ""2750""
max_size: 1048218029 # 1 GB
access: local
thumbnail: true
custom_headers:
""Access-Control-Allow-Origin"": ""https://upload.myserver.com/""
""Access-Control-Allow-Methods"": ""GET,HEAD,PUT,OPTIONS""
""Access-Control-Allow-Headers"": ""Content-Type""
mod_http_upload_quota:
max_days: 7
mod_last: {}
mod_mam:
db_type: sql
assume_mam_usage: true
default: always
request_activates_archiving: true
mod_muc:
host: ""konf.@HOST@""
access:
- allow
access_admin:
- allow: admin
access_create: muc_create
access_persistent: muc_create
default_room_options:
mam: true
persistent: true
public: false
public_list: false
mod_muc_admin: {}
## mod_muc_log: {}
## mod_multicast: {}
mod_offline:
access_max_user_messages: max_user_offline_messages
mod_ping: {}
mod_pres_counter:
count: 16
interval: 60
mod_privacy: {}
mod_private: {}
mod_proxy65:
host: ""proxy65.@HOST@""
port: 55555
ip: ""127.0.0.1""
max_connections: 5
mod_pubsub:
db_type: sql
host: ""pubsub.@HOST@""
access_createnode: pubsub_createnode
ignore_pep_from_offline: true
last_item_cache: false
plugins:
- ""flat""
- ""pep""
force_node_config:
""eu.siacs.conversations.axolotl.*"":
access_model: open
""storage:bookmarks"":
access_model: whitelist
mod_push:
include_sender: false
include_body: ""Hej da""
db_type: sql
mod_push_keepalive:
wake_on_start: true
wake_on_timeout: true
resume_timeout: 1800
mod_register:
captcha_protected: true
password_strength: 64
ip_access: all
access: register
mod_roster:
db_type: sql
versioning: true
mod_shared_roster: {}
mod_sic: {}
mod_stats: {}
mod_time: {}
mod_vcard:
search: false
mod_vcard_xupdate: {}
mod_avatar: {}
mod_version:
show_os: false
mod_stream_mgmt:
resend_on_timeout: if_offline
##mod_s2s_dialback: {}
## mod_http_api: {}
mod_fail2ban: {}
allow_contrib_modules: true
```
## Errors from error.log/crash.log
```
2019-12-30 23:16:37.572 [warning] <0.510.0>@ejabberd_s2s_out:handle_auth_failure:219 (tls|<0.510.0>) Failed outbound s2s EXTERNAL authentication myserver.com -> push.tigase.im (hidden_by_ejabberd): Authentication failed: Peer provided no SASL mechanisms; most likely it doesn't accept our certificate
2019-12-30 23:16:37.572 [warning] <0.510.0>@ejabberd_s2s_out:process_auth_result:138 Failed to establish outbound s2s connection myserver.com -> push.tigase.im: authentication failed; bouncing for 274 seconds
The server send the on debugmode the following stanzas:
2019-12-29 23:21:34.720 [debug] <0.363.0>@ejabberd_s2s:route:347 Local route:
#iq{id =
<<""rr-1577658126717-9710391111879476430-VNzivZ3vFHMI/7787JoFmMtd+bM=-55238004"">>,
type = set,lang = <<>>,
from =
#jid{
user = <<>>,server = <<""myserver.com"">>,resource = <<>>,
luser = <<>>,lserver = <<""myserver.com"">>,lresource = <<>>},
to =
#jid{
user = <<>>,server = <<""push.tigase.im"">>,resource = <<>>,
luser = <<>>,lserver = <<""push.tigase.im"">>,lresource = <<>>},
sub_els =
[#pubsub{
subscriptions = undefined,subscription = undefined,
affiliations = undefined,
publish =
#ps_publish{
node =
<<""642A927D1670831FA0CA18F91BC5B28C18B93A483EABEF4CD41561EA75E13F7F"">>,
items =
[#ps_item{
xmlns = <<>>,id = <<>>,
sub_els =
[#push_notification{xdata = undefined}],
node = <<>>,publisher = <<>>}]},
publish_options = undefined,subscribe = undefined,
unsubscribe = undefined,options = undefined,items = undefined,
retract = undefined,create = undefined,configure = undefined,
default = undefined,delete = undefined,purge = undefined,
rsm = undefined}],
meta = #{}}
2019-12-29 23:21:34.720 [debug] <0.363.0>@ejabberd_s2s:start_connection:382 Finding connection for {<<""myserver.com"">>,<<""push.tigase.im"">>}
2019-12-29 23:21:34.720 [info] <0.511.0>@ejabberd_s2s_out:init:273 Outbound s2s connection started: myserver.com -> push.tigase.im
2019-12-29 23:21:34.720 [debug] <0.363.0>@ejabberd_s2s:choose_pid:432 Using ejabberd_s2s_out <0.511.0>
2019-12-29 23:21:34.720 [debug] <0.363.0>@ejabberd_s2s:route:352 Sending to process <0.511.0>
2019-12-29 23:21:34.722 [debug] <0.363.0>@ejabberd_router:do_route:384 Route:
#iq{id =
<<""rr-1577658126720-17199199313451245463-7UBqV0fLYu+BkVm9gUT8hHmzUng=-55238004"">>,
type = set,lang = <<>>,
from =
#jid{
user = <<>>,server = <<""myserver.com"">>,resource = <<>>,
luser = <<>>,lserver = <<""myserver.com"">>,lresource = <<>>},
to =
#jid{
user = <<>>,server = <<""push.pix-art.de"">>,resource = <<>>,
luser = <<>>,lserver = <<""push.pix-art.de"">>,lresource = <<>>},
sub_els =
[#pubsub{
subscriptions = undefined,subscription = undefined,
affiliations = undefined,
publish =
#ps_publish{
node = <<""snKfHCckWkB0"">>,
items =
[#ps_item{
xmlns = <<>>,id = <<>>,
sub_els =
[#push_notification{xdata = undefined}],
node = <<>>,publisher = <<>>}]},
publish_options =
#xdata{
type = submit,instructions = [],title = undefined,
reported = undefined,items = [],
fields =
[#xdata_field{
label = <<>>,type = hidden,
var = <<""FORM_TYPE"">>,required = false,
desc = <<>>,
values =
[<<""http://jabber.org/protocol/pubsub#publish-options"">>],
options = [],sub_els = []},
#xdata_field{
label = <<>>,type = undefined,
var = <<""secret"">>,required = false,desc = <<>>,
values = [<<""BGd/zmQWYqB+AeDMQLP4JnCw"">>],
options = [],sub_els = []}]},
subscribe = undefined,unsubscribe = undefined,
options = undefined,items = undefined,retract = undefined,
create = undefined,configure = undefined,default = undefined,
delete = undefined,purge = undefined,rsm = undefined}],
meta = #{}}
```
## Bug description
i used a ""Ejabberd 19.09.1"" on my system and with Conversations from F-Droid is all fine. But used the clients a programm with a pushserver in example Monal, Siskin or PixArt-Messenger for GCM or Applepush, they
can't connected from ejabberd to the pushserver. I get the following error on all pushserver:
I set the starttls required to false, enable die md5-hash, used very smoove ciphersuite, on all the same problem. I think is a problem on my config, but with this bug you can used xmpp with Iphones, then push are not worked. Connecting to other server like user or muc works all fine!
Have any one a idea what the problem is?
",
580,https://api.github.com/repos/processone/ejabberd/issues/3132,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3132/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3132/comments,https://api.github.com/repos/processone/ejabberd/issues/3132/events,https://github.com/processone/ejabberd/pull/3132,543196415,MDExOlB1bGxSZXF1ZXN0MzU3NTA4NDkw,3132,change publisher from text to varchar for mssql,"{'login': 'ChaosKid42', 'id': 15179432, 'node_id': 'MDQ6VXNlcjE1MTc5NDMy', 'avatar_url': 'https://avatars0.githubusercontent.com/u/15179432?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ChaosKid42', 'html_url': 'https://github.com/ChaosKid42', 'followers_url': 'https://api.github.com/users/ChaosKid42/followers', 'following_url': 'https://api.github.com/users/ChaosKid42/following{/other_user}', 'gists_url': 'https://api.github.com/users/ChaosKid42/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ChaosKid42/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ChaosKid42/subscriptions', 'organizations_url': 'https://api.github.com/users/ChaosKid42/orgs', 'repos_url': 'https://api.github.com/users/ChaosKid42/repos', 'events_url': 'https://api.github.com/users/ChaosKid42/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ChaosKid42/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/41', 'html_url': 'https://github.com/processone/ejabberd/milestone/41', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/41/labels', 'id': 5368239, 'node_id': 'MDk6TWlsZXN0b25lNTM2ODIzOQ==', 'number': 41, 'title': 'ejabberd 20.04', 'description': 'https://www.process-one.net/blog/ejabberd-20-04/', 'creator': {'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 18, 'state': 'closed', 'created_at': '2020-04-30T16:07:38Z', 'updated_at': '2020-04-30T16:08:55Z', 'due_on': '2020-04-29T07:00:00Z', 'closed_at': '2020-04-30T16:08:55Z'}",0,2019-12-28T14:52:08Z,2020-04-30T16:08:07Z,2020-04-10T14:20:44Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3132', 'html_url': 'https://github.com/processone/ejabberd/pull/3132', 'diff_url': 'https://github.com/processone/ejabberd/pull/3132.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3132.patch'}","While testing with mssql I found the following problem in the log:
```
[error] SQL query 'select itemid from pubsub_item where nodeid=1 and (publisher='user1@localhost' or publisher like 'user1@localhost/%' escape '^') order by modification desc' failed: <<""[FreeTDS][SQL Server]The data types text and varchar are incompatible in the equal to operator."">>
[error] SQL query 'Q118290566' at {node_flat_sql,870} failed: <<""[FreeTDS][SQL Server]The data types text and varchar are incompatible in the equal to operator."">>
```
This PR seems to fix it.
",
581,https://api.github.com/repos/processone/ejabberd/issues/3131,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3131/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3131/comments,https://api.github.com/repos/processone/ejabberd/issues/3131/events,https://github.com/processone/ejabberd/pull/3131,543097349,MDExOlB1bGxSZXF1ZXN0MzU3NDE4NjUz,3131,use dsn-less config for mssql,"{'login': 'ChaosKid42', 'id': 15179432, 'node_id': 'MDQ6VXNlcjE1MTc5NDMy', 'avatar_url': 'https://avatars0.githubusercontent.com/u/15179432?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ChaosKid42', 'html_url': 'https://github.com/ChaosKid42', 'followers_url': 'https://api.github.com/users/ChaosKid42/followers', 'following_url': 'https://api.github.com/users/ChaosKid42/following{/other_user}', 'gists_url': 'https://api.github.com/users/ChaosKid42/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ChaosKid42/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ChaosKid42/subscriptions', 'organizations_url': 'https://api.github.com/users/ChaosKid42/orgs', 'repos_url': 'https://api.github.com/users/ChaosKid42/repos', 'events_url': 'https://api.github.com/users/ChaosKid42/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ChaosKid42/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/41', 'html_url': 'https://github.com/processone/ejabberd/milestone/41', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/41/labels', 'id': 5368239, 'node_id': 'MDk6TWlsZXN0b25lNTM2ODIzOQ==', 'number': 41, 'title': 'ejabberd 20.04', 'description': 'https://www.process-one.net/blog/ejabberd-20-04/', 'creator': {'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 18, 'state': 'closed', 'created_at': '2020-04-30T16:07:38Z', 'updated_at': '2020-04-30T16:08:55Z', 'due_on': '2020-04-29T07:00:00Z', 'closed_at': '2020-04-30T16:08:55Z'}",7,2019-12-28T08:41:16Z,2020-04-30T16:08:06Z,2020-04-23T11:56:42Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3131', 'html_url': 'https://github.com/processone/ejabberd/pull/3131', 'diff_url': 'https://github.com/processone/ejabberd/pull/3131.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3131.patch'}",Using dsn-less config with FreeTDS (https://www.freetds.org/userguide/dsnless.htm) can simplify the setup of mssql a lot.,
582,https://api.github.com/repos/processone/ejabberd/issues/3130,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3130/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3130/comments,https://api.github.com/repos/processone/ejabberd/issues/3130/events,https://github.com/processone/ejabberd/issues/3130,542886166,MDU6SXNzdWU1NDI4ODYxNjY=,3130,eJabberd - Botpress Integration,"{'login': 'maniskec', 'id': 50947307, 'node_id': 'MDQ6VXNlcjUwOTQ3MzA3', 'avatar_url': 'https://avatars2.githubusercontent.com/u/50947307?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/maniskec', 'html_url': 'https://github.com/maniskec', 'followers_url': 'https://api.github.com/users/maniskec/followers', 'following_url': 'https://api.github.com/users/maniskec/following{/other_user}', 'gists_url': 'https://api.github.com/users/maniskec/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/maniskec/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/maniskec/subscriptions', 'organizations_url': 'https://api.github.com/users/maniskec/orgs', 'repos_url': 'https://api.github.com/users/maniskec/repos', 'events_url': 'https://api.github.com/users/maniskec/events{/privacy}', 'received_events_url': 'https://api.github.com/users/maniskec/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2019-12-27T14:05:31Z,2019-12-30T06:26:09Z,2019-12-30T06:26:09Z,NONE,,,"Hello all,
I am chatbot developer and entirely new to ejabberd - XMPP server. I have deployed the server in my localmachine and used pidgin as a webclient , it is working fine.
Now I want to deploy chatbot done in botpress. I dont have any idea to deploy it in ejabberd.
can somebody help me out?
Let me know if you need any more information on this.",
583,https://api.github.com/repos/processone/ejabberd/issues/3129,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3129/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3129/comments,https://api.github.com/repos/processone/ejabberd/issues/3129/events,https://github.com/processone/ejabberd/issues/3129,542874511,MDU6SXNzdWU1NDI4NzQ1MTE=,3129,ejabberdctl status reports an error but there is no log.,"{'login': 'joudinet', 'id': 2621900, 'node_id': 'MDQ6VXNlcjI2MjE5MDA=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/2621900?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/joudinet', 'html_url': 'https://github.com/joudinet', 'followers_url': 'https://api.github.com/users/joudinet/followers', 'following_url': 'https://api.github.com/users/joudinet/following{/other_user}', 'gists_url': 'https://api.github.com/users/joudinet/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/joudinet/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/joudinet/subscriptions', 'organizations_url': 'https://api.github.com/users/joudinet/orgs', 'repos_url': 'https://api.github.com/users/joudinet/repos', 'events_url': 'https://api.github.com/users/joudinet/events{/privacy}', 'received_events_url': 'https://api.github.com/users/joudinet/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,8,2019-12-27T13:24:20Z,2020-01-06T14:38:36Z,2020-01-06T14:38:36Z,CONTRIBUTOR,,,"## Environment
- ejabberd version: 19.09.1
- Erlang version: Erlang (SMP,ASYNC_THREADS) (BEAM) emulator version 10.0
- OS: Linux (Buildroot)
- Installed from: source
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
I'm using the default configuration file. I've just try to increase loglevel to 5 but it still does not print anything.
## Errors from error.log/crash.log
No log. That's actually the issue. It is hard to understand the problem without any log.
## Bug description
`ejabberdctl start` seems to work (it returns 0) but running the `started` command afterward fails.
The `status` command says to look into ejabberd.log but there is no such file or directory:
```
# ejabberdctl start; echo $?
0
# ejabberdctl started; echo $?
1
# ejabberdctl status
The node ejabberd@localhost is started with status: started
ejabberd is not running in that node
Check for error messages: /var/log/ejabberd/ejabberd.log
or other files in that directory.
# ls -la /var/log/ejabberd
ls: /var/log/ejabberd: No such file or directory
```
ejabberd user does have the rights to create the `/var/log/ejabberd` directory. Even after creating manually such directory as user ejabberd. It still doesn't create any file inside such directory.
Looking at the processes, ejabberd is indeed running:
```
# ps | grep eja
1459 ejabberd /usr/lib/erlang/erts-10.0/bin/epmd -daemon
1461 ejabberd /usr/lib/erlang/erts-10.0/bin/beam.smp -K true -P 250000 -- -root /usr/lib/erlang -progname erl -- -home /var/lib/ejabberd -- -sname ejabberd@localhost -smp auto -mnesia dir ""/var/lib/ejabberd"" -ejabberd log_rate_limit 100 log_rotate_size 10485760 log_rotate_count 1 log_rotate_date ""$D0"" -s ejabberd -noshell -noinput
1465 ejabberd erl_child_setup 1024
```
I run `strace ejabberdctl live` to try to understand why it does not print or log anything. I have more than 3MB of strace log. I'm not sure you want to see all of it. Here is an extract of what I think might be relevant:
```
1393 execve(""/usr/lib/erlang/erts-10.0/bin/erlexec"", [""/usr/lib/erlang/erts-10.
0/bin/erlexec"", ""-sname"", ""ejabberd@localhost"", ""+K"", ""true"", ""-smp"", ""auto"", ""+
P"", ""250000"", ""-mnesia"", ""dir"", ""\""/var/lib/ejabberd\"""", ""-ejabberd"", ""log_rate_
limit"", ""100"", ""log_rotate_size"", ""10485760"", ""log_rotate_count"", ""1"", ""log_rota
te_date"", ""\""$D0\"""", ""-s"", ""ejabberd""], 0xe43f44 /* 23 vars */) = 0
[...]
1397 execve(""/usr/lib/erlang/erts-10.0/bin/epmd"", [""/usr/lib/erlang/erts-10.0/b
in/epmd"", ""-daemon""], 0xd1d2f4 /* 23 vars */) = 0
[...]
1398 exit_group(0
1399 chdir(""/""
1393 rt_sigprocmask(SIG_SETMASK, [],
1399 <... chdir resumed>) = 0
1398 <... exit_group resumed>) = ?
1399 umask(000
1393 <... rt_sigprocmask resumed>NULL, 8) = 0
1399 <... umask resumed>) = 022
1393 --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=1397, si_uid=100
0, si_status=0, si_utime=0, si_stime=1} ---
1399 close(0
1398 +++ exited with 0 +++
1399 <... close resumed>) = 0
1393 execve(""/usr/lib/erlang/erts-10.0/bin/beam.smp"", [""/usr/lib/erlang/erts-10
.0/bin/beam.smp"", ""-K"", ""true"", ""-P"", ""250000"", ""--"", ""-root"", ""/usr/lib/erlang""
, ""-progname"", ""erl"", ""--"", ""-home"", ""/var/lib/ejabberd"", ""--"", ""-sname"", ""ejabb
erd@localhost"", ""-smp"", ""auto"", ""-mnesia"", ""dir"", ""\""/var/lib/ejabberd\"""", ""-eja
bberd"", ""log_rate_limit"", ""100"", ""log_rotate_size"", ""10485760"", ""log_rotate_coun
t"", ""1"", ""log_rotate_date"", ""\""$D0\"""", ""-s"", ""ejabberd""], 0x7ed8cba4 /* 23 vars
*/
1399 close(1) = 0
1399 close(2) = 0
1399 close(3) = -1 EBADF (Bad file descriptor)
1399 close(4) = -1 EBADF (Bad file descriptor)
1399 close(5) = -1 EBADF (Bad file descriptor)
1399 close(6) = -1 EBADF (Bad file descriptor)
1399 close(7) = -1 EBADF (Bad file descriptor)
1399 close(8) = -1 EBADF (Bad file descriptor)
1399 close(9
1393 <... execve resumed>) = 0
1399 <... close resumed>) = -1 EBADF (Bad file descriptor)
1399 close(10
1393 readlinkat(AT_FDCWD, ""/proc/self/exe"",
1399 <... close resumed>) = -1 EBADF (Bad file descriptor)
1399 close(11
1393 <... readlinkat resumed>""/usr/lib/erlang/erts-10.0/bin/beam.smp"", 4096) =
38
1399 <... close resumed>) = -1 EBADF (Bad file descriptor)
1393 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0 <
unfinished ...>
1399 close(12
1393 <... mmap2 resumed>) = 0x76f7b000
1399 <... close resumed>) = -1 EBADF (Bad file descriptor)
1399 close(13) = -1 EBADF (Bad file descriptor)
1399 close(14
1393 open(""/lib//libz.so.1"", O_RDONLY
1399 <... close resumed>) = -1 EBADF (Bad file descriptor)
1393 <... open resumed>) = -1 ENOENT (No such file or directory)
1399 close(15
1393 open(""/usr/lib//libz.so.1"", O_RDONLY
1399 <... close resumed>) = -1 EBADF (Bad file descriptor)
1399 close(16
1393 <... open resumed>) = 3
1399 <... close resumed>) = -1 EBADF (Bad file descriptor)
1393 fstat(3,
1399 close(17) = -1 EBADF (Bad file descriptor)
1393 <... fstat resumed>{st_mode=S_IFREG|0755, st_size=75220, ...}) = 0
1399 close(18
1393 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0 <
unfinished ...>
1399 <... close resumed>) = -1 EBADF (Bad file descriptor)
1393 <... mmap2 resumed>) = 0x76f7a000
1399 close(19
1393 read(3,
1399 <... close resumed>) = -1 EBADF (Bad file descriptor)
[...]
1399 close(1023
1399 <... close resumed>) = -1 EBADF (Bad file descriptor)
1399 open(""/dev/null"", O_RDONLY|O_LARGEFILE
1399 <... open resumed>) = 0
1399 open(""/dev/null"", O_WRONLY|O_LARGEFILE
1399 <... open resumed>) = 1
1399 open(""/dev/null"", O_WRONLY|O_LARGEFILE
1399 <... open resumed>) = 2
```
So process 1399 is trying to close every file descriptors up to 1023 before reopening 0, 1 and 2 as /dev/null. I guess this is why there is no log...
Then, the same process opens two sockets (AF_INET, and AF_INET6) and listen on both of them:
```
1399 socket(AF_INET, SOCK_STREAM, IPPROTO_IP
1399 <... socket resumed>) = 3
1399 setsockopt(3, SOL_SOCKET, SO_REUSEADDR, [1], 4
1399 <... setsockopt resumed>) = 0
1399 fcntl64(3, F_GETFL
1399 <... fcntl64 resumed>) = 0x2 (flags O_RDWR)
1399 fcntl64(3, F_SETFL, O_RDWR|O_NONBLOCK
1399 <... fcntl64 resumed>) = 0
1399 bind(3, {sa_family=AF_INET, sin_port=htons(4369), sin_addr=inet_addr(""0.0.0.0"")}, 16
1399 <... bind resumed>) = 0
1399 listen(3, 128
1399 <... listen resumed>) = 0
1399 socket(AF_INET6, SOCK_STREAM, IPPROTO_IP
1399 <... socket resumed>) = 4
1399 setsockopt(4, SOL_IPV6, IPV6_V6ONLY, [1], 4
1399 <... setsockopt resumed>) = 0
1399 setsockopt(4, SOL_SOCKET, SO_REUSEADDR, [1], 4
1399 <... setsockopt resumed>) = 0
1399 fcntl64(4, F_GETFL
1399 <... fcntl64 resumed>) = 0x2 (flags O_RDWR)
1399 fcntl64(4, F_SETFL, O_RDWR|O_NONBLOCK
1399 <... fcntl64 resumed>) = 0
1399 bind(4, {sa_family=AF_INET6, sin6_port=htons(4369), sin6_flowinfo=htonl(0), inet_pton(AF_INET6, ""::"", &sin6_addr), sin6_scope_id=0}, 28
1399 <... bind resumed>) = 0
1399 listen(4, 128
1399 <... listen resumed>) = 0
```
It does one accept from 127.0.0.1 (socket 5) and then listen forever for all such 3 sockets:
```
1399 _newselect(5, [3 4], NULL, NULL, {tv_sec=5, tv_usec=0}
1399 <... _newselect resumed>) = 1 (in [3], left {tv_sec=2, tv_usec=695434})
1399 accept(3,
1399 <... accept resumed>{sa_family=AF_INET, sin_port=htons(45229), sin_addr=inet_addr(""127.0.0.1"")}, [128->16]) = 5
1399 getpeername(5,
1399 <... getpeername resumed>{sa_family=AF_INET, sin_port=htons(45229), sin_addr=inet_addr(""127.0.0.1"")}, [128->16]) = 0
1399 gettimeofday(
1399 <... gettimeofday resumed>{tv_sec=201, tv_usec=927360}, NULL) = 0
1399 _newselect(6, [3 4 5], NULL, NULL, {tv_sec=5, tv_usec=0}
1399 <... _newselect resumed>) = 1 (in [5], left {tv_sec=4, tv_usec=998955})
1399 gettimeofday(
```",
584,https://api.github.com/repos/processone/ejabberd/issues/3128,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3128/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3128/comments,https://api.github.com/repos/processone/ejabberd/issues/3128/events,https://github.com/processone/ejabberd/issues/3128,542861723,MDU6SXNzdWU1NDI4NjE3MjM=,3128,mssql: mod_last shows error 'operand type clash: int is incompatible with text',"{'login': 'ChaosKid42', 'id': 15179432, 'node_id': 'MDQ6VXNlcjE1MTc5NDMy', 'avatar_url': 'https://avatars0.githubusercontent.com/u/15179432?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ChaosKid42', 'html_url': 'https://github.com/ChaosKid42', 'followers_url': 'https://api.github.com/users/ChaosKid42/followers', 'following_url': 'https://api.github.com/users/ChaosKid42/following{/other_user}', 'gists_url': 'https://api.github.com/users/ChaosKid42/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ChaosKid42/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ChaosKid42/subscriptions', 'organizations_url': 'https://api.github.com/users/ChaosKid42/orgs', 'repos_url': 'https://api.github.com/users/ChaosKid42/repos', 'events_url': 'https://api.github.com/users/ChaosKid42/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ChaosKid42/received_events', 'type': 'User', 'site_admin': False}","[{'id': 1766218646, 'node_id': 'MDU6TGFiZWwxNzY2MjE4NjQ2', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Database:MSSQL', 'name': 'Database:MSSQL', 'color': 'f4f3a1', 'default': False, 'description': 'Microsoft SQL server'}, {'id': 179040989, 'node_id': 'MDU6TGFiZWwxNzkwNDA5ODk=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Bug', 'name': 'Kind:Bug', 'color': 'e11d21', 'default': False, 'description': None}]",open,False,,[],,1,2019-12-27T12:34:23Z,2020-01-21T19:16:05Z,,CONTRIBUTOR,,,"## Environment
- ejabberd version: 19.09.74
- Erlang version: Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.6
- OS: Arch Linux
- Installed from: source
## Errors from error.log/crash.log
2019-12-27 13:22:08.116245+01:00 [error] <0.335.0>@ejabberd_sql:check_error/2:1246 SQL query 'UPDATE last SET seconds=1577449328, state='' WHERE username='user1'' failed: <<""[FreeTDS][SQL Server]Operand type clash: int is incompatible with text"">>
2019-12-27 13:22:08.116410+01:00 [error] <0.335.0>@ejabberd_sql:check_error/2:1239 SQL query 'Q50955184' at {mod_last_sql,61} failed: <<""[FreeTDS][SQL Server]Operand type clash: int is incompatible with text"">>
## Bug description
When using mod_last with mssql as DB backend ejabberd issues above error. I believe it can be solved by simply putting the timestamp in quotes in the generated SQL strings.
",
585,https://api.github.com/repos/processone/ejabberd/issues/3127,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3127/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3127/comments,https://api.github.com/repos/processone/ejabberd/issues/3127/events,https://github.com/processone/ejabberd/pull/3127,542855239,MDExOlB1bGxSZXF1ZXN0MzU3MjE2Mjkz,3127,allow storage of emojis in archive on mssql,"{'login': 'ChaosKid42', 'id': 15179432, 'node_id': 'MDQ6VXNlcjE1MTc5NDMy', 'avatar_url': 'https://avatars0.githubusercontent.com/u/15179432?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ChaosKid42', 'html_url': 'https://github.com/ChaosKid42', 'followers_url': 'https://api.github.com/users/ChaosKid42/followers', 'following_url': 'https://api.github.com/users/ChaosKid42/following{/other_user}', 'gists_url': 'https://api.github.com/users/ChaosKid42/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ChaosKid42/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ChaosKid42/subscriptions', 'organizations_url': 'https://api.github.com/users/ChaosKid42/orgs', 'repos_url': 'https://api.github.com/users/ChaosKid42/repos', 'events_url': 'https://api.github.com/users/ChaosKid42/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ChaosKid42/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/39', 'html_url': 'https://github.com/processone/ejabberd/milestone/39', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/39/labels', 'id': 5116012, 'node_id': 'MDk6TWlsZXN0b25lNTExNjAxMg==', 'number': 39, 'title': 'ejabberd 20.02', 'description': '', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 10, 'state': 'closed', 'created_at': '2020-02-18T08:48:31Z', 'updated_at': '2020-02-26T13:07:59Z', 'due_on': '2020-02-26T08:00:00Z', 'closed_at': '2020-02-26T13:07:59Z'}",2,2019-12-27T12:10:24Z,2020-02-21T16:12:03Z,2020-02-20T15:28:25Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3127', 'html_url': 'https://github.com/processone/ejabberd/pull/3127', 'diff_url': 'https://github.com/processone/ejabberd/pull/3127.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3127.patch'}","I found that ejabberd doesn't properly store emojis in mssql. Reason is given here: https://www.freetds.org/userguide/localization.htm
I tested this PR with ejabberd 19.09.74 (self-compiled) and following version of db:
Microsoft SQL Server 2019 (RTM-GDR) (KB4517790) - 15.0.2070.41 (X64)
Oct 28 2019 19:56:59
Copyright (C) 2019 Microsoft Corporation
Developer Edition (64-bit) on Linux (Ubuntu 16.04.6 LTS)
",
586,https://api.github.com/repos/processone/ejabberd/issues/3126,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3126/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3126/comments,https://api.github.com/repos/processone/ejabberd/issues/3126/events,https://github.com/processone/ejabberd/issues/3126,542356372,MDU6SXNzdWU1NDIzNTYzNzI=,3126,400 Bad Request on rest-api Ejabberd 19.09,"{'login': 'karmac2015', 'id': 13750094, 'node_id': 'MDQ6VXNlcjEzNzUwMDk0', 'avatar_url': 'https://avatars0.githubusercontent.com/u/13750094?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/karmac2015', 'html_url': 'https://github.com/karmac2015', 'followers_url': 'https://api.github.com/users/karmac2015/followers', 'following_url': 'https://api.github.com/users/karmac2015/following{/other_user}', 'gists_url': 'https://api.github.com/users/karmac2015/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/karmac2015/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/karmac2015/subscriptions', 'organizations_url': 'https://api.github.com/users/karmac2015/orgs', 'repos_url': 'https://api.github.com/users/karmac2015/repos', 'events_url': 'https://api.github.com/users/karmac2015/events{/privacy}', 'received_events_url': 'https://api.github.com/users/karmac2015/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2019-12-25T15:22:30Z,2019-12-25T16:24:22Z,2019-12-25T16:24:22Z,NONE,,,"## Environment
- ejabberd version: 19.09
- OS: Windows 7
- Installed from: official binary installer
## Configuration ejabberd.yml
```###
###' ejabberd configuration file
###
### The parameters used in this configuration file are explained at
###
### https://docs.ejabberd.im/admin/configuration
###
### The configuration file is written in YAML.
### *******************************************************
### ******* !!! WARNING !!! *******
### ******* YAML IS INDENTATION SENSITIVE *******
### ******* MAKE SURE YOU INDENT SECTIONS CORRECTLY *******
### *******************************************************
### Refer to http://en.wikipedia.org/wiki/YAML for the brief description.
###
hosts:
- ""10.1.1.5""
loglevel: 4
log_rotate_size: 10485760
log_rotate_date: """"
log_rotate_count: 1
log_rate_limit: 100
certfiles:
- ""C:/ProgramData/ejabberd/conf/server.pem""
## - ""/etc/letsencrypt/live/localhost/fullchain.pem""
## - ""/etc/letsencrypt/live/localhost/privkey.pem""
ca_file: ""C:/ProgramData/ejabberd/conf/cacert.pem""
listen:
-
port: 5222
module: ejabberd_c2s
max_stanza_size: 262144
shaper: c2s_shaper
access: c2s
starttls_required: true
-
port: 5269
module: ejabberd_s2s_in
max_stanza_size: 524288
-
port: 5443
module: ejabberd_http
tls: true
request_handlers:
""/admin"": ejabberd_web_admin
""/api"": mod_http_api
""/bosh"": mod_bosh
""/captcha"": ejabberd_captcha
""/upload"": mod_http_upload
""/ws"": ejabberd_http_ws
""/oauth"": ejabberd_oauth
-
port: 5280
module: ejabberd_http
request_handlers:
""/admin"": ejabberd_web_admin
""/upload"": mod_http_upload
""/ws"": ejabberd_http_ws
""/api"": mod_http_api
-
port: 1883
module: mod_mqtt
backlog: 1000
s2s_use_starttls: optional
acl:
local:
user_regexp: """"
loopback:
ip:
- 127.0.0.0/8
admin:
user:
- ""admin@10.1.1.5""
access_rules:
local:
allow: local
c2s:
deny: blocked
allow: all
announce:
allow: admin
configure:
allow: admin
muc_create:
allow: local
pubsub_createnode:
allow: local
trusted_network:
allow: loopback
api_permissions:
""console commands"":
from:
- ejabberd_ctl
who: all
what: ""*""
""admin access"":
who:
access:
allow:
acl: loopback
acl: admin
oauth:
scope: ""ejabberd:admin""
access:
allow:
acl: loopback
acl: admin
what:
- ""*""
- ""!stop""
- ""!start""
""public commands"":
who:
ip: 127.0.0.1/8
what:
- status
- connected_users_number
""API used from localhost allows all calls"":
who:
ip: 10.1.1.5
what:
- ""*""
- ""!stop""
- ""!start""
shaper:
normal: 1000
fast: 50000
shaper_rules:
max_user_sessions: 10
max_user_offline_messages:
5000: admin
100: all
c2s_shaper:
none: admin
normal: all
s2s_shaper: fast
max_fsm_queue: 10000
acme:
contact: ""mailto:admin@10.1.1.5""
ca_url: ""https://acme-v01.api.letsencrypt.org""
modules:
mod_adhoc: {}
mod_admin_extra: {}
mod_announce:
access: announce
mod_avatar: {}
mod_blocking: {}
mod_bosh: {}
mod_caps: {}
mod_carboncopy: {}
mod_client_state: {}
mod_configure: {}
mod_disco: {}
mod_fail2ban: {}
mod_http_api: {}
mod_http_upload:
put_url: http://@HOST@:5280/upload
custom_headers:
""Access-Control-Allow-Origin"": ""*""
""Access-Control-Allow-Methods"": ""GET, POST, PUT, OPTIONS, DELETE""
""Access-Control-Allow-Headers"": ""Content-Type, Origin, X-Requested-With""
mod_last: {}
mod_mam:
## Mnesia is limited to 2GB, better to use an SQL backend
## For small servers SQLite is a good fit and is very easy
## to configure. Uncomment this when you have SQL configured:
## db_type: sql
assume_mam_usage: true
default: never
mod_mqtt: {}
mod_muc:
access:
- allow
access_admin:
- allow: admin
access_create: muc_create
access_persistent: muc_create
access_mam:
- allow
default_room_options:
allow_subscription: true # enable MucSub
mam: false
mod_muc_admin: {}
mod_offline:
access_max_user_messages: max_user_offline_messages
mod_ping: {}
mod_privacy: {}
mod_private: {}
mod_proxy65:
access: local
max_connections: 5
mod_pubsub:
access_createnode: pubsub_createnode
plugins:
- flat
- pep
force_node_config:
## Avoid buggy clients to make their bookmarks public
storage:bookmarks:
access_model: whitelist
mod_push: {}
mod_push_keepalive: {}
mod_register:
## Only accept registration requests from the ""trusted""
## network (see access_rules section above).
## Think twice before enabling registration from any
## address. See the Jabber SPAM Manifesto for details:
## https://github.com/ge0rg/jabber-spam-fighting-manifesto
ip_access: trusted_network
mod_roster:
versioning: true
mod_s2s_dialback: {}
mod_shared_roster: {}
mod_stream_mgmt:
resend_on_timeout: if_offline
mod_vcard: {}
mod_vcard_xupdate: {}
mod_version:
show_os: false
### Local Variables:
### mode: yaml
### End:
### vim: set filetype=yaml tabstop=8
auth_method: sql
default_db: sql
sql_type: mysql
sql_server: ""localhost""
sql_database: ""ejabberd""
sql_username: ""ejabberd""
sql_password: ""123456""
## If you want to specify the port:
sql_port: 3306
```
## Bug description
When I am trying to access REST API with basic authentication I get the following response ""400 Bad Request"".
Please help me to solve the problem.
",
587,https://api.github.com/repos/processone/ejabberd/issues/3125,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3125/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3125/comments,https://api.github.com/repos/processone/ejabberd/issues/3125/events,https://github.com/processone/ejabberd/pull/3125,542222228,MDExOlB1bGxSZXF1ZXN0MzU2NzA5OTM0,3125,enable odbc in mix build,"{'login': 'ChaosKid42', 'id': 15179432, 'node_id': 'MDQ6VXNlcjE1MTc5NDMy', 'avatar_url': 'https://avatars0.githubusercontent.com/u/15179432?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ChaosKid42', 'html_url': 'https://github.com/ChaosKid42', 'followers_url': 'https://api.github.com/users/ChaosKid42/followers', 'following_url': 'https://api.github.com/users/ChaosKid42/following{/other_user}', 'gists_url': 'https://api.github.com/users/ChaosKid42/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ChaosKid42/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ChaosKid42/subscriptions', 'organizations_url': 'https://api.github.com/users/ChaosKid42/orgs', 'repos_url': 'https://api.github.com/users/ChaosKid42/repos', 'events_url': 'https://api.github.com/users/ChaosKid42/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ChaosKid42/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/40', 'html_url': 'https://github.com/processone/ejabberd/milestone/40', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/40/labels', 'id': 5218332, 'node_id': 'MDk6TWlsZXN0b25lNTIxODMzMg==', 'number': 40, 'title': 'ejabberd 20.03', 'description': 'https://www.process-one.net/blog/ejabberd-20-03/', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 20, 'state': 'closed', 'created_at': '2020-03-19T15:58:57Z', 'updated_at': '2020-04-29T09:42:17Z', 'due_on': '2020-03-25T07:00:00Z', 'closed_at': '2020-03-26T10:03:11Z'}",1,2019-12-24T23:42:41Z,2020-03-19T15:59:20Z,2020-02-26T13:45:02Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3125', 'html_url': 'https://github.com/processone/ejabberd/pull/3125', 'diff_url': 'https://github.com/processone/ejabberd/pull/3125.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3125.patch'}","I'd like to use the official ejabberd docker image with odbc database connectivity. Therefore this change is necessary in addtition to a change in docker-ejabberd:
See https://github.com/processone/docker-ejabberd/issues/50 and https://github.com/processone/docker-ejabberd/pull/51.
",
588,https://api.github.com/repos/processone/ejabberd/issues/3124,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3124/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3124/comments,https://api.github.com/repos/processone/ejabberd/issues/3124/events,https://github.com/processone/ejabberd/issues/3124,542013618,MDU6SXNzdWU1NDIwMTM2MTg=,3124,Ejabberd 19.x does not support external HTTP auth,"{'login': 'Adiii717', 'id': 23054298, 'node_id': 'MDQ6VXNlcjIzMDU0Mjk4', 'avatar_url': 'https://avatars3.githubusercontent.com/u/23054298?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Adiii717', 'html_url': 'https://github.com/Adiii717', 'followers_url': 'https://api.github.com/users/Adiii717/followers', 'following_url': 'https://api.github.com/users/Adiii717/following{/other_user}', 'gists_url': 'https://api.github.com/users/Adiii717/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Adiii717/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Adiii717/subscriptions', 'organizations_url': 'https://api.github.com/users/Adiii717/orgs', 'repos_url': 'https://api.github.com/users/Adiii717/repos', 'events_url': 'https://api.github.com/users/Adiii717/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Adiii717/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2019-12-24T06:42:03Z,2019-12-24T07:37:46Z,2019-12-24T07:21:37Z,NONE,,,"## Environment
- ejabberd version: 19.x
- Erlang version: `Erlang/OTP 21 [erts-10.2.1] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:1] [hipe]`
- OS: Linux (Debian)
- Installed from: Offical Docker image
## Configuration
```
auth_method: http
auth_opts:
host: ""http://localhost:12000""
connection_pool_size: 10
connection_opts: []
basic_auth: """"
path_prefix: ""/""
...
```
## Errors from error.log/crash.log
```
06:30:30.437 [critical] Failed to start ejabberd application: Invalid value of option auth_method->1: unsupported database: http
```
## Bug description
The ejabberd external HTTP auth module stop working with 19.x and the config not allow me to use `auth_method:http`, it crashes with the mentioned error, previously we were able to authenticate users using this module.
https://github.com/processone/ejabberd-contrib/tree/master/ejabberd_auth_http
Thanks
",
589,https://api.github.com/repos/processone/ejabberd/issues/3123,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3123/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3123/comments,https://api.github.com/repos/processone/ejabberd/issues/3123/events,https://github.com/processone/ejabberd/issues/3123,541944582,MDU6SXNzdWU1NDE5NDQ1ODI=,3123,Windows - crash with Access Violation in MSVCR120.dll,"{'login': 'darkphoenix', 'id': 14921524, 'node_id': 'MDQ6VXNlcjE0OTIxNTI0', 'avatar_url': 'https://avatars3.githubusercontent.com/u/14921524?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/darkphoenix', 'html_url': 'https://github.com/darkphoenix', 'followers_url': 'https://api.github.com/users/darkphoenix/followers', 'following_url': 'https://api.github.com/users/darkphoenix/following{/other_user}', 'gists_url': 'https://api.github.com/users/darkphoenix/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/darkphoenix/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/darkphoenix/subscriptions', 'organizations_url': 'https://api.github.com/users/darkphoenix/orgs', 'repos_url': 'https://api.github.com/users/darkphoenix/repos', 'events_url': 'https://api.github.com/users/darkphoenix/events{/privacy}', 'received_events_url': 'https://api.github.com/users/darkphoenix/received_events', 'type': 'User', 'site_admin': False}","[{'id': 231569227, 'node_id': 'MDU6TGFiZWwyMzE1NjkyMjc=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Installers', 'name': 'Component:Installers', 'color': 'fef2c0', 'default': False, 'description': None}]",open,False,,[],,2,2019-12-24T00:36:33Z,2020-02-14T12:49:36Z,,NONE,,,"In a working Windows install of ejabberd 19.02, a few months ago crashes on startup kept occurring supposedly caused by an Access Violation (0xc0000005) in MSVCR120.dll. An update install of 19.09.1 ended with an install script failure (also with an erl.exe crash) and the same issues still occurring. As I understand, ejabberd ships its own Erlang and MSVCR120.dll, so the same error occurring with both installs is rather confusing to me, along with the fact that removing the MSVCR120.dll to fall back to the OS version did not fix the error either. Process Explorer claims the bundled MSVCR120.dll is actually the one being loaded when it is present. I am quite frankly at wit's end at this point as I don't have the means to debug an error in native code and there is no helpful error log, so I'm opening this issue. What might be causing this problem?",
590,https://api.github.com/repos/processone/ejabberd/issues/3122,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3122/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3122/comments,https://api.github.com/repos/processone/ejabberd/issues/3122/events,https://github.com/processone/ejabberd/issues/3122,541615400,MDU6SXNzdWU1NDE2MTU0MDA=,3122,oauth_issue_token - case clause issue,"{'login': 'Shruthi-Bharadwaj', 'id': 14962242, 'node_id': 'MDQ6VXNlcjE0OTYyMjQy', 'avatar_url': 'https://avatars3.githubusercontent.com/u/14962242?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Shruthi-Bharadwaj', 'html_url': 'https://github.com/Shruthi-Bharadwaj', 'followers_url': 'https://api.github.com/users/Shruthi-Bharadwaj/followers', 'following_url': 'https://api.github.com/users/Shruthi-Bharadwaj/following{/other_user}', 'gists_url': 'https://api.github.com/users/Shruthi-Bharadwaj/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Shruthi-Bharadwaj/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Shruthi-Bharadwaj/subscriptions', 'organizations_url': 'https://api.github.com/users/Shruthi-Bharadwaj/orgs', 'repos_url': 'https://api.github.com/users/Shruthi-Bharadwaj/repos', 'events_url': 'https://api.github.com/users/Shruthi-Bharadwaj/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Shruthi-Bharadwaj/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179040989, 'node_id': 'MDU6TGFiZWwxNzkwNDA5ODk=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Bug', 'name': 'Kind:Bug', 'color': 'e11d21', 'default': False, 'description': None}, {'id': 1007354081, 'node_id': 'MDU6TGFiZWwxMDA3MzU0MDgx', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Regression', 'name': 'Kind:Regression', 'color': 'd93f0b', 'default': False, 'description': ''}]",closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/38', 'html_url': 'https://github.com/processone/ejabberd/milestone/38', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/38/labels', 'id': 4710876, 'node_id': 'MDk6TWlsZXN0b25lNDcxMDg3Ng==', 'number': 38, 'title': 'ejabberd 19.12', 'description': '', 'creator': {'login': 'zinid', 'id': 1095902, 'node_id': 'MDQ6VXNlcjEwOTU5MDI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1095902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/zinid', 'html_url': 'https://github.com/zinid', 'followers_url': 'https://api.github.com/users/zinid/followers', 'following_url': 'https://api.github.com/users/zinid/following{/other_user}', 'gists_url': 'https://api.github.com/users/zinid/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/zinid/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/zinid/subscriptions', 'organizations_url': 'https://api.github.com/users/zinid/orgs', 'repos_url': 'https://api.github.com/users/zinid/repos', 'events_url': 'https://api.github.com/users/zinid/events{/privacy}', 'received_events_url': 'https://api.github.com/users/zinid/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 2, 'closed_issues': 5, 'state': 'closed', 'created_at': '2019-10-01T19:12:36Z', 'updated_at': '2020-03-18T13:40:27Z', 'due_on': '2019-12-31T08:00:00Z', 'closed_at': '2020-02-18T08:47:53Z'}",6,2019-12-23T07:18:33Z,2019-12-24T12:21:10Z,2019-12-24T12:21:10Z,NONE,,,"## Environment
- ejabberd version: 19.09.57
- Erlang version: Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.5.6
- OS: Centos
- Installed from: source
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
loglevel: 4
...
```
## Errors from error.log/crash.log
No errors
## Bug description
Please, give us a precise description (what does not work, what is expected, etc.)
I have deployed ejabberd on a aws server with a certain IP and hostname as `ejabberd.myname.test`
From my NodeJS server I am trying to hit the ejabberd API to issue token for a certain jid:
```
return` rp({
uri: `${EJABBERD_URL}/api/oauth_issue_token`,
method: 'POST',
headers: {
'X-Admin': true,
'Authorization': this.adminAuth,
},
body: {
jid,
ttl: 3600,
scopes: ""sasl_auth""
},
json: true,
})
```
> where:
> EJABBERD_URL : ejabberd.myname.test:5280
> this.adminAuth: ""Basic "" + new Buffer(EJABBERD_ADMIN_USERNAME + "":"" + EJABBERD_ADMIN_PASSWORD).toString(""base64"");
There is a case_clause error thrown upon hitting this API:
```
[info] (<0.558.0>) Accepted connection [::ffff:192.168.0.100]:54170 -> [::ffff:192.168.0.200]:5280
2019-12-23 12:28:52.060635+05:30 [info] API call oauth_issue_token [{<<""jid"">>,<<""anish@ejabberd.quezx.test"">>},
{<<""ttl"">>,3600},
{<<""scopes"">>,<<""sasl_auth"">>}] from ::ffff:192.168.0.100:54170
2019-12-23 12:28:52.061433+05:30 [error] REST API Error: oauth_issue_token([{<<""jid"">>,<<""anish@ejabberd.myname.test"">>},
{<<""ttl"">>,3600},
{<<""scopes"">>,<<""sasl_auth"">>}]) -> error:{case_clause,
admin_generated} [{ejabberd_oauth,
authenticate_user,
2,
[{file,
""src/ejabberd_oauth.erl""},
{line,
263}]},
{oauth2,
auth_user,
3,
[{file,
""src/oauth2.erl""},
{line,
351}]},
{ejabberd_oauth,
oauth_issue_token,
3,
[{file,
""src/ejabberd_oauth.erl""},
{line,
140}]},
{mod_http_api,
handle2,
4,
[{file,
""src/mod_http_api.erl""},
{line,
267}]},
{mod_http_api,
handle,
4,
[{file,
""src/mod_http_api.erl""},
{line,
228}]},
{mod_http_api,
perform_call,
4,
[{file,
""src/mod_http_api.erl""},
{line,
188}]},
{mod_http_api,
process,
2,
[{file,
""src/mod_http_api.erl""},
{line,
141}]},
{ejabberd_http,
process,
2,
[{file,
""src/ejabberd_http.erl""},
{line,
366}]}]
```
Here is my ejabberd.yml file
```
###
### ejabberd configuration file
###
### The parameters used in this configuration file are explained at
###
### https://docs.ejabberd.im/admin/configuration
###
### The configuration file is written in YAML.
### *******************************************************
### ******* !!! WARNING !!! *******
### ******* YAML IS INDENTATION SENSITIVE *******
### ******* MAKE SURE YOU INDENT SECTIONS CORRECTLY *******
### *******************************************************
### Refer to http://en.wikipedia.org/wiki/YAML for the brief description.
###
hosts:
- ejabberd.myname.test
loglevel: info
## If you already have certificates, list them here
# certfiles:
# - /etc/letsencrypt/live/domain.tld/fullchain.pem
# - /etc/letsencrypt/live/domain.tld/privkey.pem
listen:
-
port: 5222
ip: ""::""
module: ejabberd_c2s
max_stanza_size: 262144
shaper: c2s_shaper
access: c2s
starttls_required: true
-
port: 5269
ip: ""::""
module: ejabberd_s2s_in
max_stanza_size: 524288
-
port: 5443
ip: ""::""
module: ejabberd_http
tls: true
request_handlers:
/admin: ejabberd_web_admin
/api: mod_http_api
/bosh: mod_bosh
/captcha: ejabberd_captcha
/upload: mod_http_upload
/ws: ejabberd_http_ws
-
port: 5280
ip: ""::""
module: ejabberd_http
http_bind: true
register: true
web_admin: true
request_handlers:
/admin: ejabberd_web_admin
/oauth: ejabberd_oauth
/api: mod_http_api
/bosh: mod_bosh
/.well-known/acme-challenge: ejabberd_acme
-
port: 1883
ip: ""::""
module: mod_mqtt
backlog: 1000
s2s_use_starttls: optional
acl:
local:
user_regexp: """"
loopback:
ip:
- 127.0.0.0/8
- ::1/128
- ::ffff:192.168.0.100/128
admin:
user:
- ""gloryque@ejabberd.myname.test""
access_rules:
local:
allow: local
c2s:
deny: blocked
allow: all
announce:
allow: admin
configure:
allow: admin
muc_create:
allow: local
pubsub_createnode:
allow: local
trusted_network:
allow: all
api_permissions:
""console commands"":
from:
- ejabberd_ctl
who: all
what: ""*""
""admin access"":
who:
access:
allow:
acl: admin
#acl: loopback
oauth:
scope: ""ejabberd:admin""
access:
allow:
acl: admin
#acl: loopback
what:
- ""*""
- ""!stop""
- ""!start""
""public commands"":
who:
ip: 127.0.0.1/8
what:
- check_account
- register
- status
- connected_users_number
- oauth_issue_token
""API used from localhost allows all calls"":
who:
ip: ""0.0.0.0/8""
what:
- ""*""
- ""!stop""
- ""!start""
shaper:
normal: 1000
fast: 50000
shaper_rules:
max_user_sessions: 10
max_user_offline_messages:
5000: admin
100: all
c2s_shaper:
none: admin
normal: all
s2s_shaper: fast
modules:
mod_adhoc: {}
mod_admin_extra: {}
mod_announce:
access: announce
mod_avatar: {}
mod_blocking: {}
mod_bosh: {}
mod_caps: {}
mod_carboncopy: {}
mod_client_state: {}
mod_configure: {}
mod_disco: {}
mod_fail2ban: {}
mod_http_api: {}
mod_http_upload:
put_url: https://@HOST@:5443/upload
mod_last: {}
mod_mam:
## Mnesia is limited to 2GB, better to use an SQL backend
## For small servers SQLite is a good fit and is very easy
## to configure. Uncomment this when you have SQL configured:
db_type: sql
assume_mam_usage: true
default: always
mod_mqtt: {}
mod_muc:
access:
- allow
access_admin:
- allow: admin
access_create: muc_create
access_persistent: muc_create
access_mam:
- allow
default_room_options:
mam: true
mod_muc_admin: {}
mod_offline:
access_max_user_messages: max_user_offline_messages
mod_ping: {}
mod_privacy: {}
mod_private: {}
mod_proxy65:
access: local
max_connections: 5
mod_pubsub:
access_createnode: pubsub_createnode
plugins:
- flat
- pep
force_node_config:
## Avoid buggy clients to make their bookmarks public
storage:bookmarks:
access_model: whitelist
mod_push: {}
#mod_http_bind: {}
mod_push_keepalive: {}
mod_register:
## Only accept registration requests from the ""trusted""
## network (see access_rules section above).
## Think twice before enabling registration from any
## address. See the Jabber SPAM Manifesto for details:
## https://github.com/ge0rg/jabber-spam-fighting-manifesto
ip_access: all
mod_roster:
versioning: true
mod_s2s_dialback: {}
mod_shared_roster: {}
mod_stream_mgmt:
resend_on_timeout: if_offline
mod_vcard: {}
mod_vcard_xupdate: {}
mod_version:
show_os: false
auth_method: sql
default_db: sql
new_sql_schema: true
sql_type: mysql
sql_server:
sql_port: 3306
sql_database: """"
sql_username: """"
sql_password: """"
sql_pool_size: 5
oauth_access: all
### Local Variables:
### mode: yaml
### End:
### vim: set filetype=yaml tabstop=8
```
",
591,https://api.github.com/repos/processone/ejabberd/issues/3121,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3121/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3121/comments,https://api.github.com/repos/processone/ejabberd/issues/3121/events,https://github.com/processone/ejabberd/issues/3121,541149688,MDU6SXNzdWU1NDExNDk2ODg=,3121,mod_push warning: feature-not-implemented (cancel) disabling the push,"{'login': 'logicwonder', 'id': 2443141, 'node_id': 'MDQ6VXNlcjI0NDMxNDE=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2443141?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/logicwonder', 'html_url': 'https://github.com/logicwonder', 'followers_url': 'https://api.github.com/users/logicwonder/followers', 'following_url': 'https://api.github.com/users/logicwonder/following{/other_user}', 'gists_url': 'https://api.github.com/users/logicwonder/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/logicwonder/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/logicwonder/subscriptions', 'organizations_url': 'https://api.github.com/users/logicwonder/orgs', 'repos_url': 'https://api.github.com/users/logicwonder/repos', 'events_url': 'https://api.github.com/users/logicwonder/events{/privacy}', 'received_events_url': 'https://api.github.com/users/logicwonder/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2019-12-20T18:58:32Z,2019-12-21T08:53:33Z,2019-12-21T08:53:19Z,NONE,,,"## Environment
- ejabberd version: 19.09.1
- Erlang version: 10.6.1
- OS: Linux (Debian)
- Installed from: source
## Configuration:
```
loglevel: 4
log_rotate_size: 10485760
log_rotate_date: ""$D0""
log_rotate_count: 1
log_rate_limit: 100
hosts:
- ""testserver.com""
certfiles:
- ""/etc/ssl/ejabberd/testserver.pem""
listen:
-
port: 5222
ip: ""::""
module: ejabberd_c2s
protocol_options:
- ""no_sslv2""
- ""no_sslv3""
- ""no_tlsv1""
- ""no_tlsv1_1""
ciphers: ""ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POL
Y1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDH
E-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256""
starttls: true
max_stanza_size: 65536
shaper: c2s_shaper
access: c2s
-
port: 5269
ip: ""::""
module: ejabberd_s2s_in
-
port: 5280
ip: ""::""
module: ejabberd_http
request_handlers:
""/ws"": ejabberd_http_ws
""/bosh"": mod_bosh
""/api"": mod_http_api
""/admin"": ejabberd_web_admin
""/captcha"": ejabberd_captcha
-
port: 8888
module: ejabberd_service
access: all
check_from: false
shaper: fast
ip: ""xxx.xxx.xxx.xxx""
hosts:
""push.testserver.com"":
password: ""********""
auth_method: sql
auth_password_format: scram
sql_type: pgsql
sql_server: ""xxx.xxx.xxx.xxx""
sql_database: ""****""
sql_username: ""****""
sql_password: ""*********""
sql_port: 5432
default_db: sql
shaper:
normal: 1000
fast: 100000
max_fsm_queue: 10000
acl:
admin:
user:
- ""admin@testserver.com""
local:
user_regexp: """"
loopback:
ip:
- ""127.0.0.0/8""
- ""::1/128""
- ""::FFFF:127.0.0.1/128""
shaper_rules:
max_user_sessions: 10
max_user_offline_messages:
- 5000: admin
- 1500
c2s_shaper:
- none: admin
- normal
s2s_shaper: fast
access_rules:
local:
- allow: local
c2s:
- allow
announce:
- allow: admin
configure:
- allow: admin
muc_create:
- allow: admin
pubsub_createnode:
- allow: local
register:
- allow
trusted_network:
- allow: loopback
api_permissions:
""console commands"":
from:
- ejabberd_ctl
who: all
what: ""*""
""admin access"":
who:
- ip: ""xxx.xxx.xxx.xxx/32""
- access:
- allow:
- acl: loopback
- acl: admin
- oauth:
- scope: ""ejabberd:admin""
- access:
- allow:
- acl: loopback
- acl: admin
what:
- ""*""
- ""!stop""
- ""!start""
""public commands"":
who:
- ip: ""xxx.xxx.xxx.xxx/32""
what:
- ""status""
- ""connected_users_number""
""API used from localhost allows all calls"":
who:
- ip: ""127.0.0.1/8""
what:
- ""*""
- ""!stop""
- ""!start""
language: ""en""
acme:
contact: ""mailto:example-admin@example.com""
ca_url: ""https://acme-v01.api.letsencrypt.org""
modules:
mod_adhoc: {}
mod_admin_extra: {}
mod_announce: # recommends mod_adhoc
access: announce
mod_blocking: {} # requires mod_privacy
mod_caps: {}
mod_carboncopy: {}
mod_client_state: {}
mod_configure: {} # requires mod_adhoc
mod_disco: {}
mod_bosh: {}
mod_last: {}
mod_mam:
default: always
db_type: sql
mod_muc:
max_user_conferences: 100
access:
- allow
access_admin:
- allow: admin
access_create: muc_create
access_persistent: muc_create
default_room_options:
allow_subscription: true
mam: true
persistent: true
mod_muc_admin: {}
mod_offline:
access_max_user_messages: max_user_offline_messages
mod_ping: {}
mod_privacy: {}
mod_private: {}
mod_pubsub:
access_createnode: pubsub_createnode
ignore_pep_from_offline: true
last_item_cache: false
plugins:
- ""flat""
- ""pep"" # pep requires mod_caps
force_node_config:
""eu.siacs.conversations.axolotl.*"":
access_model: whitelist
""storage:bookmarks"":
access_model: whitelist
mod_push:
include_sender: true
mod_push_keepalive: {}
mod_roster:
use_cache: true
cache_size: 10000
cache_life_time: 3600
mod_shared_roster: {}
mod_stats: {}
mod_time: {}
mod_vcard:
search: false
mod_vcard_xupdate: {}
mod_avatar: {}
mod_version: {}
mod_stream_mgmt:
max_ack_queue: 1000
resume_timeout: 300
max_resume_timeout: 300
resend_on_timeout: true
ack_timeout: 60
mod_s2s_dialback: {}
mod_http_api: {}
mod_fail2ban: {}
allow_contrib_modules: true
```
## Errors from error.log
`2019-12-20 21:09:15.833 [info] <0.2250.0>@mod_stream_mgmt:transition_to_pending:451 (tls|<0.2250.0>) Closing c2s connection for sam@testserver.com/cli: Connection failed: connection closed; waiting 300 seconds for stream resumption
2019-12-20 21:09:17.694 [warning] <0.439.0>@mod_push:notify:461 push.testserver.com rejected notification for sam@testserver.com (sam@testserver.com), **disabling push: feature-not-implemented (cancel)**`
## Bug description
We are trying to configure ejabberd to push notifications to FCM by implementing a app server (XEP-0357). When the user goes offline, the record in push_session is deleted and the following IQ is received in the app server log:
`http://jabber.org/protocol/pubsub#publish-optionsctN-MXfg3zQ:APA91bGuDRhHMTT_PsjgNETh0IMht6iyzRlngE9FmmcnmRJbHAqxXdaplAyliDAoWd1qpCMIaAmBQXaE5fSNgDg_r8VZqxydDUgMyDA5guSAffh9elZ6Qt_Q8Un3gf1LKEnFJ_ufVwtb `
Why do I get the error feature-not-implemented (cancel) disabling the push?
Currently I am not acknowledging/replying to any IQ received at the external service. Could that be a problem?
",
592,https://api.github.com/repos/processone/ejabberd/issues/3120,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3120/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3120/comments,https://api.github.com/repos/processone/ejabberd/issues/3120/events,https://github.com/processone/ejabberd/issues/3120,540327087,MDU6SXNzdWU1NDAzMjcwODc=,3120,store_offline_message triggered even if message limit has been reached,"{'login': 'McPo', 'id': 1295034, 'node_id': 'MDQ6VXNlcjEyOTUwMzQ=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1295034?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/McPo', 'html_url': 'https://github.com/McPo', 'followers_url': 'https://api.github.com/users/McPo/followers', 'following_url': 'https://api.github.com/users/McPo/following{/other_user}', 'gists_url': 'https://api.github.com/users/McPo/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/McPo/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/McPo/subscriptions', 'organizations_url': 'https://api.github.com/users/McPo/orgs', 'repos_url': 'https://api.github.com/users/McPo/repos', 'events_url': 'https://api.github.com/users/McPo/events{/privacy}', 'received_events_url': 'https://api.github.com/users/McPo/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,"{'login': 'weiss', 'id': 71850, 'node_id': 'MDQ6VXNlcjcxODUw', 'avatar_url': 'https://avatars1.githubusercontent.com/u/71850?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/weiss', 'html_url': 'https://github.com/weiss', 'followers_url': 'https://api.github.com/users/weiss/followers', 'following_url': 'https://api.github.com/users/weiss/following{/other_user}', 'gists_url': 'https://api.github.com/users/weiss/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/weiss/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/weiss/subscriptions', 'organizations_url': 'https://api.github.com/users/weiss/orgs', 'repos_url': 'https://api.github.com/users/weiss/repos', 'events_url': 'https://api.github.com/users/weiss/events{/privacy}', 'received_events_url': 'https://api.github.com/users/weiss/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'weiss', 'id': 71850, 'node_id': 'MDQ6VXNlcjcxODUw', 'avatar_url': 'https://avatars1.githubusercontent.com/u/71850?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/weiss', 'html_url': 'https://github.com/weiss', 'followers_url': 'https://api.github.com/users/weiss/followers', 'following_url': 'https://api.github.com/users/weiss/following{/other_user}', 'gists_url': 'https://api.github.com/users/weiss/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/weiss/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/weiss/subscriptions', 'organizations_url': 'https://api.github.com/users/weiss/orgs', 'repos_url': 'https://api.github.com/users/weiss/repos', 'events_url': 'https://api.github.com/users/weiss/events{/privacy}', 'received_events_url': 'https://api.github.com/users/weiss/received_events', 'type': 'User', 'site_admin': False}]",,3,2019-12-19T13:52:06Z,2020-01-05T19:59:59Z,2020-01-05T19:59:59Z,NONE,,,"## Environment
- ejabberd version: 18.09
- Erlang version: Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 9.3
- OS: Linux (Alpine)
- Installed from: Docker
`store_offline_message` hook continues to be triggered even though the the offline storage is full and the message has been discarded. This results in the user being notified of a message despite that particular message not existing. (Other will have, but that wont).
Instead store_offline_message hook, should only be triggered when the message has been stored successfully, or report that the message was not stored due to an error (limit reached)
",
593,https://api.github.com/repos/processone/ejabberd/issues/3119,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3119/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3119/comments,https://api.github.com/repos/processone/ejabberd/issues/3119/events,https://github.com/processone/ejabberd/issues/3119,539559195,MDU6SXNzdWU1Mzk1NTkxOTU=,3119,"After a password change, the XMPP session is always here","{'login': 'Neustradamus', 'id': 104737, 'node_id': 'MDQ6VXNlcjEwNDczNw==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/104737?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Neustradamus', 'html_url': 'https://github.com/Neustradamus', 'followers_url': 'https://api.github.com/users/Neustradamus/followers', 'following_url': 'https://api.github.com/users/Neustradamus/following{/other_user}', 'gists_url': 'https://api.github.com/users/Neustradamus/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Neustradamus/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Neustradamus/subscriptions', 'organizations_url': 'https://api.github.com/users/Neustradamus/orgs', 'repos_url': 'https://api.github.com/users/Neustradamus/repos', 'events_url': 'https://api.github.com/users/Neustradamus/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Neustradamus/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2019-12-18T09:29:42Z,2019-12-25T11:52:15Z,2019-12-21T09:22:14Z,NONE,,,"When we change an user password, the current XMPP session is not cutted.
The XMPP session is always up.
How cut the XMPP session of the user?",
594,https://api.github.com/repos/processone/ejabberd/issues/3118,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3118/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3118/comments,https://api.github.com/repos/processone/ejabberd/issues/3118/events,https://github.com/processone/ejabberd/issues/3118,539557915,MDU6SXNzdWU1Mzk1NTc5MTU=,3118,"Import from Isode M-Link, Jackal, Metronome IM, Prosody 0.12.x, Tigase 8.0 do not work","{'login': 'Neustradamus', 'id': 104737, 'node_id': 'MDQ6VXNlcjEwNDczNw==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/104737?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Neustradamus', 'html_url': 'https://github.com/Neustradamus', 'followers_url': 'https://api.github.com/users/Neustradamus/followers', 'following_url': 'https://api.github.com/users/Neustradamus/following{/other_user}', 'gists_url': 'https://api.github.com/users/Neustradamus/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Neustradamus/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Neustradamus/subscriptions', 'organizations_url': 'https://api.github.com/users/Neustradamus/orgs', 'repos_url': 'https://api.github.com/users/Neustradamus/repos', 'events_url': 'https://api.github.com/users/Neustradamus/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Neustradamus/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2019-12-18T09:27:24Z,2019-12-25T11:51:46Z,2019-12-21T09:22:56Z,NONE,,,"Currently, there is a problem to import data into ejabberd from:
- Isode M-Link XMPP server
- Jackal XMPP server
- Metronome IM XMPP server
- Prosody XMPP server 0.12.x
- Tigase XMPP server 8.0
I think it is linked to SCRAM-SHA-256 but I am not 100% sure.",
595,https://api.github.com/repos/processone/ejabberd/issues/3117,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3117/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3117/comments,https://api.github.com/repos/processone/ejabberd/issues/3117/events,https://github.com/processone/ejabberd/issues/3117,538895183,MDU6SXNzdWU1Mzg4OTUxODM=,3117,ejabberd addition.js and style.css file not loaded in web admin ,"{'login': 'AhsanFasihi', 'id': 58970537, 'node_id': 'MDQ6VXNlcjU4OTcwNTM3', 'avatar_url': 'https://avatars3.githubusercontent.com/u/58970537?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/AhsanFasihi', 'html_url': 'https://github.com/AhsanFasihi', 'followers_url': 'https://api.github.com/users/AhsanFasihi/followers', 'following_url': 'https://api.github.com/users/AhsanFasihi/following{/other_user}', 'gists_url': 'https://api.github.com/users/AhsanFasihi/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/AhsanFasihi/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/AhsanFasihi/subscriptions', 'organizations_url': 'https://api.github.com/users/AhsanFasihi/orgs', 'repos_url': 'https://api.github.com/users/AhsanFasihi/repos', 'events_url': 'https://api.github.com/users/AhsanFasihi/events{/privacy}', 'received_events_url': 'https://api.github.com/users/AhsanFasihi/received_events', 'type': 'User', 'site_admin': False}","[{'id': 352233730, 'node_id': 'MDU6TGFiZWwzNTIyMzM3MzA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Question', 'name': 'Kind:Question', 'color': 'fef2c0', 'default': False, 'description': None}, {'id': 179053319, 'node_id': 'MDU6TGFiZWwxNzkwNTMzMTk=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Level:Starter', 'name': 'Level:Starter', 'color': 'fef2c0', 'default': False, 'description': None}]",closed,False,,[],,16,2019-12-17T07:46:08Z,2019-12-17T11:07:48Z,2019-12-17T10:29:22Z,NONE,,,"I download ejabberd source code in ubuntu and compiled 100% but when I login addition.js and style.css is not loaded in web admin.
Can anyone help me.
![2019-12-17_124435](https://user-images.githubusercontent.com/58970537/70975084-0c000800-20cb-11ea-9731-6319cb9250ce.png)
",
596,https://api.github.com/repos/processone/ejabberd/issues/3116,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3116/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3116/comments,https://api.github.com/repos/processone/ejabberd/issues/3116/events,https://github.com/processone/ejabberd/issues/3116,538305049,MDU6SXNzdWU1MzgzMDUwNDk=,3116,too slow srg_user_add / srg_user_del API call,"{'login': 'sarsonj', 'id': 925756, 'node_id': 'MDQ6VXNlcjkyNTc1Ng==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/925756?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/sarsonj', 'html_url': 'https://github.com/sarsonj', 'followers_url': 'https://api.github.com/users/sarsonj/followers', 'following_url': 'https://api.github.com/users/sarsonj/following{/other_user}', 'gists_url': 'https://api.github.com/users/sarsonj/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/sarsonj/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/sarsonj/subscriptions', 'organizations_url': 'https://api.github.com/users/sarsonj/orgs', 'repos_url': 'https://api.github.com/users/sarsonj/repos', 'events_url': 'https://api.github.com/users/sarsonj/events{/privacy}', 'received_events_url': 'https://api.github.com/users/sarsonj/received_events', 'type': 'User', 'site_admin': False}","[{'id': 346842756, 'node_id': 'MDU6TGFiZWwzNDY4NDI3NTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Note:Cannot%20reproduce', 'name': 'Note:Cannot reproduce', 'color': 'c7def8', 'default': False, 'description': None}]",closed,False,,[],,0,2019-12-16T09:58:55Z,2020-06-24T10:34:59Z,2020-06-24T10:34:59Z,NONE,,,"## Environment
- ejabberd version: 19.9.1
- OS: Linux (Debian)
- Installed from: docker
## Bug description
We have ejabberd as docker container in kubernetes cluster, for database we are using PostgreSQL. For our use case, we are using shard roster groups. When there is up to 10 items in shared roster group, everything is fine. However, when there is like 50 of items in shared roster groups, every operation (delete, add) need more that 20 seconds to perform (sometimes even more). Otherwise, the server s not too much crowded - we have 2 nodes with just few users online. We are using Ejabberd admin api, `srg_user_add` and `srg_user_del`.
The same problem happens when we try to add / remove shared roster group through web admin.
Is there any way to solve this performance issue? ",
597,https://api.github.com/repos/processone/ejabberd/issues/3115,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3115/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3115/comments,https://api.github.com/repos/processone/ejabberd/issues/3115/events,https://github.com/processone/ejabberd/issues/3115,537969314,MDU6SXNzdWU1Mzc5NjkzMTQ=,3115,mod_muc_log html skips messages with non-Latin letters,"{'login': 'yandrey', 'id': 76512, 'node_id': 'MDQ6VXNlcjc2NTEy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/76512?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/yandrey', 'html_url': 'https://github.com/yandrey', 'followers_url': 'https://api.github.com/users/yandrey/followers', 'following_url': 'https://api.github.com/users/yandrey/following{/other_user}', 'gists_url': 'https://api.github.com/users/yandrey/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/yandrey/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/yandrey/subscriptions', 'organizations_url': 'https://api.github.com/users/yandrey/orgs', 'repos_url': 'https://api.github.com/users/yandrey/repos', 'events_url': 'https://api.github.com/users/yandrey/events{/privacy}', 'received_events_url': 'https://api.github.com/users/yandrey/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/38', 'html_url': 'https://github.com/processone/ejabberd/milestone/38', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/38/labels', 'id': 4710876, 'node_id': 'MDk6TWlsZXN0b25lNDcxMDg3Ng==', 'number': 38, 'title': 'ejabberd 19.12', 'description': '', 'creator': {'login': 'zinid', 'id': 1095902, 'node_id': 'MDQ6VXNlcjEwOTU5MDI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1095902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/zinid', 'html_url': 'https://github.com/zinid', 'followers_url': 'https://api.github.com/users/zinid/followers', 'following_url': 'https://api.github.com/users/zinid/following{/other_user}', 'gists_url': 'https://api.github.com/users/zinid/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/zinid/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/zinid/subscriptions', 'organizations_url': 'https://api.github.com/users/zinid/orgs', 'repos_url': 'https://api.github.com/users/zinid/repos', 'events_url': 'https://api.github.com/users/zinid/events{/privacy}', 'received_events_url': 'https://api.github.com/users/zinid/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 2, 'closed_issues': 5, 'state': 'closed', 'created_at': '2019-10-01T19:12:36Z', 'updated_at': '2020-03-18T13:40:27Z', 'due_on': '2019-12-31T08:00:00Z', 'closed_at': '2020-02-18T08:47:53Z'}",4,2019-12-14T21:42:33Z,2019-12-16T10:36:18Z,2019-12-16T10:36:18Z,NONE,,,"## Environment
- ejabberd: master
- Erlang version: Erlang/OTP 21
- OS: Linux (Debian)
## Bug description
mod_muc_log writes latin symbols successfully in html logs, but skips every message with, say, russian symbols.
say in Psi client:
```
[21:27:45] привет!
[21:38:33] hello
```
but the html log made by mod_muc_log included into the sources:
```
[21:27:43] admin joins the room
[21:38:33] hello
```
that is
```html
[21:27:43] admin joins the room [21:38:33] <admin> hello
```",
598,https://api.github.com/repos/processone/ejabberd/issues/3114,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3114/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3114/comments,https://api.github.com/repos/processone/ejabberd/issues/3114/events,https://github.com/processone/ejabberd/issues/3114,537075380,MDU6SXNzdWU1MzcwNzUzODA=,3114,Load test issue with online users,"{'login': 'sujankumar4593', 'id': 8556194, 'node_id': 'MDQ6VXNlcjg1NTYxOTQ=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/8556194?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/sujankumar4593', 'html_url': 'https://github.com/sujankumar4593', 'followers_url': 'https://api.github.com/users/sujankumar4593/followers', 'following_url': 'https://api.github.com/users/sujankumar4593/following{/other_user}', 'gists_url': 'https://api.github.com/users/sujankumar4593/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/sujankumar4593/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/sujankumar4593/subscriptions', 'organizations_url': 'https://api.github.com/users/sujankumar4593/orgs', 'repos_url': 'https://api.github.com/users/sujankumar4593/repos', 'events_url': 'https://api.github.com/users/sujankumar4593/events{/privacy}', 'received_events_url': 'https://api.github.com/users/sujankumar4593/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2019-12-12T16:14:02Z,2019-12-13T06:33:47Z,2019-12-13T06:33:05Z,NONE,,,"## Environment
- ejabberd version: 19.05
- Erlang version: 21
- OS: Linux (Debian)
- Installed from: source
**Ejabberd.yml File**
`
hosts:
- ""example.com""
loglevel: 3
log_rotate_size: 10485760
log_rotate_date: """"
log_rotate_count: 1
log_rate_limit: 1000
certfiles:
- ""/opt/ejabberd/certs/ejabberd.pem""
define_macro:
CIPHERS_INTERMEDIATE: ""ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS""
PROTOCOL_OPTIONS_INTERMEDIATE:
- ""no_sslv2""
- ""no_sslv3""
CIPHERS_MODERN: ""ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256""
PROTOCOL_OPTIONS_MODERN:
- ""no_sslv2""
- ""no_sslv3""
- ""no_tlsv1""
- ""no_tlsv1_1""
c2s_ciphers: CIPHERS_INTERMEDIATE
c2s_protocol_options: PROTOCOL_OPTIONS_INTERMEDIATE
listen :
-
port: 5222
ip: ""::""
module: ejabberd_c2s
max_stanza_size: 65535
max_fsm_queue: 500000
shaper: c2s_shaper
access: c2s
starttls_required: true
-
port: 5269
ip: ""::""
module: ejabberd_s2s_in
max_stanza_size: 524288
-
port: 5281
ip: ""::""
module: ejabberd_http
request_handlers:
""/api"": mod_http_api
""/websocket"": ejabberd_http_ws
web_admin: true
captcha: true
ciphers: CIPHERS_INTERMEDIATE
protocol_options: PROTOCOL_OPTIONS_INTERMEDIATE
tls: false
-
port: 5280
ip: ""::""
module: ejabberd_http
web_admin: true
s2s_use_starttls: optional
auth_method: sql
auth_use_cache: false
sql_type: mysql
sql_server: ""localhost""
sql_database: ""ejabberd_19""
sql_username: ""ejabberd""
sql_password: ""password""
sql_pool_size: 10
acl:
local:
user_regexp: """"
loopback:
ip:
- ""192.168.0.0/24""
- ""::1/128""
access_rules:
local:
- allow: local
c2s:
- deny: blocked
- allow
announce:
- allow: admin
configure:
- allow: admin
muc_create:
- allow: local
pubsub_createnode:
- allow: local
register:
- allow
trusted_network:
- allow
api_permissions:
""console commands"":
from:
- ejabberd_ctl
who: all
what: ""*""
""admin access"":
who: all
what: ""*""
""public commands"":
who: all
what:
- ""status""
- ""register""
- ""connected_users_number""
- ""list_cluster""
- ""join_cluster""
shaper:
normal: 100000000
fast: 500000000
shaper_rules:
max_user_sessions:
- 10: admin
- 5
max_user_offline_messages:
- 5000: admin
- 100
c2s_shaper:
- none: admin
- normal
s2s_shaper: fast
registration_timeout: infinity
modules:
mod_blocking: {}
mod_carboncopy: {}
mod_client_state: {}
mod_last:
db_type: sql
use_cache: false
mod_mam:
db_type: sql
use_cache: false
assume_mam_usage: true
default: always
mod_offline:
db_type: sql
access_max_user_messages: max_user_offline_messages
mod_privacy:
db_type: sql
use_cache: false
mod_private: {}
mod_mix:
db_type: sql
mod_mix_pam:
db_type: sql
use_cache: true
mod_pubsub:
db_type: sql
ignore_pep_from_offline: true
last_item_cache: false
access_createnode: pubsub_createnode
plugins:
- ""pep""
force_node_config:
""storage:bookmarks"":
access_model: whitelist
mod_register:
ip_access: trusted_network
mod_roster:
db_type: sql
versioning: true
use_cache: false
mod_vcard:
db_type: sql
search: false
mod_vcard_xupdate: {}
`
## Errors from error.log/crash.log
No errors in error.log
## Bug description
When I load test the ejabberd 19.05 with Tsung without enabling TLS I can achive 50k online users and message with the following Script
```
```
But When I enabled the TLS in ejabberd 19 only 20k users coming online with the following script
```
```
**These are the error from the Tsung**
```
stats: error_connection_closed 0 12276
stats: error_connect_etimedout 0 4778
stats: error_connect_closed 0 2
stats: error_timeout 0 9
stats: error_unknown_msg 0 12276
stats: error_send_einval 0 11
stats: error_unknown 0 13925
```
Any help?
",
599,https://api.github.com/repos/processone/ejabberd/issues/3113,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3113/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3113/comments,https://api.github.com/repos/processone/ejabberd/issues/3113/events,https://github.com/processone/ejabberd/issues/3113,536950376,MDU6SXNzdWU1MzY5NTAzNzY=,3113,different results for private messages from mam:2 and mam:tmp,"{'login': 'paul-charlton', 'id': 12197609, 'node_id': 'MDQ6VXNlcjEyMTk3NjA5', 'avatar_url': 'https://avatars1.githubusercontent.com/u/12197609?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/paul-charlton', 'html_url': 'https://github.com/paul-charlton', 'followers_url': 'https://api.github.com/users/paul-charlton/followers', 'following_url': 'https://api.github.com/users/paul-charlton/following{/other_user}', 'gists_url': 'https://api.github.com/users/paul-charlton/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/paul-charlton/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/paul-charlton/subscriptions', 'organizations_url': 'https://api.github.com/users/paul-charlton/orgs', 'repos_url': 'https://api.github.com/users/paul-charlton/repos', 'events_url': 'https://api.github.com/users/paul-charlton/events{/privacy}', 'received_events_url': 'https://api.github.com/users/paul-charlton/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2019-12-12T12:32:00Z,2019-12-12T17:34:06Z,2019-12-12T17:34:06Z,NONE,,,"## Environment
- ejabberd version: 19.09.1
- Erlang version: `erl +V`
- OS: Linux (Debian 9)
- Installed from: official site
## Bug description
I've put this under a bug, but I don't know if it's actually a configuration issue.
I have messages in the archive table (in azure sql) for a specific user. When I send (mam:tmp):
```
```
There are messages returned before the end iq.
However, when sending (mam:2):
```
```
It immediately ends, without any messages, saying count is 0 ie:
```
0
```
I'm not sure if I'm missing something, or need to apply something or whether this is an actual bug?
Thanks in advance,
Paul.",
600,https://api.github.com/repos/processone/ejabberd/issues/3112,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3112/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3112/comments,https://api.github.com/repos/processone/ejabberd/issues/3112/events,https://github.com/processone/ejabberd/issues/3112,536723654,MDU6SXNzdWU1MzY3MjM2NTQ=,3112,Room option `getmemberlist` in XEP-0045 but ejabberd does not have,"{'login': 'conandung99', 'id': 20292588, 'node_id': 'MDQ6VXNlcjIwMjkyNTg4', 'avatar_url': 'https://avatars3.githubusercontent.com/u/20292588?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/conandung99', 'html_url': 'https://github.com/conandung99', 'followers_url': 'https://api.github.com/users/conandung99/followers', 'following_url': 'https://api.github.com/users/conandung99/following{/other_user}', 'gists_url': 'https://api.github.com/users/conandung99/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/conandung99/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/conandung99/subscriptions', 'organizations_url': 'https://api.github.com/users/conandung99/orgs', 'repos_url': 'https://api.github.com/users/conandung99/repos', 'events_url': 'https://api.github.com/users/conandung99/events{/privacy}', 'received_events_url': 'https://api.github.com/users/conandung99/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179040838, 'node_id': 'MDU6TGFiZWwxNzkwNDA4Mzg=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:MUC', 'name': 'Component:MUC', 'color': 'fad8c7', 'default': False, 'description': None}, {'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",closed,False,,[],,1,2019-12-12T02:42:07Z,2020-08-26T11:08:20Z,2020-08-26T11:07:59Z,NONE,,,"https://xmpp.org/extensions/xep-0045.html#roomconfig
This issue opened before but it does not resolve
https://github.com/processone/ejabberd/issues/2606",
601,https://api.github.com/repos/processone/ejabberd/issues/3111,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3111/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3111/comments,https://api.github.com/repos/processone/ejabberd/issues/3111/events,https://github.com/processone/ejabberd/issues/3111,536349594,MDU6SXNzdWU1MzYzNDk1OTQ=,3111,Ejabberd Module,"{'login': 'WajahatAhmed9', 'id': 58776172, 'node_id': 'MDQ6VXNlcjU4Nzc2MTcy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/58776172?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/WajahatAhmed9', 'html_url': 'https://github.com/WajahatAhmed9', 'followers_url': 'https://api.github.com/users/WajahatAhmed9/followers', 'following_url': 'https://api.github.com/users/WajahatAhmed9/following{/other_user}', 'gists_url': 'https://api.github.com/users/WajahatAhmed9/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/WajahatAhmed9/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/WajahatAhmed9/subscriptions', 'organizations_url': 'https://api.github.com/users/WajahatAhmed9/orgs', 'repos_url': 'https://api.github.com/users/WajahatAhmed9/repos', 'events_url': 'https://api.github.com/users/WajahatAhmed9/events{/privacy}', 'received_events_url': 'https://api.github.com/users/WajahatAhmed9/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2019-12-11T12:50:28Z,2019-12-11T12:59:29Z,2019-12-11T12:58:11Z,NONE,,,"## Environment
- ejabberd version: 19.09.1
- Erlang version: `erl +V`
- OS: Linux (Ubuntu)
- Installed from: ProcessOne
I installed mod_statsdx module. When I start ejabbed without and with putting yml configuration in main ejabberd.yml file, it shows an error ""Duplicate option: modules"".
",
602,https://api.github.com/repos/processone/ejabberd/issues/3110,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3110/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3110/comments,https://api.github.com/repos/processone/ejabberd/issues/3110/events,https://github.com/processone/ejabberd/issues/3110,535656656,MDU6SXNzdWU1MzU2NTY2NTY=,3110,Menu items missing in web_admin,"{'login': 'erik-de-neve', 'id': 3438839, 'node_id': 'MDQ6VXNlcjM0Mzg4Mzk=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/3438839?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/erik-de-neve', 'html_url': 'https://github.com/erik-de-neve', 'followers_url': 'https://api.github.com/users/erik-de-neve/followers', 'following_url': 'https://api.github.com/users/erik-de-neve/following{/other_user}', 'gists_url': 'https://api.github.com/users/erik-de-neve/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/erik-de-neve/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/erik-de-neve/subscriptions', 'organizations_url': 'https://api.github.com/users/erik-de-neve/orgs', 'repos_url': 'https://api.github.com/users/erik-de-neve/repos', 'events_url': 'https://api.github.com/users/erik-de-neve/events{/privacy}', 'received_events_url': 'https://api.github.com/users/erik-de-neve/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2019-12-10T11:06:46Z,2020-07-22T12:59:32Z,2019-12-11T13:09:39Z,NONE,,,"## Environment
- ejabberd version: 19.09.1
- Erlang version: 10.3.4
- OS: Linux (ubuntu)
- Installed from: official binary installer
- Using MySQL database
## Bug description
We upgraded from version 19.02 to 19.09.1
In webadmin a lot of menu items are disappeared (although we are loggeed in as 'admin' user).
For example:
Access Control Lists, Access Rules, Last Activities (on server)
Listing ports (on nodes),...
For example: if we go directly to https://{{HOST}}:8443/admin/node/ejabberd@localhost/ports//
It gives 'Not Found'.
This was working in 19.02, is something changed between 19.02 and 19.09.1 regarding this items? (couldn't find something in the changelog)
![ejabber](https://user-images.githubusercontent.com/3438839/70524436-6cc89700-1b45-11ea-85c8-478f54bc5db3.png)
",
603,https://api.github.com/repos/processone/ejabberd/issues/3109,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3109/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3109/comments,https://api.github.com/repos/processone/ejabberd/issues/3109/events,https://github.com/processone/ejabberd/issues/3109,535458120,MDU6SXNzdWU1MzU0NTgxMjA=,3109,Acme not loading base64,"{'login': 'volga629', 'id': 3235221, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjMyMzUyMjE=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/3235221?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/volga629', 'html_url': 'https://github.com/volga629', 'followers_url': 'https://api.github.com/users/volga629/followers', 'following_url': 'https://api.github.com/users/volga629/following{/other_user}', 'gists_url': 'https://api.github.com/users/volga629/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/volga629/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/volga629/subscriptions', 'organizations_url': 'https://api.github.com/users/volga629/orgs', 'repos_url': 'https://api.github.com/users/volga629/repos', 'events_url': 'https://api.github.com/users/volga629/events{/privacy}', 'received_events_url': 'https://api.github.com/users/volga629/received_events', 'type': 'Organization', 'site_admin': False}",[],closed,False,,[],,1,2019-12-10T02:48:53Z,2019-12-10T07:09:51Z,2019-12-10T07:09:50Z,NONE,,,"## Environment
- ejabberd version: 19.09
- Erlang version: `# erl +V
Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.5.6
`
- OS: Linux (Fedora 31)
- Installed from: source official rpm
Acme module failing to load base64url
```
2019-12-09 21:36:58.480 [error] <0.541.0> gen_server ejabberd_acme terminated with reason: {'module could not be loaded',[{base64url,encode,[<<176,4,46,249,31,195,109,185,81,191,62,202,177,14,145,156,238,112,242,18,140,18,232,240,148,254,59,88,17,195,174,235>>],[]},{jose_jwk_kty_ec,to_map,2,[{file,""src/jose_jwk_kty_ec.erl""},{line,70}]},{jose_jwk_kty_ec,to_public_map,2,[{file,""src/jose_jwk_kty_ec.erl""},{line,97}]},{jose_jwk,to_public_map,1,[{file,""src/jose_jwk.erl""},{line,626}]},{jose_jwk,to_public,1,[{file,""src/jose_jwk.erl""},{line,607}]},{p1_acme,jose_json,3,[{file,""src/p1_acme....""},...]},...]}
2019-12-09 21:36:58.480 [error] <0.541.0>@base64url:encode CRASH REPORT Process ejabberd_acme with 0 neighbours crashed with reason: call to undefined function base64url:encode(<<176,4,46,249,31,195,109,185,81,191,62,202,177,14,145,156,238,112,242,18,140,18,232,240,148,254,...>>)
2019-12-09 21:36:58.482 [error] <0.292.0>@base64url:encode Supervisor ejabberd_sup had child ejabberd_acme started with ejabberd_acme:start_link() at <0.541.0> exit with reason call to undefined function base64url:encode(<<176,4,46,249,31,195,109,185,81,191,62,202,177,14,145,156,238,112,242,18,140,18,232,240,148,254,...>>) in context child_terminated
```
Installed erlang-base64url
```
rpm -ql erlang-base64url.noarch
/usr/lib/erlang/lib/base64url-1.0.1
/usr/lib/erlang/lib/base64url-1.0.1/ebin
/usr/lib/erlang/lib/base64url-1.0.1/ebin/base64url.app
/usr/lib/erlang/lib/base64url-1.0.1/ebin/base64url.beam
/usr/share/doc/erlang-base64url
/usr/share/doc/erlang-base64url/README.md
/usr/share/licenses/erlang-base64url
/usr/share/licenses/erlang-base64url/LICENSE.txt
```
Expected behavior
ejabberdctl request-certificate domain.com, domain2.com
will be completed OK
",
604,https://api.github.com/repos/processone/ejabberd/issues/3108,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3108/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3108/comments,https://api.github.com/repos/processone/ejabberd/issues/3108/events,https://github.com/processone/ejabberd/pull/3108,534730475,MDExOlB1bGxSZXF1ZXN0MzUwNTUyNTky,3108,"Add Hungarian translation, update existing translations","{'login': 'urbalazs', 'id': 1006118, 'node_id': 'MDQ6VXNlcjEwMDYxMTg=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/1006118?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/urbalazs', 'html_url': 'https://github.com/urbalazs', 'followers_url': 'https://api.github.com/users/urbalazs/followers', 'following_url': 'https://api.github.com/users/urbalazs/following{/other_user}', 'gists_url': 'https://api.github.com/users/urbalazs/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/urbalazs/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/urbalazs/subscriptions', 'organizations_url': 'https://api.github.com/users/urbalazs/orgs', 'repos_url': 'https://api.github.com/users/urbalazs/repos', 'events_url': 'https://api.github.com/users/urbalazs/events{/privacy}', 'received_events_url': 'https://api.github.com/users/urbalazs/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/38', 'html_url': 'https://github.com/processone/ejabberd/milestone/38', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/38/labels', 'id': 4710876, 'node_id': 'MDk6TWlsZXN0b25lNDcxMDg3Ng==', 'number': 38, 'title': 'ejabberd 19.12', 'description': '', 'creator': {'login': 'zinid', 'id': 1095902, 'node_id': 'MDQ6VXNlcjEwOTU5MDI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1095902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/zinid', 'html_url': 'https://github.com/zinid', 'followers_url': 'https://api.github.com/users/zinid/followers', 'following_url': 'https://api.github.com/users/zinid/following{/other_user}', 'gists_url': 'https://api.github.com/users/zinid/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/zinid/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/zinid/subscriptions', 'organizations_url': 'https://api.github.com/users/zinid/orgs', 'repos_url': 'https://api.github.com/users/zinid/repos', 'events_url': 'https://api.github.com/users/zinid/events{/privacy}', 'received_events_url': 'https://api.github.com/users/zinid/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 2, 'closed_issues': 5, 'state': 'closed', 'created_at': '2019-10-01T19:12:36Z', 'updated_at': '2020-03-18T13:40:27Z', 'due_on': '2019-12-31T08:00:00Z', 'closed_at': '2020-02-18T08:47:53Z'}",3,2019-12-09T07:00:17Z,2019-12-09T15:41:37Z,2019-12-09T15:41:37Z,NONE,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3108', 'html_url': 'https://github.com/processone/ejabberd/pull/3108', 'diff_url': 'https://github.com/processone/ejabberd/pull/3108.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3108.patch'}","Added Hungarian language file, and regenerate existing translations with command `make translations`.",
605,https://api.github.com/repos/processone/ejabberd/issues/3107,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3107/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3107/comments,https://api.github.com/repos/processone/ejabberd/issues/3107/events,https://github.com/processone/ejabberd/issues/3107,534528101,MDU6SXNzdWU1MzQ1MjgxMDE=,3107,rule.ip does not respect http-proxy,"{'login': 'genofire', 'id': 6905586, 'node_id': 'MDQ6VXNlcjY5MDU1ODY=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/6905586?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/genofire', 'html_url': 'https://github.com/genofire', 'followers_url': 'https://api.github.com/users/genofire/followers', 'following_url': 'https://api.github.com/users/genofire/following{/other_user}', 'gists_url': 'https://api.github.com/users/genofire/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/genofire/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/genofire/subscriptions', 'organizations_url': 'https://api.github.com/users/genofire/orgs', 'repos_url': 'https://api.github.com/users/genofire/repos', 'events_url': 'https://api.github.com/users/genofire/events{/privacy}', 'received_events_url': 'https://api.github.com/users/genofire/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,1,2019-12-08T11:30:48Z,2020-05-08T18:11:47Z,,NONE,,,"## Environment
- ejabberd version: 19.09.1
- Erlang version: `Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.5`
- OS: Archlinux
- Installed from: distro package
## Bug description
If there is a http reverse proxy in front of ejabberd `module: ejabberd_http` it does not handle the HTTP Header-Field `X-Real-IP`.
(eg. nginx):
```
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-for $proxy_add_x_forwarded_for;
```
So `api_permissions` would be leaked public:
```yml
api_permissions:
""onlyinternal"":
who:
ip: ::1/128
```
",
606,https://api.github.com/repos/processone/ejabberd/issues/3106,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3106/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3106/comments,https://api.github.com/repos/processone/ejabberd/issues/3106/events,https://github.com/processone/ejabberd/issues/3106,534004677,MDU6SXNzdWU1MzQwMDQ2Nzc=,3106,"""cla-missing"" label still attached to PRs although CLA was signed","{'login': 'lemenkov', 'id': 41835, 'node_id': 'MDQ6VXNlcjQxODM1', 'avatar_url': 'https://avatars1.githubusercontent.com/u/41835?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/lemenkov', 'html_url': 'https://github.com/lemenkov', 'followers_url': 'https://api.github.com/users/lemenkov/followers', 'following_url': 'https://api.github.com/users/lemenkov/following{/other_user}', 'gists_url': 'https://api.github.com/users/lemenkov/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/lemenkov/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/lemenkov/subscriptions', 'organizations_url': 'https://api.github.com/users/lemenkov/orgs', 'repos_url': 'https://api.github.com/users/lemenkov/repos', 'events_url': 'https://api.github.com/users/lemenkov/events{/privacy}', 'received_events_url': 'https://api.github.com/users/lemenkov/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2019-12-06T13:58:17Z,2019-12-09T11:04:16Z,2019-12-09T11:04:15Z,CONTRIBUTOR,,,"Hello,
I've signed CLA for a while but some of my PRs still marked as cla-missing. Is it intentional?",
607,https://api.github.com/repos/processone/ejabberd/issues/3105,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3105/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3105/comments,https://api.github.com/repos/processone/ejabberd/issues/3105/events,https://github.com/processone/ejabberd/issues/3105,533414346,MDU6SXNzdWU1MzM0MTQzNDY=,3105,eJabberd Federation - Stream closed by local host: Idle connection (connection-timeout),"{'login': 'logicwonder', 'id': 2443141, 'node_id': 'MDQ6VXNlcjI0NDMxNDE=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2443141?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/logicwonder', 'html_url': 'https://github.com/logicwonder', 'followers_url': 'https://api.github.com/users/logicwonder/followers', 'following_url': 'https://api.github.com/users/logicwonder/following{/other_user}', 'gists_url': 'https://api.github.com/users/logicwonder/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/logicwonder/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/logicwonder/subscriptions', 'organizations_url': 'https://api.github.com/users/logicwonder/orgs', 'repos_url': 'https://api.github.com/users/logicwonder/repos', 'events_url': 'https://api.github.com/users/logicwonder/events{/privacy}', 'received_events_url': 'https://api.github.com/users/logicwonder/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,4,2019-12-05T15:14:59Z,2019-12-06T11:31:17Z,2019-12-06T06:25:46Z,NONE,,,"## Environment
- ejabberd version: 19.02
- Erlang version: `9.2`
- OS: Ubuntu Server 16.04 LTS
- Installed from: source
- Federated 2 servers with single test user in each server.
- user01@abc.xyx.com in node-1
- user02@pqr.xyz.com in node-2
## Configuration:
```
loglevel: 5
log_rotate_size: 0
log_rotate_date: """"
log_rotate_count: 1
log_rate_limit: 100
hosts:
- ""abc.xyz.com""
route_subdomains: s2s
certfiles:
- ""/etc/letsencrypt/live/localhost/fullchain.pem""
- ""/etc/letsencrypt/live/localhost/privkey.pem""
s2s_cafile: ""/etc/ssl/certs/ca-certificates.crt""
listen:
-
port: 5222
ip: ""::""
module: ejabberd_c2s
protocol_options:
- ""no_sslv2""
- ""no_sslv3""
- ""no_tlsv1""
- ""no_tlsv1_1""
ciphers: ""ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POL
Y1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDH
E-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256""
max_stanza_size: 65536
shaper: c2s_shaper
access: c2s
-
port: 5269
ip: ""::""
module: ejabberd_s2s_in
-
port: 5280
ip: ""::""
module: ejabberd_http
request_handlers:
""/ws"": ejabberd_http_ws
""/bosh"": mod_bosh
""/api"": mod_http_api
web_admin: true
captcha: true
s2s_use_starttls: false
auth_method: sql
auth_password_format: scram
sql_type: pgsql
sql_server: ""xxx.xxx.xxx.xxx""
sql_database: ""xxxxx""
sql_username: ""xxxxx""
sql_password: ""xxxxxx""
sql_port: 5432
default_db: sql
shaper:
normal: 1000
fast: 100000
max_fsm_queue: 10000
acl:
admin:
user:
- ""admin@abc.xyz.com""
local:
user_regexp: """"
loopback:
ip:
- ""127.0.0.0/8""
- ""::1/128""
- ""::FFFF:127.0.0.1/128""
shaper_rules:
max_user_sessions: 10
max_user_offline_messages:
- 5000: admin
- 1500
c2s_shaper:
- none: admin
- normal
s2s_shaper: fast
access_rules:
local:
- allow: local
c2s:
- allow
announce:
- allow: admin
configure:
- allow: admin
muc_create:
- allow: admin
pubsub_createnode:
- allow: local
register:
- allow
trusted_network:
- allow: loopback
api_permissions:
""console commands"":
from:
- ejabberd_ctl
who: all
what: ""*""
""admin access"":
who:
- ip: ""xxx.xxx.xxx.xxx/32""
- access:
- allow:
- acl: loopback
- acl: admin
- oauth:
- scope: ""ejabberd:admin""
- access:
- allow:
- acl: loopback
- acl: admin
what:
- ""*""
- ""!stop""
- ""!start""
""public commands"":
who:
- ip: ""xxx.xxx.xxx.xxx/32""
what:
- ""status""
- ""connected_users_number""
""API used from localhost allows all calls"":
who:
- ip: ""127.0.0.1/8""
what:
- ""*""
- ""!stop""
- ""!start""
language: ""en""
acme:
contact: ""mailto:example-admin@example.com""
ca_url: ""https://acme-v01.api.letsencrypt.org""
modules:
mod_adhoc: {}
mod_admin_extra: {}
mod_announce: # recommends mod_adhoc
access: announce
mod_blocking: {} # requires mod_privacy
mod_caps: {}
mod_carboncopy: {}
mod_client_state: {}
mod_configure: {} # requires mod_adhoc
mod_disco: {}
mod_echo: {}
mod_bosh: {}
mod_last: {}
mod_mam:
default: always
db_type: sql
mod_muc:
max_user_conferences: 100
host: ""conference.@HOST@""
access:
- allow
access_admin:
- allow: admin
access_create: muc_create
access_persistent: muc_create
default_room_options:
allow_subscription: true
mam: true
persistent: true
mod_muc_admin: {}
mod_offline:
access_max_user_messages: max_user_offline_messages
mod_ping: {}
mod_privacy: {}
mod_private: {}
mod_pubsub:
access_createnode: pubsub_createnode
ignore_pep_from_offline: true
last_item_cache: false
plugins:
- ""flat""
- ""hometree""
- ""pep"" # pep requires mod_caps
force_node_config:
""eu.siacs.conversations.axolotl.*"":
access_model: whitelist
""storage:bookmarks"":
access_model: whitelist
mod_push:
include_sender: true
mod_push_keepalive: {}
mod_roster:
use_cache: true
cache_size: 10000
cache_life_time: 3600
mod_shared_roster: {}
mod_stats: {}
mod_time: {}
mod_vcard:
search: false
mod_vcard_xupdate: {}
mod_avatar: {}
mod_version: {}
mod_stream_mgmt:
max_ack_queue: 1000
resume_timeout: 300
max_resume_timeout: 300
resend_on_timeout: true
ack_timeout: 60
mod_s2s_dialback: {}
mod_http_api: {}
mod_fail2ban: {}
allow_contrib_modules: true
```
## Errors from error.log/crash.log
20:22:57.638 [debug] route:
#message{
id = <<""Pe0bb0390-cc1d-4be7-b21a-b345dee1f00c"">>,type = error,
lang = <<""en"">>,
from =
#jid{
user = <<""user02"">>,server = <<""pqr.xyz.com"">>,
resource = <<>>,luser = <<""user02"">>,
lserver = <<""pqr.xyz.com"">>,lresource = <<>>},
to =
#jid{
user = <<""user01"">>,server = <<""abc.xyz.com"">>,
resource = <<""TestClient"">>,luser = <<""user01"">>,
lserver = <<""abc.xyz.com"">>,lresource = <<""TestClient"">>},
subject = [],
body =
[#text{
lang = <<>>,
data =
<<""Sample test message"">>}],
thread = undefined,
sub_els =
[#xmlel{
name = <<""request"">>,
attrs = [{<<""xmlns"">>,<<""urn:xmpp:receipts"">>}],
children = []},
#xmlel{
name = <<""request"">>,
attrs = [{<<""xmlns"">>,<<""urn:xmpp:receipts"">>}],
children = []},
#stanza_error{
type = wait,code = 504,by = undefined,
reason = 'remote-server-timeout',
text =
[#text{
lang = <<""en"">>,
data =
<<""Stream closed by local host: Idle connection (connection-timeout)"">>}],
sub_els = []}],
meta = #{ip => {0,0,0,0,0,65535,2722,1360},mam_archived => true}}
## Bug description
We have configured eJabberd Federation with two eJabberd server instances:
- abc.xyz.com
- pqr.xyz.com
We are using Smack 4.3 for the test client. **We are able to send and received one to one and group messages across the federated instances.**
However **intermittently** we come across the ""**remote-server-timeout Stream closed by local host: Idle connection (connection-timeout)**"" error in the sender node-1 (abc.xyz.com) and messages are not delivered at receiver node-2 (pqr.xyz.com). During this time user02 is able to send messages to user01. This issue is also observed the other way around.
",
608,https://api.github.com/repos/processone/ejabberd/issues/3104,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3104/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3104/comments,https://api.github.com/repos/processone/ejabberd/issues/3104/events,https://github.com/processone/ejabberd/issues/3104,531214140,MDU6SXNzdWU1MzEyMTQxNDA=,3104,Ejabberd Crash with no logs,"{'login': 'mkl262', 'id': 8472607, 'node_id': 'MDQ6VXNlcjg0NzI2MDc=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/8472607?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mkl262', 'html_url': 'https://github.com/mkl262', 'followers_url': 'https://api.github.com/users/mkl262/followers', 'following_url': 'https://api.github.com/users/mkl262/following{/other_user}', 'gists_url': 'https://api.github.com/users/mkl262/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mkl262/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mkl262/subscriptions', 'organizations_url': 'https://api.github.com/users/mkl262/orgs', 'repos_url': 'https://api.github.com/users/mkl262/repos', 'events_url': 'https://api.github.com/users/mkl262/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mkl262/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2019-12-02T15:46:57Z,2019-12-02T15:52:56Z,2019-12-02T15:52:56Z,NONE,,,"## Environment
- ejabberd version: 19.02
- Erlang version: Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.1
- OS: Linux Debian Stretch
- Installed from: official binary installer
## Errors from error.log/crash.log
No errors
## Bug description
Ejabberd services crashes and stops writing any logs, but outputs a dump file.
[erl_crash_20191116-090132.dump.tar.gz](https://github.com/processone/ejabberd/files/3912006/erl_crash_20191116-090132.dump.tar.gz)
",
609,https://api.github.com/repos/processone/ejabberd/issues/3103,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3103/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3103/comments,https://api.github.com/repos/processone/ejabberd/issues/3103/events,https://github.com/processone/ejabberd/pull/3103,531192843,MDExOlB1bGxSZXF1ZXN0MzQ3Njc1Mzcz,3103,"Fix ""ejabberd_iq"" processing of the IQ id for proc delivery","{'login': 'fdie', 'id': 5943122, 'node_id': 'MDQ6VXNlcjU5NDMxMjI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/5943122?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/fdie', 'html_url': 'https://github.com/fdie', 'followers_url': 'https://api.github.com/users/fdie/followers', 'following_url': 'https://api.github.com/users/fdie/following{/other_user}', 'gists_url': 'https://api.github.com/users/fdie/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/fdie/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/fdie/subscriptions', 'organizations_url': 'https://api.github.com/users/fdie/orgs', 'repos_url': 'https://api.github.com/users/fdie/repos', 'events_url': 'https://api.github.com/users/fdie/events{/privacy}', 'received_events_url': 'https://api.github.com/users/fdie/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,14,2019-12-02T15:13:35Z,2019-12-06T06:21:36Z,2019-12-02T15:49:13Z,NONE,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3103', 'html_url': 'https://github.com/processone/ejabberd/pull/3103', 'diff_url': 'https://github.com/processone/ejabberd/pull/3103.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3103.patch'}","""ejabberd_iq"" seems to be an IQ handler for internal usage (see ""mod_ping"") where the routing is based on the information encoded in the IQ id field ('rr-').
The last field of such an ""rr-"" id is the hash of the node.
""ejabberd_iq"" uses ""ejabber_cluster:node_id"" for the encoding & ""ejabberd_cluster:get_node_by_id"" for the decoding of this field.
Even if the ""node_id()"" method has no Pid parameter, I guess the Proc provided in the ""ejabberd_iq:route"" method must be a process on the executing node.
If my assumption is right, there is a close link between the Node and the Proc and if the Node information could not be decoded, there is no chance to seek any process to deliver the IQ result...
In fact, the ""ejabberd_iq:decode_id"" does it right by catching a {badmatch, xxx} exception and proceed with standard routing when no Node could be matched, perfect.
decode_id(<<""rr-"", ID/binary>>) ->
try
...
catch _:{badmatch, _} ->
error
end;
Miserably, ""ejabberd_cluster"" never throws such an exception, but returns any node on the current cluster !?
With the following fix, a Proc is able to MAM query a room hosted on a remote cluster through XMPP federation (S2S).",
610,https://api.github.com/repos/processone/ejabberd/issues/3102,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3102/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3102/comments,https://api.github.com/repos/processone/ejabberd/issues/3102/events,https://github.com/processone/ejabberd/issues/3102,530746938,MDU6SXNzdWU1MzA3NDY5Mzg=,3102,inconsistent dependencies,"{'login': 'darix', 'id': 230233, 'node_id': 'MDQ6VXNlcjIzMDIzMw==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/230233?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/darix', 'html_url': 'https://github.com/darix', 'followers_url': 'https://api.github.com/users/darix/followers', 'following_url': 'https://api.github.com/users/darix/following{/other_user}', 'gists_url': 'https://api.github.com/users/darix/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/darix/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/darix/subscriptions', 'organizations_url': 'https://api.github.com/users/darix/orgs', 'repos_url': 'https://api.github.com/users/darix/repos', 'events_url': 'https://api.github.com/users/darix/events{/privacy}', 'received_events_url': 'https://api.github.com/users/darix/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179043544, 'node_id': 'MDU6TGFiZWwxNzkwNDM1NDQ=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Build', 'name': 'Component:Build', 'color': 'bfdadc', 'default': False, 'description': None}]",closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/39', 'html_url': 'https://github.com/processone/ejabberd/milestone/39', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/39/labels', 'id': 5116012, 'node_id': 'MDk6TWlsZXN0b25lNTExNjAxMg==', 'number': 39, 'title': 'ejabberd 20.02', 'description': '', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 10, 'state': 'closed', 'created_at': '2020-02-18T08:48:31Z', 'updated_at': '2020-02-26T13:07:59Z', 'due_on': '2020-02-26T08:00:00Z', 'closed_at': '2020-02-26T13:07:59Z'}",5,2019-12-01T15:15:03Z,2020-02-24T09:28:55Z,2020-02-19T11:46:57Z,NONE,,,"ejabberd and p1_acme have kinda conflicting dependencies:
ejabber:
- jiffy: 0.14.8
- jose: 1.8.4
p1_acme:
- jiffy: 1.0.1
- jose: 1.9.0
The good thing for me as a packager is that rebar allows system dependencies to be newer so it isnt a blocker. I just build ejabberd with the newer libs.
The bad part is that it shows many of the dependency locks in the rebar.config might be referencing really old versions and could be bumped.",
611,https://api.github.com/repos/processone/ejabberd/issues/3101,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3101/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3101/comments,https://api.github.com/repos/processone/ejabberd/issues/3101/events,https://github.com/processone/ejabberd/issues/3101,530674862,MDU6SXNzdWU1MzA2NzQ4NjI=,3101,Attempting websocket connection using haproxy.,"{'login': 'paradisaeidae', 'id': 440482, 'node_id': 'MDQ6VXNlcjQ0MDQ4Mg==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/440482?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/paradisaeidae', 'html_url': 'https://github.com/paradisaeidae', 'followers_url': 'https://api.github.com/users/paradisaeidae/followers', 'following_url': 'https://api.github.com/users/paradisaeidae/following{/other_user}', 'gists_url': 'https://api.github.com/users/paradisaeidae/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/paradisaeidae/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/paradisaeidae/subscriptions', 'organizations_url': 'https://api.github.com/users/paradisaeidae/orgs', 'repos_url': 'https://api.github.com/users/paradisaeidae/repos', 'events_url': 'https://api.github.com/users/paradisaeidae/events{/privacy}', 'received_events_url': 'https://api.github.com/users/paradisaeidae/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2019-12-01T05:26:18Z,2019-12-01T09:52:56Z,2019-12-01T09:52:56Z,NONE,,,"## Environment
- ejabberd version: 19.08
- Erlang version: Erlang (SMP,ASYNC_THREADS) (BEAM) emulator version 9.2
- OS: Linux (Ubuntu)
- Installed from: source
No errors
## Bug description
Hi P1,
Getting close with this.
Very useful if I can get it working with Digital Ocean floating ip.
Browser connects and upgrades to 101 websocket.
The connection establishes and some messages are sent.
Though it appears ejabberd does not send a ping through the (haproxy) connection?
ejabberd times out in around 45 seconds.
Attempted to adjust with:
websocket_ping_interval: 50
websocket_timeout: 600
Could it be that the connection is not seen by ejd as 'completed'?
Still refining my understanding of how the connection is handed off by haproxy.
Which is compiled from haproxy-ss-20191126. Very recent version.
All the best for the season!
MarkT
",
612,https://api.github.com/repos/processone/ejabberd/issues/3100,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3100/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3100/comments,https://api.github.com/repos/processone/ejabberd/issues/3100/events,https://github.com/processone/ejabberd/issues/3100,530605693,MDU6SXNzdWU1MzA2MDU2OTM=,3100,"Failed connecting to ""localhost"":3306 : {error,""connect failed: connection refused""} ","{'login': 'LingaTigeen', 'id': 17310722, 'node_id': 'MDQ6VXNlcjE3MzEwNzIy', 'avatar_url': 'https://avatars1.githubusercontent.com/u/17310722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/LingaTigeen', 'html_url': 'https://github.com/LingaTigeen', 'followers_url': 'https://api.github.com/users/LingaTigeen/followers', 'following_url': 'https://api.github.com/users/LingaTigeen/following{/other_user}', 'gists_url': 'https://api.github.com/users/LingaTigeen/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/LingaTigeen/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/LingaTigeen/subscriptions', 'organizations_url': 'https://api.github.com/users/LingaTigeen/orgs', 'repos_url': 'https://api.github.com/users/LingaTigeen/repos', 'events_url': 'https://api.github.com/users/LingaTigeen/events{/privacy}', 'received_events_url': 'https://api.github.com/users/LingaTigeen/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,4,2019-11-30T17:19:27Z,2019-12-01T14:54:02Z,2019-12-01T14:02:13Z,NONE,,,"## Environment
- ejabberd version: 19.09
- OS: Linux (Debian)
- Installed from: source
## Configuration part for mysql
```yaml
auth_method: sql
default_db: sql
sql_type: mysql
sql_server: ""localhost""
sql_database: ""ejabberd""
sql_username: ""ejabberd""
sql_password: ""ejabberd""
sql_port: 3306
...
```
#Error log
2019-11-30 22:44:49.117 [error] <0.449.0>@ejabberd_sql:log:1043 p1_mysql_recv: Failed connecting to localhost:3306: connection refused
2019-11-30 22:44:49.117 [error] <0.450.0>@ejabberd_sql:log:1043 p1_mysql_recv: Failed connecting to localhost:3306: connection refused
2019-11-30 22:44:49.117 [error] <0.431.0>@ejabberd_sql:log:1043 p1_mysql_conn: Failed connecting to ""localhost"":3306 : {error,""connect failed: connection refused""}
2019-11-30 22:44:49.117 [error] <0.432.0>@ejabberd_sql:log:1043 p1_mysql_conn: Failed connecting to ""localhost"":3306 : {error,""connect failed: connection refused""}
2019-11-30 22:44:49.117 [error] <0.433.0>@ejabberd_sql:log:1043 p1_mysql_conn: Failed connecting to ""localhost"":3306 : {error,""connect failed: connection refused""}
2019-11-30 22:44:49.117 [error] <0.434.0>@ejabberd_sql:log:1043 p1_mysql_conn: Failed connecting to ""localhost"":3306 : {error,""connect failed: connection refused""}
2019-11-30 22:44:49.117 [error] <0.435.0>@ejabberd_sql:log:1043 p1_mysql_conn: Failed connecting to ""localhost"":3306 : {error,""connect failed: connection refused""}
2019-11-30 22:44:49.117 [error] <0.436.0>@ejabberd_sql:log:1043 p1_mysql_conn: Failed connecting to ""localhost"":3306 : {error,""connect failed: connection refused""}
2019-11-30 22:44:49.117 [error] <0.437.0>@ejabberd_sql:log:1043 p1_mysql_conn: Failed connecting to ""localhost"":3306 : {error,""connect failed: connection refused""}
2019-11-30 22:44:49.117 [error] <0.438.0>@ejabberd_sql:log:1043 p1_mysql_conn: Failed connecting to ""localhost"":3306 : {error,""connect failed: connection refused""}
2019-11-30 22:44:49.117 [error] <0.439.0>@ejabberd_sql:log:1043 p1_mysql_conn: Failed connecting to ""localhost"":3306 : {error,""connect failed: connection refused""}
2019-11-30 22:44:49.117 [error] <0.440.0>@ejabberd_sql:log:1043 p1_mysql_conn: Failed connecting to ""localhost"":3306 : {error,""connect failed: connection refused""}
2019-11-30 22:44:49.117 [error] <0.421.0>@ejabberd_sql:log:1043 p1_mysql_conn: post_start error connect_failed
2019-11-30 22:44:49.117 [error] <0.427.0>@ejabberd_sql:log:1043 p1_mysql_conn: post_start error connect_failed
## Errors from error.log/crash.log
2019-11-30 22:36:58 =CRASH REPORT====
crasher:
initial call: mod_mqtt:init/1
pid: <0.525.0>
registered_name: []
exception exit: {db_failure,[{gen_server,init_it,6,[{file,""gen_server.erl""},{line,349}]},{proc_lib,init_p_do_apply,3,[{file,""proc_lib.erl""},{line,247}]}]}
ancestors: [ejabberd_gen_mod_sup,ejabberd_sup,<0.88.0>]
message_queue_len: 0
messages: []
links: [<0.403.0>]
dictionary: []
trap_exit: false
status: running
heap_size: 987
stack_size: 27
reductions: 1073
neighbours:
## Bug description
Its always the localhost:3306: connection refused error coming every time. Any suggestions?
",
613,https://api.github.com/repos/processone/ejabberd/issues/3099,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3099/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3099/comments,https://api.github.com/repos/processone/ejabberd/issues/3099/events,https://github.com/processone/ejabberd/issues/3099,529842664,MDU6SXNzdWU1Mjk4NDI2NjQ=,3099,"Unable to read message, presence hooks.","{'login': 'shaggi7', 'id': 54536845, 'node_id': 'MDQ6VXNlcjU0NTM2ODQ1', 'avatar_url': 'https://avatars1.githubusercontent.com/u/54536845?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/shaggi7', 'html_url': 'https://github.com/shaggi7', 'followers_url': 'https://api.github.com/users/shaggi7/followers', 'following_url': 'https://api.github.com/users/shaggi7/following{/other_user}', 'gists_url': 'https://api.github.com/users/shaggi7/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/shaggi7/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/shaggi7/subscriptions', 'organizations_url': 'https://api.github.com/users/shaggi7/orgs', 'repos_url': 'https://api.github.com/users/shaggi7/repos', 'events_url': 'https://api.github.com/users/shaggi7/events{/privacy}', 'received_events_url': 'https://api.github.com/users/shaggi7/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2019-11-28T11:01:04Z,2019-11-28T12:13:04Z,2019-11-28T12:13:04Z,NONE,,,"Hi,
I am building an ejabberd module for push notifications whenever there is an incoming message to the user. I am trying to read message stanza with some pattern but i am unable to
Here is the code i wrote
```-module(mod_push_generate).
-behaviour(gen_mod).
-include(""logger.hrl"").
-include(""ejabberd_sql_pt.hrl"").
-include(""ejabberd_http.hrl"").
-include(""xmpp.hrl"").
%% gen_mod API callbacks
-export([start/2, stop/1, depends/2, mod_options/1, fetch_token/2, on_user_send_packet/1]).
start(Host,_Opts) ->
?INFO_MSG(""Mod PUSH GENARATOR has been started"",[]),
inets:start(),
ejabberd_hooks:add(user_send_packet, Host, ?MODULE, on_user_send_packet, 50),
ok.
stop(Host) ->
?INFO_MSG(""Module has been stopped"",[]),
ejabberd_hooks:delete(user_send_packet, Host, ?MODULE, on_user_send_packet, 50),
ok.
depends(_Host, _Opts) ->
[].
mod_options(_Host) ->
[].
-spec on_user_send_packet({stanza(), ejabberd_c2s:state()}) -> {stanza(), ejabberd_c2s:state()}.
on_user_send_packet({#message{
from = #jid{lresource = <<"""">>} = From,
type = ""chat"" = Type} = Pkt, State }) ->
?INFO_MSG(""on user send packet called from "",From),
{Pkt, State};
on_user_send_packet(Acc) ->
?INFO_MSG(""Inside nothing box."",[]),
Acc.
```
and I am getting this output on every message or whatever stanza i am sending .
```
16:29:51.795 [info] Start accepting UDP connections at 0.0.0.0:3478 for ejabberd_stun
16:29:51.795 [info] Start accepting TCP connections at [::]:1883 for mod_mqtt
16:29:51.795 [info] Start accepting TCP connections at [::]:5280 for ejabberd_http
16:29:51.795 [info] Start accepting TCP connections at [::]:5269 for ejabberd_s2s_in
16:29:51.795 [info] Start accepting TLS connections at [::]:5443 for ejabberd_http
16:29:51.795 [info] Start accepting TCP connections at [::]:5222 for ejabberd_c2s
16:29:51.795 [info] Start accepting TCP connections at 127.0.1.1:7777 for mod_proxy65_stream
16:29:53.954 [info] (<0.662.0>) Accepted connection [::ffff:192.168.4.69]:54838 -> [::ffff:192.168.4.69]:5280
16:29:54.669 [info] (http_bind|<0.663.0>) Accepted c2s SCRAM-SHA-1 authentication for tony@192.168.4.69 by sql backend from ::ffff:192.168.4.69
16:29:54.915 [info] (http_bind|<0.663.0>) Opened c2s session for tony@192.168.4.69/tony.webApp
16:29:55.030 [info] Inside nothing box.
16:29:55.198 [info] Inside nothing box.
16:29:55.209 [info] Inside nothing box.
16:29:55.210 [info] Inside nothing box.
16:29:56.601 [info] Inside nothing box.
16:29:56.601 [info] Inside nothing box.
16:29:56.601 [info] Inside nothing box.
16:29:56.603 [info] Inside nothing box.
16:29:56.603 [info] Inside nothing box.
16:29:56.604 [info] Inside nothing box.
16:29:56.604 [info] Inside nothing box.
16:29:56.606 [info] Inside nothing box.
```
Also i am building the server in a closed environment . It means i am trying to implement as many as functionality of server side in ejabberd modules.
What should be the problem???
Thanks",
614,https://api.github.com/repos/processone/ejabberd/issues/3098,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3098/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3098/comments,https://api.github.com/repos/processone/ejabberd/issues/3098/events,https://github.com/processone/ejabberd/issues/3098,528969539,MDU6SXNzdWU1Mjg5Njk1Mzk=,3098,Failed to start ejabberd after adding append_host_config,"{'login': 'beherit', 'id': 5073817, 'node_id': 'MDQ6VXNlcjUwNzM4MTc=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5073817?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/beherit', 'html_url': 'https://github.com/beherit', 'followers_url': 'https://api.github.com/users/beherit/followers', 'following_url': 'https://api.github.com/users/beherit/following{/other_user}', 'gists_url': 'https://api.github.com/users/beherit/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/beherit/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/beherit/subscriptions', 'organizations_url': 'https://api.github.com/users/beherit/orgs', 'repos_url': 'https://api.github.com/users/beherit/repos', 'events_url': 'https://api.github.com/users/beherit/events{/privacy}', 'received_events_url': 'https://api.github.com/users/beherit/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,9,2019-11-26T21:01:13Z,2019-11-27T09:34:37Z,2019-11-27T06:52:12Z,NONE,,,"## Environment
- ejabberd version: 19.09
- Erlang version: 10.2.4
- OS: Debian 10
- Installed from: official deb backports
## Configuration (only if needed):
```
append_host_config:
domain.tld:
modules:
mod_muc:
host: ""muc.@HOST@""
access: all
access_create: all
access_persistent: muc_admin
access_admin: muc_admin
history_size: 20
max_users: 50
max_room_id: 20
max_room_name: 40
max_room_desc: 300
min_message_interval: 1
min_presence_interval: 5
default_room_options:
allow_change_subj: false
allow_user_invites: true
moderated: false
persistent: false
mod_muc_admin: {}
append_host_config:
domain2.tld:
modules:
mod_muc:
host: ""conference.@HOST@""
access: all
access_create: all
access_persistent: muc_admin
access_admin: muc_admin
history_size: 20
max_users: 50
max_room_id: 20
max_room_name: 40
max_room_desc: 300
min_message_interval: 1
min_presence_interval: 5
default_room_options:
allow_change_subj: false
allow_user_invites: true
moderated: false
persistent: false
mod_muc_admin: {}
```
## Errors from error.log/crash.log
2019-11-26 21:44:15.562 [critical] <0.105.0>@ejabberd_app:start:71 Failed to start ejabberd application: Invalid value of option append_host_config: duplicated key: domain2.tld
## Bug description
After upgrade from ejabberd 18.12 to 19.09 I have problem with append_host_config option - only when I remove append_host_config for host domain2.tld ejabberd starts normaly. I don't see any duplicate keys, what does this error mean?
",
615,https://api.github.com/repos/processone/ejabberd/issues/3097,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3097/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3097/comments,https://api.github.com/repos/processone/ejabberd/issues/3097/events,https://github.com/processone/ejabberd/issues/3097,528835870,MDU6SXNzdWU1Mjg4MzU4NzA=,3097,Missing table definition for MSSQL: mqtt_pub,"{'login': 'petertirrell', 'id': 4230164, 'node_id': 'MDQ6VXNlcjQyMzAxNjQ=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/4230164?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/petertirrell', 'html_url': 'https://github.com/petertirrell', 'followers_url': 'https://api.github.com/users/petertirrell/followers', 'following_url': 'https://api.github.com/users/petertirrell/following{/other_user}', 'gists_url': 'https://api.github.com/users/petertirrell/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/petertirrell/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/petertirrell/subscriptions', 'organizations_url': 'https://api.github.com/users/petertirrell/orgs', 'repos_url': 'https://api.github.com/users/petertirrell/repos', 'events_url': 'https://api.github.com/users/petertirrell/events{/privacy}', 'received_events_url': 'https://api.github.com/users/petertirrell/received_events', 'type': 'User', 'site_admin': False}","[{'id': 1766218646, 'node_id': 'MDU6TGFiZWwxNzY2MjE4NjQ2', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Database:MSSQL', 'name': 'Database:MSSQL', 'color': 'f4f3a1', 'default': False, 'description': 'Microsoft SQL server'}]",open,False,,[],,1,2019-11-26T16:26:43Z,2020-01-03T09:39:05Z,,NONE,,,"## Environment
- ejabberd version: 19.09.1
- Erlang version: `erl +V`
- OS: Linux (Debian)
- Installed from: official deb/rpm
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
loglevel: 4
...
```
## Errors from error.log/crash.log
No errors
## Bug description
I am trying to set up ejabberd against an MSSQL backend and I ran into the same issue as bug #2843 regarding the missing `mqtt_pub` table. It looks like the table definition for that table has not been added to the `mssql.sql` scipt at https://github.com/processone/ejabberd/tree/master/sql .
I moved on locally by porting the MySQL script (sort of?) to MSSQL and adding the table to get past the error, but I'm not fully confident in my porting skills.
I could spend some time in making sure I have the type conversions correct and make a PR, but it looks like in the source there are two different MySQL table definitions for that table: `mysql.new.sql` and `mysql.sql`. Which is the correct schema for the `mqtt_pub` table that should be added to the MSSQL script?
Thanks,
",
616,https://api.github.com/repos/processone/ejabberd/issues/3096,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3096/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3096/comments,https://api.github.com/repos/processone/ejabberd/issues/3096/events,https://github.com/processone/ejabberd/pull/3096,528603001,MDExOlB1bGxSZXF1ZXN0MzQ1NjMyNDc4,3096,Update dependencies usages to make it possible to use ejabberd as rebar3 dependency.,"{'login': 'kappac', 'id': 4686574, 'node_id': 'MDQ6VXNlcjQ2ODY1NzQ=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/4686574?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/kappac', 'html_url': 'https://github.com/kappac', 'followers_url': 'https://api.github.com/users/kappac/followers', 'following_url': 'https://api.github.com/users/kappac/following{/other_user}', 'gists_url': 'https://api.github.com/users/kappac/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/kappac/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/kappac/subscriptions', 'organizations_url': 'https://api.github.com/users/kappac/orgs', 'repos_url': 'https://api.github.com/users/kappac/repos', 'events_url': 'https://api.github.com/users/kappac/events{/privacy}', 'received_events_url': 'https://api.github.com/users/kappac/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,3,2019-11-26T09:41:16Z,2019-11-27T15:26:03Z,,NONE,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3096', 'html_url': 'https://github.com/processone/ejabberd/pull/3096', 'diff_url': 'https://github.com/processone/ejabberd/pull/3096.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3096.patch'}","Use 'include_lib' instead of 'include' for 'fast_xml', 'xmpp', 'p1_utils' to make possible use 'ejabberd' as a rebar3 dependency.",
617,https://api.github.com/repos/processone/ejabberd/issues/3095,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3095/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3095/comments,https://api.github.com/repos/processone/ejabberd/issues/3095/events,https://github.com/processone/ejabberd/issues/3095,528529666,MDU6SXNzdWU1Mjg1Mjk2NjY=,3095,Error on enable push notification stanza,"{'login': 'shaggi7', 'id': 54536845, 'node_id': 'MDQ6VXNlcjU0NTM2ODQ1', 'avatar_url': 'https://avatars1.githubusercontent.com/u/54536845?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/shaggi7', 'html_url': 'https://github.com/shaggi7', 'followers_url': 'https://api.github.com/users/shaggi7/followers', 'following_url': 'https://api.github.com/users/shaggi7/following{/other_user}', 'gists_url': 'https://api.github.com/users/shaggi7/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/shaggi7/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/shaggi7/subscriptions', 'organizations_url': 'https://api.github.com/users/shaggi7/orgs', 'repos_url': 'https://api.github.com/users/shaggi7/repos', 'events_url': 'https://api.github.com/users/shaggi7/events{/privacy}', 'received_events_url': 'https://api.github.com/users/shaggi7/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,4,2019-11-26T07:02:19Z,2019-11-27T10:35:27Z,2019-11-26T12:07:01Z,NONE,,,"Hi,
Ejabberd - 19.09.1
Server OS - Ubuntu
I am working on a chat app using XMPP protocol and ejabberd as XMPP server. Considering this architecture
![image](https://user-images.githubusercontent.com/54536845/69606162-17ba5a80-1048-11ea-93c2-d53ec7d3f459.png)
I am using the same ejabberd server for XMPP server, App Server and XMPP push service.
I am sending a stanza to enable the push notification from the client to ejabberd as follows:
```
```
and i am getting error like this
```
No module is handling this query
```
Also if someone can tell me the jid(subdomain) of the push service in the ejabberd server. (I think that is the only thing that is creating issues)
Thanks .",
618,https://api.github.com/repos/processone/ejabberd/issues/3094,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3094/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3094/comments,https://api.github.com/repos/processone/ejabberd/issues/3094/events,https://github.com/processone/ejabberd/issues/3094,527914183,MDU6SXNzdWU1Mjc5MTQxODM=,3094,Push notification workflow,"{'login': 'shaggi7', 'id': 54536845, 'node_id': 'MDQ6VXNlcjU0NTM2ODQ1', 'avatar_url': 'https://avatars1.githubusercontent.com/u/54536845?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/shaggi7', 'html_url': 'https://github.com/shaggi7', 'followers_url': 'https://api.github.com/users/shaggi7/followers', 'following_url': 'https://api.github.com/users/shaggi7/following{/other_user}', 'gists_url': 'https://api.github.com/users/shaggi7/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/shaggi7/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/shaggi7/subscriptions', 'organizations_url': 'https://api.github.com/users/shaggi7/orgs', 'repos_url': 'https://api.github.com/users/shaggi7/repos', 'events_url': 'https://api.github.com/users/shaggi7/events{/privacy}', 'received_events_url': 'https://api.github.com/users/shaggi7/received_events', 'type': 'User', 'site_admin': False}","[{'id': 352233730, 'node_id': 'MDU6TGFiZWwzNTIyMzM3MzA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Question', 'name': 'Kind:Question', 'color': 'fef2c0', 'default': False, 'description': None}]",closed,False,,[],,3,2019-11-25T07:57:44Z,2019-11-27T04:32:43Z,2019-11-26T12:13:47Z,NONE,,,"Hi All,
Ejabberd - 19.09.1
Server OS - Ubuntu
I have been studying push notification in XMPP. So far i have got the clear picture of how this thing work . However I am using Ejabberd as my ""App server"" itself . So basically ""App server"" and ""XMPP server"" is single entity . Likewise my ""App client and XMPP client "" are the single entity. I want to implement push notification. mod_push is a bit confusing to me as i am not able to understand how ejabberd will identify the ""App server"" information and send it. So Here i am thinking about this approach
![image](https://user-images.githubusercontent.com/54536845/69522428-56d4a700-0f87-11ea-9d50-710071e2afd8.png)
1. While Registering client should send stanza for the allocation of the new node at pubsub service (mod_pubsub).
2. Server will create that node in return and inform the same to the client .
3. Client then again sends the IQ stanza including the node name/Id to ejabberd enable the push notification on that node .
4. Finally after these steps for sending the notification server will pick the token from the Database and then make API request to APNS/FCM to send notifications.
Can this approach work ?
Please suggest me about my approach and if there is any glitches please suggest .
Thanks .",
619,https://api.github.com/repos/processone/ejabberd/issues/3093,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3093/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3093/comments,https://api.github.com/repos/processone/ejabberd/issues/3093/events,https://github.com/processone/ejabberd/issues/3093,527716338,MDU6SXNzdWU1Mjc3MTYzMzg=,3093,mod_register: Wrong FORM_TYPE value on register form,"{'login': 'lovetox', 'id': 8661218, 'node_id': 'MDQ6VXNlcjg2NjEyMTg=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/8661218?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/lovetox', 'html_url': 'https://github.com/lovetox', 'followers_url': 'https://api.github.com/users/lovetox/followers', 'following_url': 'https://api.github.com/users/lovetox/following{/other_user}', 'gists_url': 'https://api.github.com/users/lovetox/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/lovetox/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/lovetox/subscriptions', 'organizations_url': 'https://api.github.com/users/lovetox/orgs', 'repos_url': 'https://api.github.com/users/lovetox/repos', 'events_url': 'https://api.github.com/users/lovetox/events{/privacy}', 'received_events_url': 'https://api.github.com/users/lovetox/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,6,2019-11-24T15:43:09Z,2019-11-25T08:12:20Z,2019-11-25T08:12:20Z,NONE,,,"## Environment
- ejabberd version: 19.08-2
- OS: Linux (Debian)
## Bug description
Example register form
```
Wählen sie zum Registrieren auf diesem Server einen Benutzernamen und ein Passworturn:xmpp:captcha
...
```
FORM_TYPE should be `jabber:iq:register` even if a captcha is included",
620,https://api.github.com/repos/processone/ejabberd/issues/3092,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3092/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3092/comments,https://api.github.com/repos/processone/ejabberd/issues/3092/events,https://github.com/processone/ejabberd/issues/3092,527522866,MDU6SXNzdWU1Mjc1MjI4NjY=,3092,404 Not Found / mod_web_register on 19.09.1,"{'login': 'StifflersMoM69', 'id': 30084922, 'node_id': 'MDQ6VXNlcjMwMDg0OTIy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/30084922?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/StifflersMoM69', 'html_url': 'https://github.com/StifflersMoM69', 'followers_url': 'https://api.github.com/users/StifflersMoM69/followers', 'following_url': 'https://api.github.com/users/StifflersMoM69/following{/other_user}', 'gists_url': 'https://api.github.com/users/StifflersMoM69/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/StifflersMoM69/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/StifflersMoM69/subscriptions', 'organizations_url': 'https://api.github.com/users/StifflersMoM69/orgs', 'repos_url': 'https://api.github.com/users/StifflersMoM69/repos', 'events_url': 'https://api.github.com/users/StifflersMoM69/events{/privacy}', 'received_events_url': 'https://api.github.com/users/StifflersMoM69/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,6,2019-11-23T07:25:15Z,2019-11-23T09:27:28Z,2019-11-23T09:27:13Z,NONE,,,"Hi, i am running ejabberd 19.09.1 on Ubuntu 18.04.3 LTS and enabled mod_register_web on port 5443
I am able to access the site through: https://HOST:5443/register
But when clicking on register, change password or delete accont i get the 404 error.
https://HOST:5443/admin instead works fine
Any ideas on that issues?
",
621,https://api.github.com/repos/processone/ejabberd/issues/3091,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3091/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3091/comments,https://api.github.com/repos/processone/ejabberd/issues/3091/events,https://github.com/processone/ejabberd/issues/3091,527296435,MDU6SXNzdWU1MjcyOTY0MzU=,3091,ejabberd and LDAP password problem,"{'login': 'Neustradamus', 'id': 104737, 'node_id': 'MDQ6VXNlcjEwNDczNw==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/104737?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Neustradamus', 'html_url': 'https://github.com/Neustradamus', 'followers_url': 'https://api.github.com/users/Neustradamus/followers', 'following_url': 'https://api.github.com/users/Neustradamus/following{/other_user}', 'gists_url': 'https://api.github.com/users/Neustradamus/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Neustradamus/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Neustradamus/subscriptions', 'organizations_url': 'https://api.github.com/users/Neustradamus/orgs', 'repos_url': 'https://api.github.com/users/Neustradamus/repos', 'events_url': 'https://api.github.com/users/Neustradamus/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Neustradamus/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,4,2019-11-22T16:33:54Z,2019-12-17T11:01:08Z,2019-11-22T16:34:57Z,NONE,,,"If we change a password of an user on a LDAP server, the password does not work in ejabberd.
It is always the old password.
It works in all other applications.
",
622,https://api.github.com/repos/processone/ejabberd/issues/3090,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3090/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3090/comments,https://api.github.com/repos/processone/ejabberd/issues/3090/events,https://github.com/processone/ejabberd/issues/3090,526638958,MDU6SXNzdWU1MjY2Mzg5NTg=,3090,Prepared statements errors,"{'login': 'sschimmel', 'id': 459456, 'node_id': 'MDQ6VXNlcjQ1OTQ1Ng==', 'avatar_url': 'https://avatars1.githubusercontent.com/u/459456?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/sschimmel', 'html_url': 'https://github.com/sschimmel', 'followers_url': 'https://api.github.com/users/sschimmel/followers', 'following_url': 'https://api.github.com/users/sschimmel/following{/other_user}', 'gists_url': 'https://api.github.com/users/sschimmel/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/sschimmel/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/sschimmel/subscriptions', 'organizations_url': 'https://api.github.com/users/sschimmel/orgs', 'repos_url': 'https://api.github.com/users/sschimmel/repos', 'events_url': 'https://api.github.com/users/sschimmel/events{/privacy}', 'received_events_url': 'https://api.github.com/users/sschimmel/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,"{'login': 'alexeyshch', 'id': 1354311, 'node_id': 'MDQ6VXNlcjEzNTQzMTE=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1354311?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/alexeyshch', 'html_url': 'https://github.com/alexeyshch', 'followers_url': 'https://api.github.com/users/alexeyshch/followers', 'following_url': 'https://api.github.com/users/alexeyshch/following{/other_user}', 'gists_url': 'https://api.github.com/users/alexeyshch/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/alexeyshch/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/alexeyshch/subscriptions', 'organizations_url': 'https://api.github.com/users/alexeyshch/orgs', 'repos_url': 'https://api.github.com/users/alexeyshch/repos', 'events_url': 'https://api.github.com/users/alexeyshch/events{/privacy}', 'received_events_url': 'https://api.github.com/users/alexeyshch/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'alexeyshch', 'id': 1354311, 'node_id': 'MDQ6VXNlcjEzNTQzMTE=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1354311?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/alexeyshch', 'html_url': 'https://github.com/alexeyshch', 'followers_url': 'https://api.github.com/users/alexeyshch/followers', 'following_url': 'https://api.github.com/users/alexeyshch/following{/other_user}', 'gists_url': 'https://api.github.com/users/alexeyshch/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/alexeyshch/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/alexeyshch/subscriptions', 'organizations_url': 'https://api.github.com/users/alexeyshch/orgs', 'repos_url': 'https://api.github.com/users/alexeyshch/repos', 'events_url': 'https://api.github.com/users/alexeyshch/events{/privacy}', 'received_events_url': 'https://api.github.com/users/alexeyshch/received_events', 'type': 'User', 'site_admin': False}]",,3,2019-11-21T14:44:06Z,2019-11-26T17:05:56Z,2019-11-26T17:05:56Z,NONE,,,"## Environment
- ejabberd version: 19.09
- Erlang version: Erlang/OTP 20 [erts-9.2] [source] [64-bit] [smp:1:1] [ds:1:1:10] [async-threads:10] [kernel-poll:false]
- OS: Linux (Ubuntu)
- Installed from: official deb/rpm
- Database: PostgreSQL
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
## Errors from error.log
```
2019-11-21 14:32:11.950 [error] <0.550.0>@ejabberd_sql:sql_query_internal:590 PREPARE failed for SQL query at {mod_muc_sql,151}: [{severity,'ERROR'},{86,<<""ERROR"">>},{code,<<""42P05"">>},{message,<<""prepared statement \""Q31669562\"" already exists"">>},{file,<<""prepare.c"">>},{line,473},{routine,<<""StorePreparedStatement"">>}]
...
2019-11-21 14:32:14.268 [error] <0.554.0>@ejabberd_sql:check_error:1195 SQL query 'Q30103238' at {mod_shared_roster_sql,60} failed: [{severity,'ERROR'},{86,<<""ERROR"">>},{code,<<""26000"">>},{message,<<""prepared statement \""Q30103238\"" does not exist"">>},{file,<<""prepare.c"">>},{line,512},{routine,<<""FetchPreparedStatement"">>}]
```
There are many more errors the same as these two.
## Bug description
In the error.log I see multiple errors about prepared statements. They seem to occur for many different modules. I have given the database user for ejabberd all permissions except for being a superuser. Creating users, sending messages etc. does work.
I've ran the sql from this file (https://github.com/processone/ejabberd/blob/master/sql/pg.sql) after I created the database. That ran without any errors.
There is data in the database so database communication does work.",
623,https://api.github.com/repos/processone/ejabberd/issues/3089,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3089/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3089/comments,https://api.github.com/repos/processone/ejabberd/issues/3089/events,https://github.com/processone/ejabberd/issues/3089,525353393,MDU6SXNzdWU1MjUzNTMzOTM=,3089,Completelly independent virtual host instances,"{'login': 'MamasLT', 'id': 54340230, 'node_id': 'MDQ6VXNlcjU0MzQwMjMw', 'avatar_url': 'https://avatars2.githubusercontent.com/u/54340230?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/MamasLT', 'html_url': 'https://github.com/MamasLT', 'followers_url': 'https://api.github.com/users/MamasLT/followers', 'following_url': 'https://api.github.com/users/MamasLT/following{/other_user}', 'gists_url': 'https://api.github.com/users/MamasLT/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/MamasLT/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/MamasLT/subscriptions', 'organizations_url': 'https://api.github.com/users/MamasLT/orgs', 'repos_url': 'https://api.github.com/users/MamasLT/repos', 'events_url': 'https://api.github.com/users/MamasLT/events{/privacy}', 'received_events_url': 'https://api.github.com/users/MamasLT/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",closed,False,,[],,8,2019-11-20T00:52:00Z,2019-11-28T09:32:34Z,2019-11-22T16:36:49Z,NONE,,,"Hello.
At the Ejabberd Architecture page (https://docs.ejabberd.im/developer/extending-ejabberd/architecture/) it says that:
""Instances can be made to be totally independent and invisible for each other if needed (or they can communicate as they would through federation)."", but does not explain how to achieve this.
Could anyone tell me how to set multiple virtual hosts (domains), that have users, who cannot see each other, add to contacts and so on?
At this point, I have 2 virtual hosts present, but a user from 1 instance can add a user from another to his contacts and send messages as well. I would like to avoid that for certain domains (vhosts). Please, if you can tell me how to achieve this.
Thank you kindly!",
624,https://api.github.com/repos/processone/ejabberd/issues/3088,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3088/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3088/comments,https://api.github.com/repos/processone/ejabberd/issues/3088/events,https://github.com/processone/ejabberd/issues/3088,525285488,MDU6SXNzdWU1MjUyODU0ODg=,3088,mod_announce REST API control,"{'login': 'thiras', 'id': 5150432, 'node_id': 'MDQ6VXNlcjUxNTA0MzI=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5150432?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/thiras', 'html_url': 'https://github.com/thiras', 'followers_url': 'https://api.github.com/users/thiras/followers', 'following_url': 'https://api.github.com/users/thiras/following{/other_user}', 'gists_url': 'https://api.github.com/users/thiras/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/thiras/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/thiras/subscriptions', 'organizations_url': 'https://api.github.com/users/thiras/orgs', 'repos_url': 'https://api.github.com/users/thiras/repos', 'events_url': 'https://api.github.com/users/thiras/events{/privacy}', 'received_events_url': 'https://api.github.com/users/thiras/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",closed,False,,[],,3,2019-11-19T21:44:00Z,2019-11-20T19:51:56Z,2019-11-20T19:51:56Z,NONE,,,"**Is your feature request related to a problem? Please describe.**
It's really disappointment to not have REST endpoint to control announcements, especially at integration with other systems.
**Describe the solution you'd like**
A REST endpoint to control mod_announce
Please let me know if I miss any endpoint that can control mod_announce or if any undocumented endpoint for it.
",
625,https://api.github.com/repos/processone/ejabberd/issues/3087,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3087/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3087/comments,https://api.github.com/repos/processone/ejabberd/issues/3087/events,https://github.com/processone/ejabberd/issues/3087,525245009,MDU6SXNzdWU1MjUyNDUwMDk=,3087,Using CORS with ejabberd,"{'login': 'joweste', 'id': 30800736, 'node_id': 'MDQ6VXNlcjMwODAwNzM2', 'avatar_url': 'https://avatars0.githubusercontent.com/u/30800736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/joweste', 'html_url': 'https://github.com/joweste', 'followers_url': 'https://api.github.com/users/joweste/followers', 'following_url': 'https://api.github.com/users/joweste/following{/other_user}', 'gists_url': 'https://api.github.com/users/joweste/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/joweste/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/joweste/subscriptions', 'organizations_url': 'https://api.github.com/users/joweste/orgs', 'repos_url': 'https://api.github.com/users/joweste/repos', 'events_url': 'https://api.github.com/users/joweste/events{/privacy}', 'received_events_url': 'https://api.github.com/users/joweste/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,9,2019-11-19T20:23:20Z,2019-11-20T12:47:33Z,2019-11-20T12:47:32Z,NONE,,,"## Environment
- ejabberd version: 19.01
- Erlang version: `erl +V`
- OS: Windows
- Installed from: official binary installer
## Bug description
I use conversje.js and I use an api on my server to get credentials of a user.
When I execute a call to api, I am getting a cors error, as showing below.
How could I enable cors in ejabberd yml file config?
`Access to XMLHttpRequest at 'https://techaboutweb.myvnc.com:5443/http-bind' from origin 'https://127.0.0.1' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.
`
```
listen:
-
port: 5222
module: ejabberd_c2s
max_stanza_size: 262144
shaper: c2s_shaper
access: c2s
starttls_required: true
-
port: 5269
module: ejabberd_s2s_in
max_stanza_size: 524288
-
port: 5443
module: ejabberd_http
tls: true
request_handlers:
""/admin"": ejabberd_web_admin
""/api"": mod_http_api
""/bosh"": mod_bosh
""/captcha"": ejabberd_captcha
""/upload"": mod_http_upload
""/ws"": ejabberd_http_ws
""/oauth"": ejabberd_oauth
-
port: 5280
ip: ""0.0.0.0""
module: ejabberd_http
request_handlers:
""/admin"": ejabberd_web_admin
""/http-bind"": mod_bosh
""/upload"": mod_http_upload
""/ws"": ejabberd_http_ws
""/api"": mod_http_api
""/bosh"": mod_bosh
""/oauth"": ejabberd_oauth
-
port: 1883
module: mod_mqtt
backlog: 1000
s2s_use_starttls: optional
```
",
626,https://api.github.com/repos/processone/ejabberd/issues/3086,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3086/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3086/comments,https://api.github.com/repos/processone/ejabberd/issues/3086/events,https://github.com/processone/ejabberd/issues/3086,525059217,MDU6SXNzdWU1MjUwNTkyMTc=,3086,What is the Process Or Functionality For Stream Management In layman's term,"{'login': 'coderRauthan', 'id': 18344258, 'node_id': 'MDQ6VXNlcjE4MzQ0MjU4', 'avatar_url': 'https://avatars0.githubusercontent.com/u/18344258?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/coderRauthan', 'html_url': 'https://github.com/coderRauthan', 'followers_url': 'https://api.github.com/users/coderRauthan/followers', 'following_url': 'https://api.github.com/users/coderRauthan/following{/other_user}', 'gists_url': 'https://api.github.com/users/coderRauthan/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/coderRauthan/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/coderRauthan/subscriptions', 'organizations_url': 'https://api.github.com/users/coderRauthan/orgs', 'repos_url': 'https://api.github.com/users/coderRauthan/repos', 'events_url': 'https://api.github.com/users/coderRauthan/events{/privacy}', 'received_events_url': 'https://api.github.com/users/coderRauthan/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,9,2019-11-19T14:52:44Z,2019-11-21T06:54:36Z,2019-11-19T15:09:14Z,NONE,,,"Hi Friends I'm Using Ejabberd 19.02.
So the thing is currently there is an issue of Message Drop when user turns off Internet or the network connection got lost.If At that time somebody message that user,those messages will be lost.As presence of that user will be online and those messages will not be stored in spool table.
Scenario - User A is online,User B is Online.They messages each other.Everything works fine.But Suddenly User B internet got disconnected.Now User B is disconnected but his presence is still online.Now the messages that are sent by User A to User B are lost.
Solution - I've Read that Stream Management is created specifically for this task.As its Acknowledges from both server and client side.So I've Implemented it with the help of https://docs.ejabberd.im/admin/configuration/#mod-stream-mgmt .I've set my setting as :
max_ack_queue ---> 15000
max_resume_timeout: ---> 0
resend_on_timeout ---> true(I know for MUC it should be if_offline,currently true for testing)
resume_timeout ---> 0
ack_timeout ---> 1
I've enabled Stream Management From Both Server(Ejabberd 19.02) and Client(Smack 4.2) Side.
But Currently the issue is,If User B is Offline and User A sends messages,Then:-
The first Message is getting lost.The process will be -
User B is offline but presence will be shown as online.User A sends message,server will not get acknowledgement from User B. At timeout the user B will get disconnected and from there on
all messages will be stored in spool table.But In this case the first message will always get lost.
I dont want to use PingManager, as in my opinion it is an expensive solution,And Even with Ping there will be a window in which messages will be lost.
I dont want to increase resume_timeout ,As i need to create new session if User is disconnected once.
So here are my 2 questions:-
1) How does Stream Management work end to end in layman's term,I am sure My understanding of it is not complete.Like I have many questions regarding it:-
a) Where are the messages stored when user is disconnected,but his presence is online.On Connection resumption how does he get message when the messages are not stored in spool table.
b) What will happen if user is disconnected,But his presence is online.If Stream Times out,where will the message go.Will it be stored in spool table or not.How will user get his message when he connects next time.
2) How To Solve This issue,My first message will always be lost(which makes sense to me,as it will not be able to send acknowledgement back,and then server will disconnect the user,and next messages will be stored offline but that message will be lost).
I'm sorry if something sounds stupid,but there are no resources in which end to end Stream Management process is explain clearly.It will help me a lot if Somebody explain Stream Management theoretically.And how to solve this issue.
Thanks,
Best Regards
",
627,https://api.github.com/repos/processone/ejabberd/issues/3085,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3085/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3085/comments,https://api.github.com/repos/processone/ejabberd/issues/3085/events,https://github.com/processone/ejabberd/issues/3085,525008408,MDU6SXNzdWU1MjUwMDg0MDg=,3085,Installing SSL on ejabberd,"{'login': 'joweste', 'id': 30800736, 'node_id': 'MDQ6VXNlcjMwODAwNzM2', 'avatar_url': 'https://avatars0.githubusercontent.com/u/30800736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/joweste', 'html_url': 'https://github.com/joweste', 'followers_url': 'https://api.github.com/users/joweste/followers', 'following_url': 'https://api.github.com/users/joweste/following{/other_user}', 'gists_url': 'https://api.github.com/users/joweste/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/joweste/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/joweste/subscriptions', 'organizations_url': 'https://api.github.com/users/joweste/orgs', 'repos_url': 'https://api.github.com/users/joweste/repos', 'events_url': 'https://api.github.com/users/joweste/events{/privacy}', 'received_events_url': 'https://api.github.com/users/joweste/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,5,2019-11-19T13:26:25Z,2019-11-20T12:48:02Z,2019-11-20T12:48:02Z,NONE,,,"## Environment
- ejabberd version: 19.09
- Erlang version: `erl +V`
- OS: Windows Server 2019
## Errors from error.log/crash.log
Cert is invalid is showing in browse
## Bug description
I am using zeroSSL with letsencrypt to generate a SSL.
I have the next files generated by zeroSSL and I installed in my website without problem.
My problem is how install it in ejabberd running into windows.
I have the next files generated by zeroSSL wizard.
account-key.txt
domain-key.txt
domain-crt.txt
domain-csr.txt
Please How could I set the certfiles and port to use SSL in ejabberd with windows with these files?
",
628,https://api.github.com/repos/processone/ejabberd/issues/3083,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3083/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3083/comments,https://api.github.com/repos/processone/ejabberd/issues/3083/events,https://github.com/processone/ejabberd/pull/3083,523058261,MDExOlB1bGxSZXF1ZXN0MzQxMTM3NzQy,3083,Use a numeric value for loglevel,"{'login': 'marc0s', 'id': 273769, 'node_id': 'MDQ6VXNlcjI3Mzc2OQ==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/273769?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/marc0s', 'html_url': 'https://github.com/marc0s', 'followers_url': 'https://api.github.com/users/marc0s/followers', 'following_url': 'https://api.github.com/users/marc0s/following{/other_user}', 'gists_url': 'https://api.github.com/users/marc0s/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/marc0s/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/marc0s/subscriptions', 'organizations_url': 'https://api.github.com/users/marc0s/orgs', 'repos_url': 'https://api.github.com/users/marc0s/repos', 'events_url': 'https://api.github.com/users/marc0s/events{/privacy}', 'received_events_url': 'https://api.github.com/users/marc0s/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2019-11-14T19:28:36Z,2019-11-14T19:53:02Z,2019-11-14T19:31:40Z,NONE,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3083', 'html_url': 'https://github.com/processone/ejabberd/pull/3083', 'diff_url': 'https://github.com/processone/ejabberd/pull/3083.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3083.patch'}","`loglevel` accepts numeric values (see https://docs.ejabberd.im/admin/configuration/#logging), not log level's names.
",
629,https://api.github.com/repos/processone/ejabberd/issues/3082,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3082/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3082/comments,https://api.github.com/repos/processone/ejabberd/issues/3082/events,https://github.com/processone/ejabberd/issues/3082,522882464,MDU6SXNzdWU1MjI4ODI0NjQ=,3082,ejabberd 19.09.56 - Documentation,"{'login': 'maniskec', 'id': 50947307, 'node_id': 'MDQ6VXNlcjUwOTQ3MzA3', 'avatar_url': 'https://avatars2.githubusercontent.com/u/50947307?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/maniskec', 'html_url': 'https://github.com/maniskec', 'followers_url': 'https://api.github.com/users/maniskec/followers', 'following_url': 'https://api.github.com/users/maniskec/following{/other_user}', 'gists_url': 'https://api.github.com/users/maniskec/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/maniskec/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/maniskec/subscriptions', 'organizations_url': 'https://api.github.com/users/maniskec/orgs', 'repos_url': 'https://api.github.com/users/maniskec/repos', 'events_url': 'https://api.github.com/users/maniskec/events{/privacy}', 'received_events_url': 'https://api.github.com/users/maniskec/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2019-11-14T14:08:09Z,2019-11-15T09:17:40Z,2019-11-14T15:24:04Z,NONE,,,"Hello team,
I am new to ejabberd , I have cloned source code from git and i have followed the instructions mentioned in the below link
https://docs.ejabberd.im/admin/installation/#install-from-source-code
I am able to start ejabberdctl service and i am able to use pidgin as my client.
Now , I have problem in changing Database configuration and i want to use mysql to log all activities.
More over , I cannot able to enable Rest API and cannot able to generate oauth token.
There is no documentation available for ejabberd 19.09.56.
Though I have modified ejabberd.yml file
**db_type: mysql
db_server: 10.20.200.57
db_port: 3306 # the default
db_database: ejabberd
db_username: mani
db_password: ""Iopex@123""
db_pool_size: 5**
I am getting this error:
**Failed to start ejabberd application: Invalid value of option modules->mod_mam->db_type: unsupported database: mysql**
Anybody, Help me out to get documentation for ejabberd 19.09.56.
Thanks in advance.",
630,https://api.github.com/repos/processone/ejabberd/issues/3081,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3081/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3081/comments,https://api.github.com/repos/processone/ejabberd/issues/3081/events,https://github.com/processone/ejabberd/issues/3081,522469393,MDU6SXNzdWU1MjI0NjkzOTM=,3081,incoming_s2s_number in admin CP,"{'login': 'member777', 'id': 53788403, 'node_id': 'MDQ6VXNlcjUzNzg4NDAz', 'avatar_url': 'https://avatars2.githubusercontent.com/u/53788403?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/member777', 'html_url': 'https://github.com/member777', 'followers_url': 'https://api.github.com/users/member777/followers', 'following_url': 'https://api.github.com/users/member777/following{/other_user}', 'gists_url': 'https://api.github.com/users/member777/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/member777/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/member777/subscriptions', 'organizations_url': 'https://api.github.com/users/member777/orgs', 'repos_url': 'https://api.github.com/users/member777/repos', 'events_url': 'https://api.github.com/users/member777/events{/privacy}', 'received_events_url': 'https://api.github.com/users/member777/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2019-11-13T20:59:13Z,2019-11-13T21:00:44Z,2019-11-13T21:00:43Z,NONE,,,"## Environment
- ejabberd version: 19.02
- OS: Linux (Debian) 10
- Installed from: distro package
## Bug description
In admin CP https://hereisjabber.site:5280/admin/stats/
We can see such info:
Totally registered: 1.000
Connected users: 10
Outcoming s2s-servers: 10
Incoming s2s connections: 0
And everytime this numer is 0. What does it mean? That I have no incoming s2s connections? Or this is bug?",
631,https://api.github.com/repos/processone/ejabberd/issues/3080,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3080/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3080/comments,https://api.github.com/repos/processone/ejabberd/issues/3080/events,https://github.com/processone/ejabberd/issues/3080,520966542,MDU6SXNzdWU1MjA5NjY1NDI=,3080,syntax problem on docs page,"{'login': 'xvdessel', 'id': 17529083, 'node_id': 'MDQ6VXNlcjE3NTI5MDgz', 'avatar_url': 'https://avatars0.githubusercontent.com/u/17529083?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/xvdessel', 'html_url': 'https://github.com/xvdessel', 'followers_url': 'https://api.github.com/users/xvdessel/followers', 'following_url': 'https://api.github.com/users/xvdessel/following{/other_user}', 'gists_url': 'https://api.github.com/users/xvdessel/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/xvdessel/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/xvdessel/subscriptions', 'organizations_url': 'https://api.github.com/users/xvdessel/orgs', 'repos_url': 'https://api.github.com/users/xvdessel/repos', 'events_url': 'https://api.github.com/users/xvdessel/events{/privacy}', 'received_events_url': 'https://api.github.com/users/xvdessel/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179053080, 'node_id': 'MDU6TGFiZWwxNzkwNTMwODA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Documentation', 'name': 'Kind:Documentation', 'color': '006b75', 'default': False, 'description': None}]",closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]",,3,2019-11-11T13:33:55Z,2019-11-11T14:53:35Z,2019-11-11T14:53:35Z,NONE,,,"## Environment
- ejabberd version: 19.05
- Erlang version: 10.3.5.5
- OS: Fedora 30
- Installed from: official deb/rpm
## Errors from error.log/crash.log
```
2019-11-10 00:01:47.551 [error] <0.106.0>@ejabberd_config:transform_terms:1314
Failed to transform terms by acl: {'EXIT',{function_clause,[
{lists,foldl,[#Fun,{[],[]},<<>>],[{file,""lists.erl""},{line,1262}]},
{ejabberd_config,collect_options,1,[{file,""src/ejabberd_config.erl""},{line,1360}]},
{acl,'-transform_options/1-fun-5-',1,[{file,""src/acl.erl""},{line,710}]},
{lists,map,2,[{file,""lists.erl""},{line,1239}]},
{acl,transform_options,1,[{file,""src/acl.erl""},{line,708}]},
{ejabberd_config,transform_terms,2,[{file,""src/ejabberd_config.erl""},{line,1312}]},
{ejabberd_config,transform_terms,1,[{file,""src/ejabberd_config.erl""},{line,1309}]},
{ejabberd_config,'-transform_options/1-lc$^3/1-0-',1,[{file,""src/ejabberd_config.erl""},{line,1389}]}]}}
```
## Bug description
When applying manually the proposed change from this docs page:
https://docs.ejabberd.im/admin/guide/managing/
more specifically the yaml code from the first example of the eb Admin section, my ejabberd would no longer start (see error above)
After some tests, it tunrs out the syntax in that example is wrong, or at least the way it is visualized causes problems:
The acl: admin tag and the subsequent user tag seem to be at the same level. In the code, the first one is preceded by 8 blanks, the second one by a tab. But that difference is not visible in the browser.
Hence one could just put them both with 8 blanks, as I did, in which case ejabberd crashes on the syntax. By making that 2 more blanks for the user line and also for the next line, things worked again.
I would thus recommend to use only blanks in the indentation of the example to avoid confusion.
",
632,https://api.github.com/repos/processone/ejabberd/issues/3079,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3079/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3079/comments,https://api.github.com/repos/processone/ejabberd/issues/3079/events,https://github.com/processone/ejabberd/issues/3079,517926337,MDU6SXNzdWU1MTc5MjYzMzc=,3079,Correct release process?,"{'login': 'mbirth', 'id': 130302, 'node_id': 'MDQ6VXNlcjEzMDMwMg==', 'avatar_url': 'https://avatars1.githubusercontent.com/u/130302?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mbirth', 'html_url': 'https://github.com/mbirth', 'followers_url': 'https://api.github.com/users/mbirth/followers', 'following_url': 'https://api.github.com/users/mbirth/following{/other_user}', 'gists_url': 'https://api.github.com/users/mbirth/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mbirth/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mbirth/subscriptions', 'organizations_url': 'https://api.github.com/users/mbirth/orgs', 'repos_url': 'https://api.github.com/users/mbirth/repos', 'events_url': 'https://api.github.com/users/mbirth/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mbirth/received_events', 'type': 'User', 'site_admin': False}","[{'id': 231569227, 'node_id': 'MDU6TGFiZWwyMzE1NjkyMjc=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Installers', 'name': 'Component:Installers', 'color': 'fef2c0', 'default': False, 'description': None}, {'id': 352233730, 'node_id': 'MDU6TGFiZWwzNTIyMzM3MzA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Question', 'name': 'Kind:Question', 'color': 'fef2c0', 'default': False, 'description': None}]",closed,False,,[],,7,2019-11-05T17:43:38Z,2019-11-07T06:46:44Z,2019-11-07T06:46:44Z,NONE,,,"What's the correct release process to get *exactly* what you offer for [download](https://www.process-one.net/en/ejabberd/archive/) in the linux `.run` files?
There are conflicting information in your documentation, sometimes referring to the [Vagrant setup](https://github.com/processone/ejabberd-vagrant-dev) (that wasn't touched in the last 3 years) and there are instructions about a [Docker mix image](https://github.com/processone/docker-ejabberd). Also the [normal Makefile way](https://docs.ejabberd.im/admin/installation/#install-from-source-code).
The obvious process of doing `./configure && make` gets me beams with debug info and other metadata which are about 3-4x the size of the same files from your `.run` package. Doing `./configure --disable-debug` doesn't make any difference. Also `make rel` gives a different directory structure than that in your releases.
Trying to do what the Docker mix image does also compiles debug info into the beams. And `mix release` gives some error about `p1_utils` being an included app but also a regular app.
So what's the ""official""/correct workflow here to get files without debug info or other metadata and end up with a `.run` file?",
633,https://api.github.com/repos/processone/ejabberd/issues/3078,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3078/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3078/comments,https://api.github.com/repos/processone/ejabberd/issues/3078/events,https://github.com/processone/ejabberd/issues/3078,517181196,MDU6SXNzdWU1MTcxODExOTY=,3078,OMEMO not available,"{'login': 'wartjugger', 'id': 47984715, 'node_id': 'MDQ6VXNlcjQ3OTg0NzE1', 'avatar_url': 'https://avatars3.githubusercontent.com/u/47984715?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/wartjugger', 'html_url': 'https://github.com/wartjugger', 'followers_url': 'https://api.github.com/users/wartjugger/followers', 'following_url': 'https://api.github.com/users/wartjugger/following{/other_user}', 'gists_url': 'https://api.github.com/users/wartjugger/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/wartjugger/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/wartjugger/subscriptions', 'organizations_url': 'https://api.github.com/users/wartjugger/orgs', 'repos_url': 'https://api.github.com/users/wartjugger/repos', 'events_url': 'https://api.github.com/users/wartjugger/events{/privacy}', 'received_events_url': 'https://api.github.com/users/wartjugger/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,11,2019-11-04T14:16:43Z,2019-11-05T09:04:25Z,2019-11-05T09:04:25Z,NONE,,,"## Environment
- ejabberd version: 19.09.1
- Erlang version: 10.3.4
- OS: Linux (Debian 9)
- Installed from: official .deb file
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
loglevel: 4
...
```
## Errors from error.log/crash.log
No errors
## Bug description
Can't get OMEMO to work. Client does not identify OMEMO (no issues using it in other servers). It was also working for me in when I used version 16.09. Further, I don't find any reference whatsoever to OMEMO in the docs.
",
634,https://api.github.com/repos/processone/ejabberd/issues/3077,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3077/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3077/comments,https://api.github.com/repos/processone/ejabberd/issues/3077/events,https://github.com/processone/ejabberd/issues/3077,517139036,MDU6SXNzdWU1MTcxMzkwMzY=,3077,Security improvements: Add warning about old SSL/TLS versions,"{'login': 'Neustradamus', 'id': 104737, 'node_id': 'MDQ6VXNlcjEwNDczNw==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/104737?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Neustradamus', 'html_url': 'https://github.com/Neustradamus', 'followers_url': 'https://api.github.com/users/Neustradamus/followers', 'following_url': 'https://api.github.com/users/Neustradamus/following{/other_user}', 'gists_url': 'https://api.github.com/users/Neustradamus/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Neustradamus/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Neustradamus/subscriptions', 'organizations_url': 'https://api.github.com/users/Neustradamus/orgs', 'repos_url': 'https://api.github.com/users/Neustradamus/repos', 'events_url': 'https://api.github.com/users/Neustradamus/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Neustradamus/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179053760, 'node_id': 'MDU6TGFiZWwxNzkwNTM3NjA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Note:Needs%20more%20info', 'name': 'Note:Needs more info', 'color': 'c7def8', 'default': False, 'description': None}]",closed,False,,[],,5,2019-11-04T13:05:50Z,2019-11-06T14:58:38Z,2019-11-06T12:39:26Z,NONE,,,"Add a warn if there is always SSLv2, SSLv3, TLSv1, TLSv1_1 instead of TLSv1_2 or TLSv1_3.
Please note that there are possibilities in ejabberd.yml for disable.
- ""no_sslv2""
- ""no_sslv3""
- ""no_tlsv1""
- ""no_tlsv1_1""
- ""no_tlsv1_2""
Example for Prosody:
- https://hg.prosody.im/prosody-modules/file/406b32b50457/mod_warn_legacy_tls
Last commits:
- https://hg.prosody.im/prosody-modules/rev/36023eb3254e
- https://hg.prosody.im/prosody-modules/rev/5073bbd86970
- https://hg.prosody.im/prosody-modules/rev/ec3eb426271e
- https://hg.prosody.im/prosody-modules/rev/406b32b50457",
635,https://api.github.com/repos/processone/ejabberd/issues/3076,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3076/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3076/comments,https://api.github.com/repos/processone/ejabberd/issues/3076/events,https://github.com/processone/ejabberd/issues/3076,516855958,MDU6SXNzdWU1MTY4NTU5NTg=,3076,can't find register.css,"{'login': 'wartjugger', 'id': 47984715, 'node_id': 'MDQ6VXNlcjQ3OTg0NzE1', 'avatar_url': 'https://avatars3.githubusercontent.com/u/47984715?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/wartjugger', 'html_url': 'https://github.com/wartjugger', 'followers_url': 'https://api.github.com/users/wartjugger/followers', 'following_url': 'https://api.github.com/users/wartjugger/following{/other_user}', 'gists_url': 'https://api.github.com/users/wartjugger/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/wartjugger/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/wartjugger/subscriptions', 'organizations_url': 'https://api.github.com/users/wartjugger/orgs', 'repos_url': 'https://api.github.com/users/wartjugger/repos', 'events_url': 'https://api.github.com/users/wartjugger/events{/privacy}', 'received_events_url': 'https://api.github.com/users/wartjugger/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2019-11-03T16:44:26Z,2019-11-04T07:10:00Z,2019-11-04T06:49:24Z,NONE,,,"ejabberd 16.09, installed on Debian 9 using apt-get.
Is this file available for changes with this type of installation or must I compile it from source?",
636,https://api.github.com/repos/processone/ejabberd/issues/3075,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3075/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3075/comments,https://api.github.com/repos/processone/ejabberd/issues/3075/events,https://github.com/processone/ejabberd/issues/3075,514582200,MDU6SXNzdWU1MTQ1ODIyMDA=,3075,Allow ACME to request non-ejabberd hosted subdomains,"{'login': 'licaon-kter', 'id': 2282799, 'node_id': 'MDQ6VXNlcjIyODI3OTk=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2282799?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/licaon-kter', 'html_url': 'https://github.com/licaon-kter', 'followers_url': 'https://api.github.com/users/licaon-kter/followers', 'following_url': 'https://api.github.com/users/licaon-kter/following{/other_user}', 'gists_url': 'https://api.github.com/users/licaon-kter/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/licaon-kter/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/licaon-kter/subscriptions', 'organizations_url': 'https://api.github.com/users/licaon-kter/orgs', 'repos_url': 'https://api.github.com/users/licaon-kter/repos', 'events_url': 'https://api.github.com/users/licaon-kter/events{/privacy}', 'received_events_url': 'https://api.github.com/users/licaon-kter/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",open,False,"{'login': 'zinid', 'id': 1095902, 'node_id': 'MDQ6VXNlcjEwOTU5MDI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1095902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/zinid', 'html_url': 'https://github.com/zinid', 'followers_url': 'https://api.github.com/users/zinid/followers', 'following_url': 'https://api.github.com/users/zinid/following{/other_user}', 'gists_url': 'https://api.github.com/users/zinid/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/zinid/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/zinid/subscriptions', 'organizations_url': 'https://api.github.com/users/zinid/orgs', 'repos_url': 'https://api.github.com/users/zinid/repos', 'events_url': 'https://api.github.com/users/zinid/events{/privacy}', 'received_events_url': 'https://api.github.com/users/zinid/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'zinid', 'id': 1095902, 'node_id': 'MDQ6VXNlcjEwOTU5MDI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1095902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/zinid', 'html_url': 'https://github.com/zinid', 'followers_url': 'https://api.github.com/users/zinid/followers', 'following_url': 'https://api.github.com/users/zinid/following{/other_user}', 'gists_url': 'https://api.github.com/users/zinid/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/zinid/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/zinid/subscriptions', 'organizations_url': 'https://api.github.com/users/zinid/orgs', 'repos_url': 'https://api.github.com/users/zinid/repos', 'events_url': 'https://api.github.com/users/zinid/events{/privacy}', 'received_events_url': 'https://api.github.com/users/zinid/received_events', 'type': 'User', 'site_admin': False}]",,2,2019-10-30T11:13:52Z,2020-09-02T17:02:09Z,,CONTRIBUTOR,,,"The current implementation just uses ACME to get certs for: `domain.tld`, `upload.domain.tld`, `conference.domain.tld`, `proxy.domain.tld`, `pubsubdomain.tld` which, I guess, are extracted from the currently hosted ones by ejabberd.
ejabberd, at least in my case, is not just a single daemon for everything on this domain, I might have others too in need of certs, like `web.domain.tld` (hosting Converse.js on nginx) or anything else really.
So I am forced to add some other [ACME tool](https://letsencrypt.org/docs/client-options/) to generate some certs that might not share the same domain key, so basically different certs with different SANs and expiration dates, on the same base domain.
Now, I do see the point of keeping it strictly related to ejabberd, but the whole thing is rather odd:
* If I use [dehydrated](https://github.com/lukas2511/dehydrated) for `web.domain.tld` why should I bother with the included ACME? I can use this for the ejabberd domains too, right?
* If ejabberd is getting certs for its hosted domains only, why does it generate a cert for `upload.domain.tld` even if that is NOT hosted by itself (`put_url` points to a nginx instance, and with `external_secret` via [ngx_http_upload](https://github.com/weiss/ngx_http_upload)) ? nginx should now use one cert for `upload.` and another for `web.`
Maybe add an option `additional_domains:` where the admin can, besides whatever ejabberd is setup, add other domains.
Right now this feels artificially limited for some reason. ",
637,https://api.github.com/repos/processone/ejabberd/issues/3074,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3074/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3074/comments,https://api.github.com/repos/processone/ejabberd/issues/3074/events,https://github.com/processone/ejabberd/issues/3074,514428988,MDU6SXNzdWU1MTQ0Mjg5ODg=,3074,CockroachDB compatibility,"{'login': 'zinid', 'id': 1095902, 'node_id': 'MDQ6VXNlcjEwOTU5MDI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1095902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/zinid', 'html_url': 'https://github.com/zinid', 'followers_url': 'https://api.github.com/users/zinid/followers', 'following_url': 'https://api.github.com/users/zinid/following{/other_user}', 'gists_url': 'https://api.github.com/users/zinid/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/zinid/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/zinid/subscriptions', 'organizations_url': 'https://api.github.com/users/zinid/orgs', 'repos_url': 'https://api.github.com/users/zinid/repos', 'events_url': 'https://api.github.com/users/zinid/events{/privacy}', 'received_events_url': 'https://api.github.com/users/zinid/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179046635, 'node_id': 'MDU6TGFiZWwxNzkwNDY2MzU=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Databases', 'name': 'Component:Databases', 'color': 'fef2c0', 'default': False, 'description': None}, {'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",closed,False,"{'login': 'alexeyshch', 'id': 1354311, 'node_id': 'MDQ6VXNlcjEzNTQzMTE=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1354311?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/alexeyshch', 'html_url': 'https://github.com/alexeyshch', 'followers_url': 'https://api.github.com/users/alexeyshch/followers', 'following_url': 'https://api.github.com/users/alexeyshch/following{/other_user}', 'gists_url': 'https://api.github.com/users/alexeyshch/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/alexeyshch/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/alexeyshch/subscriptions', 'organizations_url': 'https://api.github.com/users/alexeyshch/orgs', 'repos_url': 'https://api.github.com/users/alexeyshch/repos', 'events_url': 'https://api.github.com/users/alexeyshch/events{/privacy}', 'received_events_url': 'https://api.github.com/users/alexeyshch/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'alexeyshch', 'id': 1354311, 'node_id': 'MDQ6VXNlcjEzNTQzMTE=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1354311?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/alexeyshch', 'html_url': 'https://github.com/alexeyshch', 'followers_url': 'https://api.github.com/users/alexeyshch/followers', 'following_url': 'https://api.github.com/users/alexeyshch/following{/other_user}', 'gists_url': 'https://api.github.com/users/alexeyshch/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/alexeyshch/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/alexeyshch/subscriptions', 'organizations_url': 'https://api.github.com/users/alexeyshch/orgs', 'repos_url': 'https://api.github.com/users/alexeyshch/repos', 'events_url': 'https://api.github.com/users/alexeyshch/events{/privacy}', 'received_events_url': 'https://api.github.com/users/alexeyshch/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/38', 'html_url': 'https://github.com/processone/ejabberd/milestone/38', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/38/labels', 'id': 4710876, 'node_id': 'MDk6TWlsZXN0b25lNDcxMDg3Ng==', 'number': 38, 'title': 'ejabberd 19.12', 'description': '', 'creator': {'login': 'zinid', 'id': 1095902, 'node_id': 'MDQ6VXNlcjEwOTU5MDI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1095902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/zinid', 'html_url': 'https://github.com/zinid', 'followers_url': 'https://api.github.com/users/zinid/followers', 'following_url': 'https://api.github.com/users/zinid/following{/other_user}', 'gists_url': 'https://api.github.com/users/zinid/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/zinid/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/zinid/subscriptions', 'organizations_url': 'https://api.github.com/users/zinid/orgs', 'repos_url': 'https://api.github.com/users/zinid/repos', 'events_url': 'https://api.github.com/users/zinid/events{/privacy}', 'received_events_url': 'https://api.github.com/users/zinid/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 2, 'closed_issues': 5, 'state': 'closed', 'created_at': '2019-10-01T19:12:36Z', 'updated_at': '2020-03-18T13:40:27Z', 'due_on': '2019-12-31T08:00:00Z', 'closed_at': '2020-02-18T08:47:53Z'}",9,2019-10-30T06:28:16Z,2020-03-20T02:52:13Z,2020-03-18T13:40:27Z,CONTRIBUTOR,,,"ejabberd is mostly working with [CockroachDB](https://github.com/cockroachdb/cockroach), however several problems remain:
1. CockroachDB reserves `FAMILY`as a keyword. In the schema I fixed it by placing `family` in double quotes, however, the database still complains when `family` is put unquoted into SQL queries, but quoting it breaks MySQL compatibility (see #3072).
2. CockroachDB doesn't support `LIKE predicate ESCAPE clause` syntax (see E061-05 clause at https://www.cockroachlabs.com/docs/stable/detailed-sql-support.html). We use this syntax in some queries (in mod_pubsub for example). This can be fixed by removing [these two lines](https://github.com/processone/ejabberd/blob/19.09.1/src/ejabberd_sql.erl#L235-L236), however this will most likely break MSSQL compatibility (see https://docs.microsoft.com/en-us/sql/t-sql/language-elements/like-transact-sql?view=sql-server-ver15).
3. There is some problem with backslash escaping, e.g. see these two requests (generated by mod_mam_sql):
```
I191029 13:33:29.522174 64880 sql/exec_log.go:162 [n1,client=127.0.0.1:47197,user=root] 48183 exec """" {} ""INSERT INTO archive(username, server_host, \""timestamp\"", peer, bare_peer, xml, txt, kind, nick) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9)"" {$1:""e'test_slave!#$%^*()`~+-;_=[]{}|\\\\'"", $2:""'pgsql.localhost'"", $3:""1572356009500878"", $4:""e'test_master!#$%^*()`~+-;_=[]{}|\\\\@pgsql.localhost/resource!@#$%^&*()\\'\""`~<>+-/;:_=[]{}|\\\\'"", $5:""e'test_master!#$%^*()`~+-;_=[]{}|\\\\@pgsql.localhost'"", $6:""e'+-/;:_=[]{}|\\\\\\' from=\\'test_master!#$%^*()`~+-;_=[]{}|\\\\@pgsql.localhost/resource!@#$%^&*()'"`~<>+-/;:_=[]{}|\\\\\\' id=\\'3330809881392138156\\' xmlns=\\'jabber:client\\'>5'"", $7:""'5'"", $8:""'chat'"", $9:""''""} 9.296 1 """"
I191029 13:33:32.533616 64880 sql/exec_log.go:162 [n1,client=127.0.0.1:47197,user=root] 48184 exec """" {} ""SELECT \""timestamp\"", xml, peer, kind, nick FROM archive WHERE (username = e'test_slave!#$%^*()`~+-;_=[]{}|\\\\\\\\') AND (server_host = 'pgsql.localhost') ORDER BY \""timestamp\"" ASC"" {} 6.332 0 """"
```
The `INSERT` query works correctly, and I can see the row in the database, however, the second query (`SELECT`) returns nothing. This is most likely due to overquoting of backslashes.",
638,https://api.github.com/repos/processone/ejabberd/issues/3073,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3073/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3073/comments,https://api.github.com/repos/processone/ejabberd/issues/3073/events,https://github.com/processone/ejabberd/issues/3073,514305690,MDU6SXNzdWU1MTQzMDU2OTA=,3073,Ejabberd bosh reports '400 Bad Request' with incorrect stanza format to the bosh client,"{'login': 'cmeng-git', 'id': 7959606, 'node_id': 'MDQ6VXNlcjc5NTk2MDY=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/7959606?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/cmeng-git', 'html_url': 'https://github.com/cmeng-git', 'followers_url': 'https://api.github.com/users/cmeng-git/followers', 'following_url': 'https://api.github.com/users/cmeng-git/following{/other_user}', 'gists_url': 'https://api.github.com/users/cmeng-git/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/cmeng-git/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/cmeng-git/subscriptions', 'organizations_url': 'https://api.github.com/users/cmeng-git/orgs', 'repos_url': 'https://api.github.com/users/cmeng-git/repos', 'events_url': 'https://api.github.com/users/cmeng-git/events{/privacy}', 'received_events_url': 'https://api.github.com/users/cmeng-git/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179679539, 'node_id': 'MDU6TGFiZWwxNzk2Nzk1Mzk=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:BOSH', 'name': 'Component:BOSH', 'color': 'bfd4f2', 'default': False, 'description': None}]",closed,False,,[],,1,2019-10-29T23:59:52Z,2019-11-05T15:08:56Z,2019-11-05T15:08:55Z,NONE,,,"## Environment
- ejabberd version: 18.09
- Erlang version: `erl +V`
- OS: Linux (Debian)
- Installed from: source | distro package | official deb/rpm | official binary installer | other
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
loglevel: 4
...
```
## Errors from error.log/crash.log
`2019-10-28 10:06:51.053 [debug] <0.7362.0>@mod_bosh:process:63 Bad Request: no data`
## Bug description
Please, give us a precise description (what does not work, what is expected, etc.)
On received a bad request from bosh client, found that ejabberd reports the error incorrectly i.e.
```
2019-10-28 11:14:19.049 32334-1522/org.atalk.android V/aTalk: [20365] org.igniterealtime.jbosh.BOSHClient.processExchange() Could not obtain response
org.igniterealtime.jbosh.BOSHException: Could not parse body:
400 Bad Request
```
it should be per
[17.2 Terminal Binding Conditions](https://xmpp.org/extensions/xep-0124.html#errorstatus-terminal) i.e.
``
Please see below link for more info
[Smack 4.4.0: Smack BOSH receives “400 Bad Request’ from server when sending large amount of data via mobile network ](https://discourse.igniterealtime.org/t/smack-4-4-0-smack-bosh-receives-400-bad-request-from-server-when-sending-large-amount-of-data-via-mobile-network/86481)
",
639,https://api.github.com/repos/processone/ejabberd/issues/3072,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3072/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3072/comments,https://api.github.com/repos/processone/ejabberd/issues/3072/events,https://github.com/processone/ejabberd/issues/3072,514128313,MDU6SXNzdWU1MTQxMjgzMTM=,3072,mod_vcard_sql: Escape 'family' field in SQL requests - Not compatible with MySQL ,"{'login': 'stefansieg', 'id': 8237336, 'node_id': 'MDQ6VXNlcjgyMzczMzY=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/8237336?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/stefansieg', 'html_url': 'https://github.com/stefansieg', 'followers_url': 'https://api.github.com/users/stefansieg/followers', 'following_url': 'https://api.github.com/users/stefansieg/following{/other_user}', 'gists_url': 'https://api.github.com/users/stefansieg/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/stefansieg/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/stefansieg/subscriptions', 'organizations_url': 'https://api.github.com/users/stefansieg/orgs', 'repos_url': 'https://api.github.com/users/stefansieg/repos', 'events_url': 'https://api.github.com/users/stefansieg/events{/privacy}', 'received_events_url': 'https://api.github.com/users/stefansieg/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179046635, 'node_id': 'MDU6TGFiZWwxNzkwNDY2MzU=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Databases', 'name': 'Component:Databases', 'color': 'fef2c0', 'default': False, 'description': None}, {'id': 179040989, 'node_id': 'MDU6TGFiZWwxNzkwNDA5ODk=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Bug', 'name': 'Kind:Bug', 'color': 'e11d21', 'default': False, 'description': None}]",closed,False,"{'login': 'zinid', 'id': 1095902, 'node_id': 'MDQ6VXNlcjEwOTU5MDI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1095902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/zinid', 'html_url': 'https://github.com/zinid', 'followers_url': 'https://api.github.com/users/zinid/followers', 'following_url': 'https://api.github.com/users/zinid/following{/other_user}', 'gists_url': 'https://api.github.com/users/zinid/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/zinid/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/zinid/subscriptions', 'organizations_url': 'https://api.github.com/users/zinid/orgs', 'repos_url': 'https://api.github.com/users/zinid/repos', 'events_url': 'https://api.github.com/users/zinid/events{/privacy}', 'received_events_url': 'https://api.github.com/users/zinid/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'zinid', 'id': 1095902, 'node_id': 'MDQ6VXNlcjEwOTU5MDI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1095902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/zinid', 'html_url': 'https://github.com/zinid', 'followers_url': 'https://api.github.com/users/zinid/followers', 'following_url': 'https://api.github.com/users/zinid/following{/other_user}', 'gists_url': 'https://api.github.com/users/zinid/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/zinid/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/zinid/subscriptions', 'organizations_url': 'https://api.github.com/users/zinid/orgs', 'repos_url': 'https://api.github.com/users/zinid/repos', 'events_url': 'https://api.github.com/users/zinid/events{/privacy}', 'received_events_url': 'https://api.github.com/users/zinid/received_events', 'type': 'User', 'site_admin': False}]",,0,2019-10-29T18:22:45Z,2019-10-30T06:11:41Z,2019-10-30T06:11:41Z,NONE,,,"## Environment
- ejabberd version: 19.09.41
## Errors from error.log/crash.log
2019-10-29 18:17:18.315 [error] <0.337.0>@ejabberd_sql:check_error:1202 SQL query 'UPDATE vcard_search SET username='atom', fn='', lfn='', ""family""='', lfamily='', given='', lgiven='', middle='', lmiddle='', nickname='', lnickname='', bday='', lbday='', ctry='', lctry='', locality='', llocality='', email='', lemail='', orgname='', lorgname='', orgunit='', lorgunit='' WHERE lusername='atom' AND server_host='dismail.de'' failed: ""#42000You have an error in your SQL syntax; ch
eck the manual that corresponds to your MariaDB server version for the right syntax to use near '\""family\""='', lfamily='', given='', lgiven='', middle='', lmiddle='', nickname=''' at line 1""
2019-10-29 18:17:18.316 [error] <0.337.0>@ejabberd_sql:check_error:1195 SQL query 'Q84181552' at {mod_vcard_sql,100} failed: ""#42000You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for
the right syntax to use near '\""family\""='', lfamily='', given='', lgiven='', middle='', lmiddle='', nickname=''' at line 1""
## Bug description
The change in:
https://github.com/processone/ejabberd/commit/f51ba687e213cdc4136138cba39bb8bc022097ab#diff-f9105f9777828be97abe3edb5766f2a7
seems not to be compatible with MySQL.
",
640,https://api.github.com/repos/processone/ejabberd/issues/3071,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3071/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3071/comments,https://api.github.com/repos/processone/ejabberd/issues/3071/events,https://github.com/processone/ejabberd/issues/3071,514033208,MDU6SXNzdWU1MTQwMzMyMDg=,3071,ejabberd rpm uninstall are do not set the ,"{'login': 'mklatsky', 'id': 122478, 'node_id': 'MDQ6VXNlcjEyMjQ3OA==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/122478?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mklatsky', 'html_url': 'https://github.com/mklatsky', 'followers_url': 'https://api.github.com/users/mklatsky/followers', 'following_url': 'https://api.github.com/users/mklatsky/following{/other_user}', 'gists_url': 'https://api.github.com/users/mklatsky/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mklatsky/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mklatsky/subscriptions', 'organizations_url': 'https://api.github.com/users/mklatsky/orgs', 'repos_url': 'https://api.github.com/users/mklatsky/repos', 'events_url': 'https://api.github.com/users/mklatsky/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mklatsky/received_events', 'type': 'User', 'site_admin': False}","[{'id': 231569227, 'node_id': 'MDU6TGFiZWwyMzE1NjkyMjc=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Installers', 'name': 'Component:Installers', 'color': 'fef2c0', 'default': False, 'description': None}]",open,False,,[],,0,2019-10-29T16:00:30Z,2019-10-29T18:37:28Z,,NONE,,,"## Environment
- ejabberd version: 19.09.1
- Erlang version: n/a
- OS: Linux (Centos 7.7.1908 COre)
- Installed from: official rpm (ejabberd-19.09.1-0.x86_64.rpm)
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
n/a
## Errors from error.log/crash.log
No errors
## Bug description
When I install ejabberd via standard commandline `rpm -ivh ejabberd-19.09.1-0.x86_64.rpm`, the following directories are created:
```
/opt/ejabberd-19.09.1
/opt/ejabberd
/opt/bitrock
```
Within the /opt/ejabberd directory are the conf, database and logs directories.
If I then remove the rpm (rpm -e ejabberd), the following errors occur:
```
warning: file /opt/ejabberd-19.09.1/database: remove failed: No such file or directory
warning: file /opt/ejabberd-19.09.1/conf/server.pem: remove failed: No such file or directory
warning: file /opt/ejabberd-19.09.1/conf/inetrc: remove failed: No such file or directory
warning: file /opt/ejabberd-19.09.1/conf/ejabberdctl.cfg: remove failed: No such file or directory
warning: file /opt/ejabberd-19.09.1/conf/ejabberd.yml: remove failed: No such file or directory
warning: file /opt/ejabberd-19.09.1/conf/dhparams.pem: remove failed: No such file or directory
warning: file /opt/ejabberd-19.09.1/conf/cacert.pem: remove failed: No such file or directory
warning: file /opt/ejabberd-19.09.1/conf: remove failed: No such file or directory
```
A) Should all directories including conf and database reside under /opt/ejabberd-19.09.1, or should they properly reside under /opt/ejabberd (thus, presumably, being upgrade safe, and being the homedir for the ejabberd user)?
B) The postinstall seems to be unaware of the correct locations of the conf and database directories.
",
641,https://api.github.com/repos/processone/ejabberd/issues/3070,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3070/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3070/comments,https://api.github.com/repos/processone/ejabberd/issues/3070/events,https://github.com/processone/ejabberd/issues/3070,513244968,MDU6SXNzdWU1MTMyNDQ5Njg=,3070,MySQL over SSL,"{'login': 'pacija', 'id': 14246467, 'node_id': 'MDQ6VXNlcjE0MjQ2NDY3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/14246467?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/pacija', 'html_url': 'https://github.com/pacija', 'followers_url': 'https://api.github.com/users/pacija/followers', 'following_url': 'https://api.github.com/users/pacija/following{/other_user}', 'gists_url': 'https://api.github.com/users/pacija/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/pacija/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/pacija/subscriptions', 'organizations_url': 'https://api.github.com/users/pacija/orgs', 'repos_url': 'https://api.github.com/users/pacija/repos', 'events_url': 'https://api.github.com/users/pacija/events{/privacy}', 'received_events_url': 'https://api.github.com/users/pacija/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",closed,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/40', 'html_url': 'https://github.com/processone/ejabberd/milestone/40', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/40/labels', 'id': 5218332, 'node_id': 'MDk6TWlsZXN0b25lNTIxODMzMg==', 'number': 40, 'title': 'ejabberd 20.03', 'description': 'https://www.process-one.net/blog/ejabberd-20-03/', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 20, 'state': 'closed', 'created_at': '2020-03-19T15:58:57Z', 'updated_at': '2020-04-29T09:42:17Z', 'due_on': '2020-03-25T07:00:00Z', 'closed_at': '2020-03-26T10:03:11Z'}",4,2019-10-28T11:22:57Z,2020-04-29T09:32:56Z,2020-04-02T13:35:05Z,NONE,,,"Hi,
any chance to get the possibility to connect ejabberd with MySQL over SSL?
I guess ejabberd config should get something like:
```
sql_type: mysql
sql_server: ""mysql.example.org""
host_config:
""example.org"":
sql_database: ""ejabberd""
sql_username: ""ejabberd""
sql_password: ""BlaBla""
sql_ssl: ""True""
sql_ssl_key: ""/path/to/client-privkey.pem""
sql_ssl_cert: ""/path/to/client-cert.pem""
sql_ssl_ca: ""/path/to/mysql-ca.pem""
```
",
642,https://api.github.com/repos/processone/ejabberd/issues/3069,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3069/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3069/comments,https://api.github.com/repos/processone/ejabberd/issues/3069/events,https://github.com/processone/ejabberd/pull/3069,512595486,MDExOlB1bGxSZXF1ZXN0MzMyNTc4MjAw,3069,Add option for JWT field name containing JID,"{'login': 'nosnilmot', 'id': 29980186, 'node_id': 'MDQ6VXNlcjI5OTgwMTg2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/29980186?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/nosnilmot', 'html_url': 'https://github.com/nosnilmot', 'followers_url': 'https://api.github.com/users/nosnilmot/followers', 'following_url': 'https://api.github.com/users/nosnilmot/following{/other_user}', 'gists_url': 'https://api.github.com/users/nosnilmot/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/nosnilmot/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/nosnilmot/subscriptions', 'organizations_url': 'https://api.github.com/users/nosnilmot/orgs', 'repos_url': 'https://api.github.com/users/nosnilmot/repos', 'events_url': 'https://api.github.com/users/nosnilmot/events{/privacy}', 'received_events_url': 'https://api.github.com/users/nosnilmot/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-10-25T15:59:52Z,2019-10-26T08:03:20Z,2019-10-26T08:03:20Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3069', 'html_url': 'https://github.com/processone/ejabberd/pull/3069', 'diff_url': 'https://github.com/processone/ejabberd/pull/3069.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3069.patch'}","Addresses this TODO:
TODO: auth0 username is defined in 'jid' field, but we should
allow customizing the name of the field containing the username
to adapt to custom claims.
",
643,https://api.github.com/repos/processone/ejabberd/issues/3068,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3068/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3068/comments,https://api.github.com/repos/processone/ejabberd/issues/3068/events,https://github.com/processone/ejabberd/issues/3068,511351878,MDU6SXNzdWU1MTEzNTE4Nzg=,3068,"Crash exception ""key_exists""","{'login': 'ruifil', 'id': 1698037, 'node_id': 'MDQ6VXNlcjE2OTgwMzc=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/1698037?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ruifil', 'html_url': 'https://github.com/ruifil', 'followers_url': 'https://api.github.com/users/ruifil/followers', 'following_url': 'https://api.github.com/users/ruifil/following{/other_user}', 'gists_url': 'https://api.github.com/users/ruifil/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ruifil/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ruifil/subscriptions', 'organizations_url': 'https://api.github.com/users/ruifil/orgs', 'repos_url': 'https://api.github.com/users/ruifil/repos', 'events_url': 'https://api.github.com/users/ruifil/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ruifil/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179679539, 'node_id': 'MDU6TGFiZWwxNzk2Nzk1Mzk=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:BOSH', 'name': 'Component:BOSH', 'color': 'bfd4f2', 'default': False, 'description': None}, {'id': 179040989, 'node_id': 'MDU6TGFiZWwxNzkwNDA5ODk=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Bug', 'name': 'Kind:Bug', 'color': 'e11d21', 'default': False, 'description': None}]",open,False,,[],,5,2019-10-23T14:12:29Z,2020-08-26T10:32:04Z,,NONE,,,"## Environment
- ejabberd version: 19.05
- Erlang version: Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.3.4
- OS: Red Hat Enterprise Linux Server release 7.6 (Maipo)
- Installed from: official rpm (https://www.process-one.net/downloads/downloads-action.php?file=/ejabberd/19.05/ejabberd-19.05-0.x86_64.rpm)
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
hosts:
- ""livechat.contact.private.com""
listen:
-
port: 5222
module: ejabberd_c2s
max_stanza_size: 65536
shaper: c2s_shaper
access: c2s
-
port: 5269
module: ejabberd_s2s_in
max_stanza_size: 131072
shaper: s2s_shaper
-
port: 5280
module: ejabberd_http
request_handlers:
""/http-bind"": mod_bosh
""/api"": mod_http_api
""/admin"": ejabberd_web_admin
captcha: false
auth_method: odbc
auth_use_cache: false
host_config:
""livechat.contact.private.com"":
auth_method:
- odbc
- anonymous
allow_multiple_connections: false
anonymous_protocol: sasl_anon
sql_type: mysql
sql_server: ""xxx.private.com""
sql_database: ""xxx""
sql_password: ""xxx""
sql_username: ""livechat""
sql_port: 3306
sql_keepalive_interval: 120
sql_pool_size: 10
shaper:
normal: 1000
fast: 50000
max_fsm_queue: 1000
acl:
admin:
user:
- ""virtua"": ""livechat.contact.private.com""
local:
user_regexp: """"
operators:
user_regexp:
- ""^op_""
access_rules:
max_user_sessions:
- 10: all
max_user_offline_messages:
- 5000: admin
- 100: all
local:
- allow: local
c2s:
- deny: blocked
- allow: all
c2s_shaper:
- allow: all
s2s_shaper:
- allow: fast
announce:
- allow: admin
configure:
- allow: admin
muc_admin:
- allow: admin
- allow: operators
muc:
- allow: all
pubsub_createnode:
- allow: local
register:
- allow: all
commands_admin_access: configure
api_permissions:
""console commands"":
from:
- ejabberd_ctl
who: all
what: ""*""
""admin access"":
who:
- access:
- allow:
- acl: loopback
- acl: admin
- oauth:
- scope: ""ejabberd:admin""
- access:
- allow:
- acl: loopback
- acl: admin
what:
- ""*""
- ""!stop""
- ""!start""
""public commands"":
who: all
what:
- ""status""
- ""connected_users_number""
- ""get_room_occupants""
- ""get_room_occupants_number""
language: ""en""
modules:
mod_adhoc: {}
mod_admin_extra: {}
mod_announce: # recommends mod_adhoc
access: announce
mod_blocking: {} # requires mod_privacy
mod_caps: {}
mod_client_state: {}
mod_configure: {} # requires mod_adhoc
mod_disco: {}
mod_http_api: {}
mod_bosh:
max_inactivity: 360
mod_last: {}
mod_muc:
host: ""conference.@HOST@""
access: muc
access_create: muc_admin
access_persistent: muc_admin
access_admin: muc_admin
max_user_conferences: 100
default_room_options:
persistent: true
max_users: 5000
anonymous: true
members_by_default: false
moderated: true
public: false
public_list: false
allow_change_subj: false
allow_query_users: false
allow_user_invites: false
allow_visitor_nickchange: false
allow_private_messages: false
allow_visitor_status: false
mod_muc_admin: {}
mod_offline:
access_max_user_messages: max_user_offline_messages
mod_ping: {}
mod_privacy: {}
mod_private:
db_type: odbc
mod_pubsub:
access_createnode: pubsub_createnode
ignore_pep_from_offline: true
last_item_cache: false
plugins:
- ""flat""
- ""hometree""
- ""pep"" # pep requires mod_caps
mod_register:
welcome_message:
subject: ""Welcome!""
body: |-
Hi.
Welcome to this XMPP server.
access: register
mod_roster: {}
mod_shared_roster: {}
mod_stats: {}
mod_time: {}
mod_vcard:
db_type: odbc
search: false
mod_version: {}
mod_mam:
db_type: odbc
default: always
cache_size: 10000
cache_life_time: 28800
allow_contrib_modules: true
disable_sasl_mechanisms: [""X-OAUTH2""]
```
## Errors from error.log/crash.log
```
2019-10-23 15:09:30 =ERROR REPORT====
** State machine <0.28701.150> terminating
** Last message in was {'$gen_sync_event',{<0.29285.151>,#Ref<0.248162263.1031536644.259362>},{body,<<>>,[{sid,<<""b384e5a1f3b6927fe837921e5facdad53439af5d"">>},{rid,141371452}],[{xmlstreamelement,{xmlel,<<""presence"">>,[{<<""xmlns"">>,<<""jabber:client"">>},{<<""to"">>,<<""op_1002275@livechat.contact.private.com"">>},{<<""id"">>,<<""8fad1c7b-8420-4330-93d6-83a4b5d46ad1:sendPresence"">>}],[{xmlel,<<""datalayer"">>,[],[{xmlcdata,<<""{\""private data.....""]}]}}"">>}]},{xmlel,<<""rqpriority"">>,[],[]},{xmlel,<<""rqdelay"">>,[],[{xmlcdata,<<""7"">>}]}]}}],5368}}
** When State == active
** Data == {state,<<""livechat.contact.private.com"">>,<<""b384e5a1f3b6927fe837921e5facdad53439af5d"">>,{{[],[]},0,unlimited},{{[],[]},0,unlimited},none,<0.27691.150>,<<""1.0"">>,#Ref<0.248162263.1035468802.82124>,undefined,20,360,141371450,<<>>,undefined,unlimited,{2,{141371449,{body,<<>>,[],[],0},nil,{141371450,{body,<<>>,[],[],0},nil,nil}}},{1,{141371452,{{<0.27275.151>,#Ref<0.248162263.1035468802.79519>},{body,<<>>,[{sid,<<""b384e5a1f3b6927fe837921e5facdad53439af5d"">>},{rid,141371452}],[{xmlstreamelement,{xmlel,<<""presence"">>,[{<<""xmlns"">>,<<""jabber:client"">>},{<<""to"">>,<<""op_1002275@livechat.contact.private.com"">>},{<<""id"">>,<<""8fad1c7b-8420-4330-93d6-83a4b5d46ad1:sendPresence"">>}],[{xmlel,<<""datalayer"">>,[],[{xmlcdata,<<""{private data......}"">>}]},{xmlel,<<""rqpriority"">>,[],[]},{xmlel,<<""rqdelay"">>,[],[{xmlcdata,<<""7"">>}]}]}}],5368}},nil,nil}},{{[],[]},0,1000},{{10,56,32,221},56412},2}
** Reason for termination =
** {{key_exists,141371452},[{gb_trees,insert_1,4,[{file,""gb_trees.erl""},{line,319}]},{gb_trees,insert,3,[{file,""gb_trees.erl""},{line,278}]},{ejabberd_bosh,active1,3,[{file,""src/ejabberd_bosh.erl""},{line,431}]},{p1_fsm,handle_msg,10,[{file,""src/p1_fsm.erl""},{line,582}]},{proc_lib,init_p_do_apply,3,[{file,""proc_lib.erl""},{line,249}]}]}
2019-10-23 15:09:30 =CRASH REPORT====
crasher:
initial call: ejabberd_bosh:init/1
pid: <0.28701.150>
registered_name: []
exception exit: {{{key_exists,141371452},[{gb_trees,insert_1,4,[{file,""gb_trees.erl""},{line,319}]},{gb_trees,insert,3,[{file,""gb_trees.erl""},{line,278}]},{ejabberd_bosh,active1,3,[{file,""src/ejabberd_bosh.erl""},{line,431}]},{p1_fsm,handle_msg,10,[{file,""src/p1_fsm.erl""},{line,582}]},{proc_lib,init_p_do_apply,3,[{file,""proc_lib.erl""},{line,249}]}]},[{p1_fsm,terminate,8,[{file,""src/p1_fsm.erl""},{line,760}]},{proc_lib,init_p_do_apply,3,[{file,""proc_lib.erl""},{line,249}]}]}
ancestors: ['mod_bosh_livechat.contact.private.com',ejabberd_gen_mod_sup,ejabberd_sup,<0.107.0>]
message_queue_len: 0
messages: []
links: [<0.515.0>]
dictionary: [{'$internal_queue_len',0}]
trap_exit: false
status: running
heap_size: 987
stack_size: 27
reductions: 9475
neighbours:
2019-10-23 15:09:30 =SUPERVISOR REPORT====
Supervisor: {local,'mod_bosh_livechat.contact.private.com'}
Context: child_terminated
Reason: {{key_exists,141371452},[{gb_trees,insert_1,4,[{file,""gb_trees.erl""},{line,319}]},{gb_trees,insert,3,[{file,""gb_trees.erl""},{line,278}]},{ejabberd_bosh,active1,3,[{file,""src/ejabberd_bosh.erl""},{line,431}]},{p1_fsm,handle_msg,10,[{file,""src/p1_fsm.erl""},{line,582}]},{proc_lib,init_p_do_apply,3,[{file,""proc_lib.erl""},{line,249}]}]}
Offender: [{pid,<0.28701.150>},{id,undefined},{mfargs,{ejabberd_bosh,start_link,undefined}},{restart_type,temporary},{shutdown,1000},{child_type,worker}]
2019-10-23 15:32:28 =ERROR REPORT====
** State machine <0.1824.155> terminating
** Last message in was {'$gen_sync_event',{<0.15658.155>,#Ref<0.248162263.1035730946.195232>},{body,<<>>,[{sid,<<""2eafd8986ba7e184b7977019df9bb77e08eb01d3"">>},{rid,3141748610}],[{xmlstreamelement,{xmlel,<<""message"">>,[{<<""xmlns"">>,<<""jabber:client"">>},{<<""type"">>,<<""chat"">>},{<<""to"">>,<<""op_1003816@livechat.contact.private.com"">>}],[{xmlel,<<""body"">>,[],[{xmlcdata,<<""Hi there. I brought the sage Barista pro last december and recently the temperature has significantly dropeed"">>}]},{xmlel,<<""requestId"">>,[],[{xmlcdata,<<""17143959"">>}]},{xmlel,<<""active"">>,[{<<""xmlns"">>,<<""http://jabber.org/protocol/chatstates"">>}],[]}]}}],429}}
** When State == active
** Data == {state,<<""livechat.contact.private.com"">>,<<""2eafd8986ba7e184b7977019df9bb77e08eb01d3"">>,{{[],[]},0,unlimited},{{[],[]},0,unlimited},none,<0.4256.155>,<<""1.0"">>,#Ref<0.248162263.1038352385.151295>,undefined,20,360,3141748609,<<>>,undefined,unlimited,{2,{3141748608,{body,<<>>,[],[],0},nil,{3141748609,{body,<<>>,[],[],0},nil,nil}}},{2,{3141748610,{{<0.14357.155>,#Ref<0.248162263.1035730946.189760>},{body,<<>>,[{sid,<<""2eafd8986ba7e184b7977019df9bb77e08eb01d3"">>},{rid,3141748610}],[{xmlstreamelement,{xmlel,<<""message"">>,[{<<""xmlns"">>,<<""jabber:client"">>},{<<""type"">>,<<""chat"">>},{<<""to"">>,<<""op_1003816@livechat.contact.private.com"">>}],[{xmlel,<<""body"">>,[],[{xmlcdata,<<""Hi there. I brought ...."">>}]},{xmlel,<<""requestId"">>,[],[{xmlcdata,<<""17143959"">>}]},{xmlel,<<""active"">>,[{<<""xmlns"">>,<<""http://jabber.org/protocol/chatstates"">>}],[]}]}}],429}},nil,{3141748611,{{<0.15527.155>,#Ref<0.248162263.1032060932.135017>},{body,<<>>,[{sid,<<""2eafd8986ba7e184b7977019df9bb77e08eb01d3"">>},{rid,3141748611}],[{xmlstreamelement,{xmlel,<<""message"">>,[{<<""xmlns"">>,<<""jabber:client"">>},{<<""type"">>,<<""chat"">>},{<<""to"">>,<<""op_1003816@livechat.contact.private.com"">>}],[{xmlel,<<""requestId"">>,[],[{xmlcdata,<<""17143959"">>}]},{xmlel,<<""composing"">>,[{<<""xmlns"">>,<<""http://jabber.org/protocol/chatstates"">>}],[]}]}},{xmlstreamelement,{xmlel,<<""message"">>,[{<<""xmlns"">>,<<""jabber:client"">>},{<<""type"">>,<<""chat"">>},{<<""to"">>,<<""op_1003816@livechat.contact.private.com"">>}],[{xmlel,<<""body"">>,[],[{xmlcdata,<<""i have tried..."">>}]},{xmlel,<<""requestId"">>,[],[{xmlcdata,<<""17143959"">>}]},{xmlel,<<""active"">>,[{<<""xmlns"">>,<<""http://jabber.org/protocol/chatstates"">>}],[]}]}}],589}},nil,nil}}},{{[],[]},0,1000},{{10,56,32,221},45062},2}
** Reason for termination =
** {{key_exists,3141748610},[{gb_trees,insert_1,4,[{file,""gb_trees.erl""},{line,319}]},{gb_trees,insert,3,[{file,""gb_trees.erl""},{line,278}]},{ejabberd_bosh,active1,3,[{file,""src/ejabberd_bosh.erl""},{line,501}]},{p1_fsm,handle_msg,10,[{file,""src/p1_fsm.erl""},{line,582}]},{proc_lib,init_p_do_apply,3,[{file,""proc_lib.erl""},{line,249}]}]}
2019-10-23 15:32:28 =CRASH REPORT====
crasher:
initial call: ejabberd_bosh:init/1
pid: <0.1824.155>
registered_name: []
exception exit: {{{key_exists,3141748610},[{gb_trees,insert_1,4,[{file,""gb_trees.erl""},{line,319}]},{gb_trees,insert,3,[{file,""gb_trees.erl""},{line,278}]},{ejabberd_bosh,active1,3,[{file,""src/ejabberd_bosh.erl""},{line,501}]},{p1_fsm,handle_msg,10,[{file,""src/p1_fsm.erl""},{line,582}]},{proc_lib,init_p_do_apply,3,[{file,""proc_lib.erl""},{line,249}]}]},[{p1_fsm,terminate,8,[{file,""src/p1_fsm.erl""},{line,760}]},{proc_lib,init_p_do_apply,3,[{file,""proc_lib.erl""},{line,249}]}]}
ancestors: ['mod_bosh_livechat.contact.private.com',ejabberd_gen_mod_sup,ejabberd_sup,<0.107.0>]
message_queue_len: 0
messages: []
links: [<0.515.0>]
dictionary: [{'$internal_queue_len',0}]
trap_exit: false
status: running
heap_size: 1598
stack_size: 27
reductions: 6568
neighbours:
2019-10-23 15:32:28 =SUPERVISOR REPORT====
Supervisor: {local,'mod_bosh_livechat.contact.private.com'}
Context: child_terminated
Reason: {{key_exists,3141748610},[{gb_trees,insert_1,4,[{file,""gb_trees.erl""},{line,319}]},{gb_trees,insert,3,[{file,""gb_trees.erl""},{line,278}]},{ejabberd_bosh,active1,3,[{file,""src/ejabberd_bosh.erl""},{line,501}]},{p1_fsm,handle_msg,10,[{file,""src/p1_fsm.erl""},{line,582}]},{proc_lib,init_p_do_apply,3,[{file,""proc_lib.erl""},{line,249}]}]}
Offender: [{pid,<0.1824.155>},{id,undefined},{mfargs,{ejabberd_bosh,start_link,undefined}},{restart_type,temporary},{shutdown,1000},{child_type,worker}]
```
## Bug description
Some messages are lost and some chat connection sometimes breaks.",
644,https://api.github.com/repos/processone/ejabberd/issues/3067,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3067/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3067/comments,https://api.github.com/repos/processone/ejabberd/issues/3067/events,https://github.com/processone/ejabberd/issues/3067,511148565,MDU6SXNzdWU1MTExNDg1NjU=,3067,Crash when using JWT as password,"{'login': 'sschimmel', 'id': 459456, 'node_id': 'MDQ6VXNlcjQ1OTQ1Ng==', 'avatar_url': 'https://avatars1.githubusercontent.com/u/459456?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/sschimmel', 'html_url': 'https://github.com/sschimmel', 'followers_url': 'https://api.github.com/users/sschimmel/followers', 'following_url': 'https://api.github.com/users/sschimmel/following{/other_user}', 'gists_url': 'https://api.github.com/users/sschimmel/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/sschimmel/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/sschimmel/subscriptions', 'organizations_url': 'https://api.github.com/users/sschimmel/orgs', 'repos_url': 'https://api.github.com/users/sschimmel/repos', 'events_url': 'https://api.github.com/users/sschimmel/events{/privacy}', 'received_events_url': 'https://api.github.com/users/sschimmel/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179040989, 'node_id': 'MDU6TGFiZWwxNzkwNDA5ODk=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Bug', 'name': 'Kind:Bug', 'color': 'e11d21', 'default': False, 'description': None}]",closed,False,"{'login': 'alexeyshch', 'id': 1354311, 'node_id': 'MDQ6VXNlcjEzNTQzMTE=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1354311?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/alexeyshch', 'html_url': 'https://github.com/alexeyshch', 'followers_url': 'https://api.github.com/users/alexeyshch/followers', 'following_url': 'https://api.github.com/users/alexeyshch/following{/other_user}', 'gists_url': 'https://api.github.com/users/alexeyshch/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/alexeyshch/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/alexeyshch/subscriptions', 'organizations_url': 'https://api.github.com/users/alexeyshch/orgs', 'repos_url': 'https://api.github.com/users/alexeyshch/repos', 'events_url': 'https://api.github.com/users/alexeyshch/events{/privacy}', 'received_events_url': 'https://api.github.com/users/alexeyshch/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'alexeyshch', 'id': 1354311, 'node_id': 'MDQ6VXNlcjEzNTQzMTE=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1354311?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/alexeyshch', 'html_url': 'https://github.com/alexeyshch', 'followers_url': 'https://api.github.com/users/alexeyshch/followers', 'following_url': 'https://api.github.com/users/alexeyshch/following{/other_user}', 'gists_url': 'https://api.github.com/users/alexeyshch/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/alexeyshch/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/alexeyshch/subscriptions', 'organizations_url': 'https://api.github.com/users/alexeyshch/orgs', 'repos_url': 'https://api.github.com/users/alexeyshch/repos', 'events_url': 'https://api.github.com/users/alexeyshch/events{/privacy}', 'received_events_url': 'https://api.github.com/users/alexeyshch/received_events', 'type': 'User', 'site_admin': False}]",,14,2019-10-23T08:02:40Z,2019-10-25T13:40:04Z,2019-10-25T13:40:04Z,NONE,,,"## Environment
- ejabberd version: 19.09
- Erlang version: `erl +V`
- OS: Linux (Ubuntu)
- Installed from: official binary installer
## Errors from error.log/crash.log
```
07:56:17.251 [info] (<0.544.0>) Accepted connection [::ffff:138.201.91.94]:36194 -> [::ffff:10.18.0.8]:5222
07:56:17.552 [error] gen_server <0.544.0> terminated with reason: no function clause matching jose_jws_alg_rsa_pkcs1_v1_5:verify({jose_jwk,{jose_jwk_set,[{jose_jwk,undefined,{jose_jwk_kty_rsa,{'RSAPrivateKey','two-prime',21742263746488030104405521343183166191161927668668832678963882533224849627713697096673808942396166632655001363829479887991333419338499736733930419606265074138668507628098162744273934555101659209242746136159013755169313875220443887183686817460947357037265862949520061234764593811698354537662381041160306313905660977482112950644760943819046932440697293474045016208686816396415168146427032289769084327339610569003142494746410319845820075666726582865656725406634768508632406115803852827347182888089585019913453855785437574949464529944685116786371925939171960320238722474399781172007509383004790996974864098331358310421957,...}},...}]},...}, <<""eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJqaWQiOiJTZWJhc3RpYWFuQGNoYXQuZGV2LnJlenpvbmF0aW9uLmFwcC..."">>, <<12,80,80,93,77,192,82,118,51,227,93,211,133,237,4,49,42,143,3,232,59,74,4,147,89,105,118,93,232,...>>, 'RS256') line 64
07:56:17.553 [error] CRASH REPORT Process <0.544.0> with 0 neighbours exited with reason: no function clause matching jose_jws_alg_rsa_pkcs1_v1_5:verify({jose_jwk,{jose_jwk_set,[{jose_jwk,undefined,{jose_jwk_kty_rsa,{'RSAPrivateKey','two-prime',21742263746488030104405521343183166191161927668668832678963882533224849627713697096673808942396166632655001363829479887991333419338499736733930419606265074138668507628098162744273934555101659209242746136159013755169313875220443887183686817460947357037265862949520061234764593811698354537662381041160306313905660977482112950644760943819046932440697293474045016208686816396415168146427032289769084327339610569003142494746410319845820075666726582865656725406634768508632406115803852827347182888089585019913453855785437574949464529944685116786371925939171960320238722474399781172007509383004790996974864098331358310421957,...}},...}]},...}, <<""eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJqaWQiOiJTZWJhc3RpYWFuQGNoYXQuZGV2LnJlenpvbmF0aW9uLmFwcC..."">>, <<12,80,80,93,77,192,82,118,51,227,93,211,133,237,4,49,42,143,3,232,59,74,4,147,89,105,118,93,232,...>>, 'RS256') line 64 in p1_server:terminate/7 line 878
07:56:17.554 [error] Supervisor ejabberd_c2s_sup had child undefined started with {ejabberd_c2s,start_link,undefined} at <0.544.0> exit with reason no function clause matching jose_jws_alg_rsa_pkcs1_v1_5:verify({jose_jwk,{jose_jwk_set,[{jose_jwk,undefined,{jose_jwk_kty_rsa,{'RSAPrivateKey','two-prime',21742263746488030104405521343183166191161927668668832678963882533224849627713697096673808942396166632655001363829479887991333419338499736733930419606265074138668507628098162744273934555101659209242746136159013755169313875220443887183686817460947357037265862949520061234764593811698354537662381041160306313905660977482112950644760943819046932440697293474045016208686816396415168146427032289769084327339610569003142494746410319845820075666726582865656725406634768508632406115803852827347182888089585019913453855785437574949464529944685116786371925939171960320238722474399781172007509383004790996974864098331358310421957,...}},...}]},...}, <<""eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJqaWQiOiJTZWJhc3RpYWFuQGNoYXQuZGV2LnJlenpvbmF0aW9uLmFwcC..."">>, <<12,80,80,93,77,192,82,118,51,227,93,211,133,237,4,49,42,143,3,232,59,74,4,147,89,105,118,93,232,...>>, 'RS256') line 64 in context child_terminated
```
## Bug description
I have ejabberd installed on a ubuntu server. When I use a regular password to login I can connect to the server and start messaging. I switched to JWT for passwords to integrate with an existing backend. When I use the JWT as a password I get the above error as console output when running `ejabberdctl live` and my client (conversejs.org) reports a connection error:
```
Connection failure
Sorry, we could not connect to the XMPP host with domain: ""XXX""
```
Do I need to install an extension / plugin? I didn't install one as I thought it's now integrated in ejabberd. I did enable JWT auth in the config as described in the documentation.
",
645,https://api.github.com/repos/processone/ejabberd/issues/3066,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3066/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3066/comments,https://api.github.com/repos/processone/ejabberd/issues/3066/events,https://github.com/processone/ejabberd/issues/3066,511029432,MDU6SXNzdWU1MTEwMjk0MzI=,3066,Can't edit users with non-latin characters,"{'login': 'aznvkz', 'id': 29034162, 'node_id': 'MDQ6VXNlcjI5MDM0MTYy', 'avatar_url': 'https://avatars0.githubusercontent.com/u/29034162?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aznvkz', 'html_url': 'https://github.com/aznvkz', 'followers_url': 'https://api.github.com/users/aznvkz/followers', 'following_url': 'https://api.github.com/users/aznvkz/following{/other_user}', 'gists_url': 'https://api.github.com/users/aznvkz/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aznvkz/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aznvkz/subscriptions', 'organizations_url': 'https://api.github.com/users/aznvkz/orgs', 'repos_url': 'https://api.github.com/users/aznvkz/repos', 'events_url': 'https://api.github.com/users/aznvkz/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aznvkz/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,"{'login': 'zinid', 'id': 1095902, 'node_id': 'MDQ6VXNlcjEwOTU5MDI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1095902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/zinid', 'html_url': 'https://github.com/zinid', 'followers_url': 'https://api.github.com/users/zinid/followers', 'following_url': 'https://api.github.com/users/zinid/following{/other_user}', 'gists_url': 'https://api.github.com/users/zinid/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/zinid/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/zinid/subscriptions', 'organizations_url': 'https://api.github.com/users/zinid/orgs', 'repos_url': 'https://api.github.com/users/zinid/repos', 'events_url': 'https://api.github.com/users/zinid/events{/privacy}', 'received_events_url': 'https://api.github.com/users/zinid/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'zinid', 'id': 1095902, 'node_id': 'MDQ6VXNlcjEwOTU5MDI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1095902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/zinid', 'html_url': 'https://github.com/zinid', 'followers_url': 'https://api.github.com/users/zinid/followers', 'following_url': 'https://api.github.com/users/zinid/following{/other_user}', 'gists_url': 'https://api.github.com/users/zinid/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/zinid/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/zinid/subscriptions', 'organizations_url': 'https://api.github.com/users/zinid/orgs', 'repos_url': 'https://api.github.com/users/zinid/repos', 'events_url': 'https://api.github.com/users/zinid/events{/privacy}', 'received_events_url': 'https://api.github.com/users/zinid/received_events', 'type': 'User', 'site_admin': False}]",,5,2019-10-23T02:18:10Z,2020-01-31T01:11:21Z,2019-11-05T14:51:38Z,NONE,,,"## Environment
- ejabberd version: 19.09
- Erlang version: Erlang (SMP,ASYNC_THREADS) (BEAM) emulator version 10.3
- OS: Windows Server 2019
- Installed from: official binary installer
## Bug description
When i've added a user with non-latin characters in the name, i can't edit it (or delete it) from web interface. Trying to click on user link in userlist (i.e. http://localhost:5280/admin/server/server/user/%D0%BF%D0%BE%D0%BB%D0%B8%D0%B3%D1%80%D0%B0%D1%84%D0%B8%D1%8F/) leads to ""connection reset"" in browser and nothing more happens.
",
646,https://api.github.com/repos/processone/ejabberd/issues/3065,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3065/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3065/comments,https://api.github.com/repos/processone/ejabberd/issues/3065/events,https://github.com/processone/ejabberd/issues/3065,509629086,MDU6SXNzdWU1MDk2MjkwODY=,3065,"Invalid value of option ldap_uids: expected map, got list instead","{'login': 'Bundesferkel', 'id': 40952528, 'node_id': 'MDQ6VXNlcjQwOTUyNTI4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/40952528?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Bundesferkel', 'html_url': 'https://github.com/Bundesferkel', 'followers_url': 'https://api.github.com/users/Bundesferkel/followers', 'following_url': 'https://api.github.com/users/Bundesferkel/following{/other_user}', 'gists_url': 'https://api.github.com/users/Bundesferkel/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Bundesferkel/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Bundesferkel/subscriptions', 'organizations_url': 'https://api.github.com/users/Bundesferkel/orgs', 'repos_url': 'https://api.github.com/users/Bundesferkel/repos', 'events_url': 'https://api.github.com/users/Bundesferkel/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Bundesferkel/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2019-10-20T18:01:44Z,2019-10-20T19:18:17Z,2019-10-20T18:23:52Z,NONE,,,"## Environment
- ejabberd version: 19.08, 19.09, 19.09.1
- Erlang version: Erlang (SMP,ASYNC_THREADS) (BEAM) emulator version 8.2.1
- OS: Linux (Debian)
- Installed from: official deb/rpm
## Configuration (only if needed):
```yaml
auth_method: ldap
ldap_servers:
- ""***1.***.*******-******.***""
- ""***2.***.*******-******.***""
ldap_encrypt: none
ldap_port: 389
ldap_rootdn: ""CN=****-**,OU=********,OU=********,DC=***,DC=*******-******,DC=***""
ldap_password: ""****************""
ldap_base: ""OU=********,DC=***,DC=*******-******,DC=***""
ldap_uids:
- ""sAMAccountName"": ""%u""
ldap_filter: ""(objectClass=organizationalPerson)""
```
## Errors from error.log/crash.log
2019-10-14 18:21:36.470 [critical] <0.107.0>@ejabberd_app:start:71 Failed to start ejabberd application: Invalid value of option ldap_uids: expected map, got list instead
## Bug description
Until (including) ejabberd 19.05 the usage of the server works like a charm. Only possibility to login is via Active Directory (Windows Server 2012 r2).
Starting with ejabberd 19.08 ejabberd isn't able to start anymore. I don't understand, what the problem could be. There's nothing changed in the LDAP credentials.
Are there any variables belonging to ldap changed, which are not documented in the empty config-master or faq/manual or is it just a bug?",
647,https://api.github.com/repos/processone/ejabberd/issues/3064,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3064/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3064/comments,https://api.github.com/repos/processone/ejabberd/issues/3064/events,https://github.com/processone/ejabberd/issues/3064,509122320,MDU6SXNzdWU1MDkxMjIzMjA=,3064,Duplicate PEP/PubSub Notifications,"{'login': 'Flowdalic', 'id': 432385, 'node_id': 'MDQ6VXNlcjQzMjM4NQ==', 'avatar_url': 'https://avatars1.githubusercontent.com/u/432385?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Flowdalic', 'html_url': 'https://github.com/Flowdalic', 'followers_url': 'https://api.github.com/users/Flowdalic/followers', 'following_url': 'https://api.github.com/users/Flowdalic/following{/other_user}', 'gists_url': 'https://api.github.com/users/Flowdalic/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Flowdalic/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Flowdalic/subscriptions', 'organizations_url': 'https://api.github.com/users/Flowdalic/orgs', 'repos_url': 'https://api.github.com/users/Flowdalic/repos', 'events_url': 'https://api.github.com/users/Flowdalic/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Flowdalic/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179680325, 'node_id': 'MDU6TGFiZWwxNzk2ODAzMjU=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:PEP', 'name': 'Component:PEP', 'color': 'fad8c7', 'default': False, 'description': None}, {'id': 179040989, 'node_id': 'MDU6TGFiZWwxNzkwNDA5ODk=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Bug', 'name': 'Kind:Bug', 'color': 'e11d21', 'default': False, 'description': None}]",open,False,,[],,0,2019-10-18T14:36:45Z,2019-10-21T11:38:32Z,,NONE,,,"## Environment
- ejabberd version: 18.09.01
- Erlang version: Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.1.1
- OS: Linux (Gentoo)
- Installed from: Gentoo overlay
## Bug description
ejabberd sends PEP notifications twice, when there should be only one.
The following is a (shortened) XMPP trace output obtained via Smack's integration test framework, running the `UserTuneIntegrationTest`:
```
Oct 18, 2019 4:23:59 PM org.igniterealtime.smack.inttest.SmackIntegrationTestFramework runConcreteTest
INFO: UserTuneIntegrationTest.test (Normal) Start
Connection 'one' publishes user tune
16:24:13 SENT (1):
Yes
686
8
Heart of the Sunrise
http://www.yesworld.com/lyrics/Fragile.html#9
Connection 'two' receives user tune notification
16:24:14 RECV (2):
Yes
686
8
Heart of the Sunrise
http://www.yesworld.com/lyrics/Fragile.html#9
Connection 'one' receives user tune self-notification
16:24:14 RECV (1):
Yes
686
8
Heart of the Sunrise
http://www.yesworld.com/lyrics/Fragile.html#9
PEP/PubSub service acks user tune publication
16:24:14 RECV (1):
Connection 'one' receives user tune notification *again*
16:24:14 RECV (1):
Yes
686
8
Heart of the Sunrise
http://www.yesworld.com/lyrics/Fragile.html#9
```
Full trace http://paste.debian.net/1108028/",
648,https://api.github.com/repos/processone/ejabberd/issues/3063,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3063/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3063/comments,https://api.github.com/repos/processone/ejabberd/issues/3063/events,https://github.com/processone/ejabberd/pull/3063,508779054,MDExOlB1bGxSZXF1ZXN0MzI5NTA3ODgz,3063,msgs: de: Fix comma setting,"{'login': 'lnjX', 'id': 13557034, 'node_id': 'MDQ6VXNlcjEzNTU3MDM0', 'avatar_url': 'https://avatars2.githubusercontent.com/u/13557034?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/lnjX', 'html_url': 'https://github.com/lnjX', 'followers_url': 'https://api.github.com/users/lnjX/followers', 'following_url': 'https://api.github.com/users/lnjX/following{/other_user}', 'gists_url': 'https://api.github.com/users/lnjX/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/lnjX/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/lnjX/subscriptions', 'organizations_url': 'https://api.github.com/users/lnjX/orgs', 'repos_url': 'https://api.github.com/users/lnjX/repos', 'events_url': 'https://api.github.com/users/lnjX/events{/privacy}', 'received_events_url': 'https://api.github.com/users/lnjX/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2019-10-17T23:56:33Z,2019-10-21T13:38:48Z,2019-10-21T08:14:53Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3063', 'html_url': 'https://github.com/processone/ejabberd/pull/3063', 'diff_url': 'https://github.com/processone/ejabberd/pull/3063.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3063.patch'}",,
649,https://api.github.com/repos/processone/ejabberd/issues/3062,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3062/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3062/comments,https://api.github.com/repos/processone/ejabberd/issues/3062/events,https://github.com/processone/ejabberd/issues/3062,506782844,MDU6SXNzdWU1MDY3ODI4NDQ=,3062,Get user group list,"{'login': 'laurohen', 'id': 30203949, 'node_id': 'MDQ6VXNlcjMwMjAzOTQ5', 'avatar_url': 'https://avatars2.githubusercontent.com/u/30203949?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/laurohen', 'html_url': 'https://github.com/laurohen', 'followers_url': 'https://api.github.com/users/laurohen/followers', 'following_url': 'https://api.github.com/users/laurohen/following{/other_user}', 'gists_url': 'https://api.github.com/users/laurohen/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/laurohen/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/laurohen/subscriptions', 'organizations_url': 'https://api.github.com/users/laurohen/orgs', 'repos_url': 'https://api.github.com/users/laurohen/repos', 'events_url': 'https://api.github.com/users/laurohen/events{/privacy}', 'received_events_url': 'https://api.github.com/users/laurohen/received_events', 'type': 'User', 'site_admin': False}","[{'id': 352233730, 'node_id': 'MDU6TGFiZWwzNTIyMzM3MzA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Question', 'name': 'Kind:Question', 'color': 'fef2c0', 'default': False, 'description': None}]",closed,False,,[],,1,2019-10-14T17:28:36Z,2019-10-15T15:24:24Z,2019-10-15T15:24:10Z,NONE,,,"Version: ejabberd-18.12.1
How can I get the list of rooms that a user is affiliated with?",
650,https://api.github.com/repos/processone/ejabberd/issues/3061,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3061/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3061/comments,https://api.github.com/repos/processone/ejabberd/issues/3061/events,https://github.com/processone/ejabberd/issues/3061,506775729,MDU6SXNzdWU1MDY3NzU3Mjk=,3061,get_room_affiliation error member/owner,"{'login': 'laurohen', 'id': 30203949, 'node_id': 'MDQ6VXNlcjMwMjAzOTQ5', 'avatar_url': 'https://avatars2.githubusercontent.com/u/30203949?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/laurohen', 'html_url': 'https://github.com/laurohen', 'followers_url': 'https://api.github.com/users/laurohen/followers', 'following_url': 'https://api.github.com/users/laurohen/following{/other_user}', 'gists_url': 'https://api.github.com/users/laurohen/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/laurohen/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/laurohen/subscriptions', 'organizations_url': 'https://api.github.com/users/laurohen/orgs', 'repos_url': 'https://api.github.com/users/laurohen/repos', 'events_url': 'https://api.github.com/users/laurohen/events{/privacy}', 'received_events_url': 'https://api.github.com/users/laurohen/received_events', 'type': 'User', 'site_admin': False}","[{'id': 352233730, 'node_id': 'MDU6TGFiZWwzNTIyMzM3MzA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Question', 'name': 'Kind:Question', 'color': 'fef2c0', 'default': False, 'description': None}]",closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]",,6,2019-10-14T17:12:22Z,2020-06-24T11:48:15Z,2020-06-24T11:48:15Z,NONE,,,"
version: ejabberd-18.12.1
I am trying to use get_room_affiliation to know affiliate status but any user I pass as API parameter returns affiliation = onwer.
How can I solve this?
",
651,https://api.github.com/repos/processone/ejabberd/issues/3060,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3060/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3060/comments,https://api.github.com/repos/processone/ejabberd/issues/3060/events,https://github.com/processone/ejabberd/issues/3060,506589437,MDU6SXNzdWU1MDY1ODk0Mzc=,3060,19.09 - SSL - certificate is signed by unknown CA,"{'login': 'gsohn', 'id': 10253280, 'node_id': 'MDQ6VXNlcjEwMjUzMjgw', 'avatar_url': 'https://avatars2.githubusercontent.com/u/10253280?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/gsohn', 'html_url': 'https://github.com/gsohn', 'followers_url': 'https://api.github.com/users/gsohn/followers', 'following_url': 'https://api.github.com/users/gsohn/following{/other_user}', 'gists_url': 'https://api.github.com/users/gsohn/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/gsohn/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/gsohn/subscriptions', 'organizations_url': 'https://api.github.com/users/gsohn/orgs', 'repos_url': 'https://api.github.com/users/gsohn/repos', 'events_url': 'https://api.github.com/users/gsohn/events{/privacy}', 'received_events_url': 'https://api.github.com/users/gsohn/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,9,2019-10-14T11:16:12Z,2019-10-14T13:34:20Z,2019-10-14T13:07:10Z,NONE,,,"## Environment
- ejabberd version: 19.09
- OS: Linux (Ubuntu 18)
- Installed from: docker
## Errors from error.log/crash.log
No errors
## Bug description
I'm using ACME to obtain SSL Certificates.
Certificates are successfully stored in a file but I have this warning then, and I can't use secured connection as certificates seems not to be valid :
ejabberd | 11:10:14.972 [warning] Invalid certificate in /home/ejabberd/database/ejabberd@c64359501291/acme/live/b07013295fdd23e09938c08c0d6366c8ac511b4b: at line 33: certificate is signed by unknown CA
ejabberd | 11:10:14.973 [info] Certificate for im.XXX.comv, conference.im.XXX.com and pubsub.im.XXX.com has been received, stored and loaded successfully.
Thanks for your help
",
652,https://api.github.com/repos/processone/ejabberd/issues/3059,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3059/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3059/comments,https://api.github.com/repos/processone/ejabberd/issues/3059/events,https://github.com/processone/ejabberd/issues/3059,506086164,MDU6SXNzdWU1MDYwODYxNjQ=,3059,Binary installer for armhf/arm64 missing for 19.09,"{'login': 'mbirth', 'id': 130302, 'node_id': 'MDQ6VXNlcjEzMDMwMg==', 'avatar_url': 'https://avatars1.githubusercontent.com/u/130302?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mbirth', 'html_url': 'https://github.com/mbirth', 'followers_url': 'https://api.github.com/users/mbirth/followers', 'following_url': 'https://api.github.com/users/mbirth/following{/other_user}', 'gists_url': 'https://api.github.com/users/mbirth/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mbirth/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mbirth/subscriptions', 'organizations_url': 'https://api.github.com/users/mbirth/orgs', 'repos_url': 'https://api.github.com/users/mbirth/repos', 'events_url': 'https://api.github.com/users/mbirth/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mbirth/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,11,2019-10-11T22:43:28Z,2019-11-05T14:44:22Z,2019-10-14T18:07:13Z,NONE,,,A few weeks have passed since the release and there's still no armhf or arm64 binary installer on the [download page](https://www.process-one.net/en/ejabberd/archive/).,
653,https://api.github.com/repos/processone/ejabberd/issues/3058,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3058/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3058/comments,https://api.github.com/repos/processone/ejabberd/issues/3058/events,https://github.com/processone/ejabberd/issues/3058,506082002,MDU6SXNzdWU1MDYwODIwMDI=,3058,HTTP upload broken on 19.08,"{'login': 'mbirth', 'id': 130302, 'node_id': 'MDQ6VXNlcjEzMDMwMg==', 'avatar_url': 'https://avatars1.githubusercontent.com/u/130302?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mbirth', 'html_url': 'https://github.com/mbirth', 'followers_url': 'https://api.github.com/users/mbirth/followers', 'following_url': 'https://api.github.com/users/mbirth/following{/other_user}', 'gists_url': 'https://api.github.com/users/mbirth/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mbirth/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mbirth/subscriptions', 'organizations_url': 'https://api.github.com/users/mbirth/orgs', 'repos_url': 'https://api.github.com/users/mbirth/repos', 'events_url': 'https://api.github.com/users/mbirth/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mbirth/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,8,2019-10-11T22:25:45Z,2019-10-14T19:32:02Z,2019-10-14T18:08:25Z,NONE,,,"## Environment
- ejabberd version: 19.08
- Erlang version: `Erlang (SMP,ASYNC_THREADS) (BEAM) emulator version 10.3.4`
- OS: Linux (Ubuntu 19.10 on arm64 on a Raspberry Pi 4)
- Installed from: official binary installer
## Errors from error.log/crash.log
No errors or crash in log.
## Bug description
Gajim gives: `[Errno 104] Connection reset by peer` when trying to use HTTP upload.
The exact same ejabberd.yml with ejabberd 19.05 makes HTTP uploads work again.
(On a sidenote, 19.05 and 19.08 arm64 seem to be compiled without thumbnail-support.)",
654,https://api.github.com/repos/processone/ejabberd/issues/3057,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3057/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3057/comments,https://api.github.com/repos/processone/ejabberd/issues/3057/events,https://github.com/processone/ejabberd/issues/3057,505415492,MDU6SXNzdWU1MDU0MTU0OTI=,3057,Apache reverse proxy - no access,"{'login': 'BlackWolfDEsign', 'id': 8538253, 'node_id': 'MDQ6VXNlcjg1MzgyNTM=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/8538253?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/BlackWolfDEsign', 'html_url': 'https://github.com/BlackWolfDEsign', 'followers_url': 'https://api.github.com/users/BlackWolfDEsign/followers', 'following_url': 'https://api.github.com/users/BlackWolfDEsign/following{/other_user}', 'gists_url': 'https://api.github.com/users/BlackWolfDEsign/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/BlackWolfDEsign/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/BlackWolfDEsign/subscriptions', 'organizations_url': 'https://api.github.com/users/BlackWolfDEsign/orgs', 'repos_url': 'https://api.github.com/users/BlackWolfDEsign/repos', 'events_url': 'https://api.github.com/users/BlackWolfDEsign/events{/privacy}', 'received_events_url': 'https://api.github.com/users/BlackWolfDEsign/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179053760, 'node_id': 'MDU6TGFiZWwxNzkwNTM3NjA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Note:Needs%20more%20info', 'name': 'Note:Needs more info', 'color': 'c7def8', 'default': False, 'description': None}]",closed,False,,[],,6,2019-10-10T17:42:47Z,2019-10-12T13:32:07Z,2019-10-12T13:31:58Z,NONE,,,"OS: Ubuntu 18.04
ejabberd: [docker image](https://hub.docker.com/r/ejabberd/ecs/)
error: Service Unavailable The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later.
Hi, on my server runs an apache2 as reverse proxy. I run several Docker instances and wanted to integrate them(ejabberd). I tried without apache-integration, no success. With reverse proxy, no success ... I think the config of vhosts is just wrong, or incomplete ... i tried all locations /ws, ...
```
ServerName chat.domain.de
ProxyPass / http://127.0.0.1:5280/
ProxyPassReverse / http://127.0.0.1:5280/
ProxyPass /admin http://127.0.0.1:5280/admin/
ProxyPassReverse /admin http://127.0.0.1:5280/admin/
#ProxyPass /upload http://127.0.0.1:5280/upload
#ProxyPassReverse /upload http://127.0.0.1:5280/upload
#ProxyPreserveHost On
#ProxyAddHeaders On
ProxyRequests Off
#RequestHeader set X-Forwarded-Proto ""http""
#RequestHeader set Host $http_host;
RequestHeader set X-Real-IP $remote_addr;
RequestHeader set X-Forwarded-For $proxy_add_x_forwarded_for;
#RequestHeader set X-Forwarded-Proto $scheme;
ServerName chat.domain.de
ProxyPass / http://127.0.0.1:5443/
ProxyPassReverse / http://127.0.0.1:5443/
ProxyPass /admin http://127.0.0.1:5443/admin/
ProxyPassReverse /admin http://127.0.0.1:5443/admin/
#ProxyPass /upload http://127.0.0.1:5443/upload
#ProxyPassReverse /upload http://127.0.0.1:5443/upload
ProxyRequests Off
#ProxyPreserveHost On
#ProxyAddHeaders On
#RequestHeader set X-Forwarded-Proto ""https""
SSLCertificateFile /etc/letsencrypt/live/chat.domain.de/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/chat.domain.de/privkey.pem
# If you plan to proxy to a HTTPS host:
SSLProxyEngine On
```
i changed the host to chat.domain.de in ejabberd.yml
edit: i tried also [datentraeger.li](https://blog.datentraeger.li/?p=2246)",
655,https://api.github.com/repos/processone/ejabberd/issues/3056,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3056/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3056/comments,https://api.github.com/repos/processone/ejabberd/issues/3056/events,https://github.com/processone/ejabberd/issues/3056,505076793,MDU6SXNzdWU1MDUwNzY3OTM=,3056,Request Headers Duplicating.,"{'login': 'shaggi7', 'id': 54536845, 'node_id': 'MDQ6VXNlcjU0NTM2ODQ1', 'avatar_url': 'https://avatars1.githubusercontent.com/u/54536845?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/shaggi7', 'html_url': 'https://github.com/shaggi7', 'followers_url': 'https://api.github.com/users/shaggi7/followers', 'following_url': 'https://api.github.com/users/shaggi7/following{/other_user}', 'gists_url': 'https://api.github.com/users/shaggi7/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/shaggi7/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/shaggi7/subscriptions', 'organizations_url': 'https://api.github.com/users/shaggi7/orgs', 'repos_url': 'https://api.github.com/users/shaggi7/repos', 'events_url': 'https://api.github.com/users/shaggi7/events{/privacy}', 'received_events_url': 'https://api.github.com/users/shaggi7/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,"{'login': 'prefiks', 'id': 61998, 'node_id': 'MDQ6VXNlcjYxOTk4', 'avatar_url': 'https://avatars0.githubusercontent.com/u/61998?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/prefiks', 'html_url': 'https://github.com/prefiks', 'followers_url': 'https://api.github.com/users/prefiks/followers', 'following_url': 'https://api.github.com/users/prefiks/following{/other_user}', 'gists_url': 'https://api.github.com/users/prefiks/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/prefiks/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/prefiks/subscriptions', 'organizations_url': 'https://api.github.com/users/prefiks/orgs', 'repos_url': 'https://api.github.com/users/prefiks/repos', 'events_url': 'https://api.github.com/users/prefiks/events{/privacy}', 'received_events_url': 'https://api.github.com/users/prefiks/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'prefiks', 'id': 61998, 'node_id': 'MDQ6VXNlcjYxOTk4', 'avatar_url': 'https://avatars0.githubusercontent.com/u/61998?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/prefiks', 'html_url': 'https://github.com/prefiks', 'followers_url': 'https://api.github.com/users/prefiks/followers', 'following_url': 'https://api.github.com/users/prefiks/following{/other_user}', 'gists_url': 'https://api.github.com/users/prefiks/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/prefiks/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/prefiks/subscriptions', 'organizations_url': 'https://api.github.com/users/prefiks/orgs', 'repos_url': 'https://api.github.com/users/prefiks/repos', 'events_url': 'https://api.github.com/users/prefiks/events{/privacy}', 'received_events_url': 'https://api.github.com/users/prefiks/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/39', 'html_url': 'https://github.com/processone/ejabberd/milestone/39', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/39/labels', 'id': 5116012, 'node_id': 'MDk6TWlsZXN0b25lNTExNjAxMg==', 'number': 39, 'title': 'ejabberd 20.02', 'description': '', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 10, 'state': 'closed', 'created_at': '2020-02-18T08:48:31Z', 'updated_at': '2020-02-26T13:07:59Z', 'due_on': '2020-02-26T08:00:00Z', 'closed_at': '2020-02-26T13:07:59Z'}",3,2019-10-10T07:00:23Z,2020-02-21T16:12:50Z,2020-02-21T11:19:22Z,NONE,,,"I have build a HTTP module in ejabberd.
I have mentioned the headers in the ejabberd.yml file.
I have tried two configurations:
Config 1:
```
listen:
-
port: 5222
ip: ""::""
module: ejabberd_c2s
max_stanza_size: 262144
shaper: c2s_shaper
access: c2s
starttls_required: true
-
port: 5269
ip: ""::""
module: ejabberd_s2s_in
max_stanza_size: 524288
-
port: 5443
ip: ""::""
module: ejabberd_http
tls: true
request_handlers:
/admin: ejabberd_web_admin
/api: mod_http_api
/bosh: mod_bosh
/captcha: ejabberd_captcha
/upload: mod_http_upload
/ws: ejabberd_http_ws
/oauth: ejabberd_oauth
custom_headers:
""Access-Control-Allow-Origin"": ""*""
""Access-Control-Allow-Methods"": ""OPTIONS, HEAD, GET, PUT""
""Access-Control-Allow-Headers"": ""Authorization, Content-Type""
""Access-Control-Allow-Credentials"": ""true""
-
port: 5280
ip: ""::""
module: ejabberd_http
request_handlers:
/admin: ejabberd_web_admin
/.well-known/acme-challenge: ejabberd_acme
/http-bind: mod_bosh
/upload: mod_http_upload
/users: mod_hello_world
custom_headers:
""Access-Control-Allow-Origin"": ""*""
""Access-Control-Allow-Methods"": ""OPTIONS, HEAD, GET, PUT""
""Access-Control-Allow-Headers"": ""Authorization, Content-Type""
""Access-Control-Allow-Credentials"": ""true""
```
Config 2:
```
listen:
-
port: 5222
ip: ""::""
module: ejabberd_c2s
max_stanza_size: 262144
shaper: c2s_shaper
access: c2s
starttls_required: true
-
port: 5269
ip: ""::""
module: ejabberd_s2s_in
max_stanza_size: 524288
-
port: 5443
ip: ""::""
module: ejabberd_http
tls: true
request_handlers:
/admin: ejabberd_web_admin
/api: mod_http_api
/bosh: mod_bosh
/captcha: ejabberd_captcha
/upload: mod_http_upload
/ws: ejabberd_http_ws
/oauth: ejabberd_oauth
custom_headers:
""Access-Control-Allow-Origin"": ""*""
""Access-Control-Allow-Methods"": ""OPTIONS, HEAD, GET, PUT""
""Access-Control-Allow-Headers"": ""Authorization, Content-Type""
""Access-Control-Allow-Credentials"": ""true""
-
port: 5280
ip: ""::""
module: ejabberd_http
request_handlers:
/admin: ejabberd_web_admin
/.well-known/acme-challenge: ejabberd_acme
/http-bind: mod_bosh
/upload: mod_http_upload
/users: mod_hello_world
custom_headers:
#""Access-Control-Allow-Origin"": ""*""
""Access-Control-Allow-Methods"": ""OPTIONS, HEAD, GET, PUT""
""Access-Control-Allow-Headers"": ""Authorization, Content-Type""
""Access-Control-Allow-Credentials"": ""true
```
Only the line ""Access-Control-Allow-Origin"" under port 5280 is commented in the Config 2.
I am using strophe which uses 'http-bind' for the connection in keepalive state.
The thing is that Config 1 is creating problem with login as it say
```
Access to XMLHttpRequest at 'http://192.168.4.69:5280/http-bind' from origin 'http://localhost:3000' has been blocked by CORS policy: The 'Access-Control-Allow-Origin' header contains multiple values '*, *', but only one is allowed.
```
But make http request successfully
And
Config 2 is making login succesfully but giving error in API request as follows
```
Access to fetch at 'http://192.168.4.69:5280/users/registered-users' from origin 'http://localhost:3000' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.
```
What could be the error.",
656,https://api.github.com/repos/processone/ejabberd/issues/3055,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3055/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3055/comments,https://api.github.com/repos/processone/ejabberd/issues/3055/events,https://github.com/processone/ejabberd/issues/3055,504538698,MDU6SXNzdWU1MDQ1Mzg2OTg=,3055,Ejabberd Stun failed compilation,"{'login': 'shaggi7', 'id': 54536845, 'node_id': 'MDQ6VXNlcjU0NTM2ODQ1', 'avatar_url': 'https://avatars1.githubusercontent.com/u/54536845?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/shaggi7', 'html_url': 'https://github.com/shaggi7', 'followers_url': 'https://api.github.com/users/shaggi7/followers', 'following_url': 'https://api.github.com/users/shaggi7/following{/other_user}', 'gists_url': 'https://api.github.com/users/shaggi7/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/shaggi7/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/shaggi7/subscriptions', 'organizations_url': 'https://api.github.com/users/shaggi7/orgs', 'repos_url': 'https://api.github.com/users/shaggi7/repos', 'events_url': 'https://api.github.com/users/shaggi7/events{/privacy}', 'received_events_url': 'https://api.github.com/users/shaggi7/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,9,2019-10-09T09:50:18Z,2019-12-06T11:21:42Z,2019-10-09T09:57:02Z,NONE,,,"Hi,
I was initiating video calls using ejabberd stun.
I am getting this error while starting ejabberd server
```
$ ejabberdctl live
--------------------------------------------------------------------
IMPORTANT: ejabberd is going to start in LIVE (interactive) mode.
All log messages will be shown in the command shell.
You can interact with the ejabberd node if you know how to use it.
Please be extremely cautious with your actions,
and exit immediately if you are not completely sure.
To exit this LIVE mode and stop ejabberd, press:
q(). and press the Enter key
--------------------------------------------------------------------
To bypass permanently this warning, add to ejabberdctl.cfg the line:
EJABBERD_BYPASS_WARNINGS=true
Press return to continue
Erlang/OTP 22 [erts-10.4.4] [source] [64-bit] [smp:12:12] [ds:12:12:10] [async-threads:1]
Eshell V10.4.4 (abort with ^G)
(ejabberd@localhost)1> 15:10:49.696 [notice] Changed loghwm of /usr/local/var/log/ejabberd/error.log to 100
15:10:49.696 [notice] Changed loghwm of /usr/local/var/log/ejabberd/ejabberd.log to 100
15:10:49.727 [info] Loading configuration from /usr/local/etc/ejabberd/ejabberd.yml
15:10:49.756 [critical] Listening module ejabberd_stun is not available: ejabberd is not compiled with STUN/TURN support
15:10:49.757 [critical] Failed to start ejabberd application: Exception occurred during configuration processing. This is most likely due to faulty/incompatible validator in third-party code. If you are not running any third-party code, please report the bug with ejabberd configuration file attached and the following stacktrace included:
** exception error: stun_not_compiled
in function ejabberd_stun:fail/0 (src/ejabberd_stun.erl, line 38)
in call from ejabberd_listener:validator/2 (src/ejabberd_listener.erl, line 521)
in call from ejabberd_listener:'-validator/0-fun-1-'/1 (src/ejabberd_listener.erl, line 515)
in call from yconf:'-list/2-fun-0-'/3 (src/yconf.erl, line 541)
in call from lists:mapfoldl/3 (lists.erl, line 1354)
in call from lists:mapfoldl/3 (lists.erl, line 1355)
in call from yconf:'-list/2-fun-1-'/3 (src/yconf.erl, line 537)
in call from yconf:'-and_then/2-fun-0-'/3 (src/yconf.erl, line 616)
```
My STUN configurations are like this.
```
-
port: 3478
transport: udp
module: ejabberd_stun
```
What could the problem.",
657,https://api.github.com/repos/processone/ejabberd/issues/3054,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3054/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3054/comments,https://api.github.com/repos/processone/ejabberd/issues/3054/events,https://github.com/processone/ejabberd/issues/3054,503140588,MDU6SXNzdWU1MDMxNDA1ODg=,3054,"Rest API ""AccessRules: Account does not have the right to perform the operation"" on /register","{'login': 'thiras', 'id': 5150432, 'node_id': 'MDQ6VXNlcjUxNTA0MzI=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/5150432?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/thiras', 'html_url': 'https://github.com/thiras', 'followers_url': 'https://api.github.com/users/thiras/followers', 'following_url': 'https://api.github.com/users/thiras/following{/other_user}', 'gists_url': 'https://api.github.com/users/thiras/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/thiras/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/thiras/subscriptions', 'organizations_url': 'https://api.github.com/users/thiras/orgs', 'repos_url': 'https://api.github.com/users/thiras/repos', 'events_url': 'https://api.github.com/users/thiras/events{/privacy}', 'received_events_url': 'https://api.github.com/users/thiras/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,7,2019-10-06T18:29:19Z,2019-10-16T10:20:54Z,2019-10-07T13:32:18Z,NONE,,,"## Environment
- ejabberd version: 19.09
- Erlang version: Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.3.4
- OS: Linux (Ubuntu)
- Installed from: official deb/rpm
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
hosts:
- ""chat.example.com""
- ""chat.example.net""
host_config:
""chat.example.com"":
auth_method: [sql]
host_config:
""chat.example.net"":
auth_method: [sql]
default_db: sql
new_sql_schema: true
sql_type: mysql
sql_server: ""localhost""
sql_database: ""ejab_db""
sql_username: ""ejab_usr""
sql_password: ""password""
loglevel: 4
log_rotate_size: 10485760
log_rotate_date: """"
log_rotate_count: 1
log_rate_limit: 100
certfiles:
- ""/opt/ejabberd/conf/fullchain.pem""
- ""/opt/ejabberd/conf/privkey.pem""
listen:
-
port: 5222
ip: ""::""
module: ejabberd_c2s
protocol_options:
- ""no_sslv2""
- ""no_sslv3""
- ""no_tlsv1""
- ""no_tlsv1_1""
ciphers: ""ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256""
max_stanza_size: 262144
shaper: c2s_shaper
access: c2s
starttls_required: true
dhfile: ""/opt/ejabberd/conf/new_dhparams.pem""
-
port: 5269
ip: ""::""
module: ejabberd_s2s_in
max_stanza_size: 524288
-
port: 5443
ip: ""::""
module: ejabberd_http
tls: true
request_handlers:
""/admin"": ejabberd_web_admin
""/api"": mod_http_api
""/bosh"": mod_bosh
""/captcha"": ejabberd_captcha
""/upload"": mod_http_upload
""/ws"": ejabberd_http_ws
""/oauth"": ejabberd_oauth
-
port: 5280
ip: ""::""
module: ejabberd_http
request_handlers:
""/admin"": ejabberd_web_admin
-
port: 1883
ip: ""::""
module: mod_mqtt
backlog: 1000
s2s_use_starttls: optional
acl:
local:
user_regexp: """"
loopback:
ip:
- 127.0.0.0/8
- ::1/128
- ::FFFF:127.0.0.1/128
admin:
user:
- ""admin@chat.example.com""
- ""admin@chat.example.net""
access_rules:
local:
allow: local
c2s:
deny: blocked
allow: all
announce:
allow: admin
configure:
allow: admin
muc_create:
allow: local
pubsub_createnode:
allow: local
trusted_network:
allow: loopback
api_permissions:
""console commands"":
from:
- ejabberd_ctl
who: all
what: ""*""
""admin access"":
who:
access:
allow:
acl: loopback
acl: admin
oauth:
scope: ""ejabberd:admin""
access:
allow:
acl: loopback
acl: admin
what:
- ""*""
- ""!stop""
- ""!start""
""public commands"":
who:
ip: 127.0.0.1/8
what:
- status
- connected_users_number
commands_admin_access:
- allow:
- user: ""admin@chat.example.net""
commands:
- add_commands: [user, admin, open]
# Tokens are valid for a year as default:
oauth_expire: 31536000
oauth_access: all
shaper:
normal: 1000
fast: 50000
shaper_rules:
max_user_sessions: 10
max_user_offline_messages:
5000: admin
100: all
c2s_shaper:
none: admin
normal: all
s2s_shaper: fast
max_fsm_queue: 10000
acme:
contact: ""mailto:admin@chat""
ca_url: ""https://acme-v01.api.letsencrypt.org""
modules:
mod_adhoc: {}
mod_admin_extra: {}
mod_announce:
access: announce
mod_avatar: {}
mod_blocking: {}
mod_bosh: {}
mod_caps: {}
mod_carboncopy: {}
mod_client_state: {}
mod_configure: {}
mod_disco: {}
mod_fail2ban: {}
mod_http_api: {}
mod_http_upload:
put_url: https://@HOST@:5443/upload
mod_last: {}
mod_mam:
db_type: sql
assume_mam_usage: true
default: always
mod_mqtt: {}
mod_muc:
access:
- allow
access_admin:
- allow: admin
access_create: muc_create
access_persistent: muc_create
access_mam:
- allow
default_room_options:
allow_subscription: true # enable MucSub
mam: false
mod_muc_admin: {}
mod_offline:
access_max_user_messages: max_user_offline_messages
mod_ping: {}
mod_privacy: {}
mod_private: {}
mod_proxy65:
access: local
max_connections: 5
mod_pubsub:
access_createnode: pubsub_createnode
plugins:
- flat
- pep
force_node_config:
storage:bookmarks:
access_model: whitelist
mod_push: {}
mod_push_keepalive: {}
mod_register:
ip_access: trusted_network
mod_roster:
versioning: true
mod_s2s_dialback: {}
mod_shared_roster: {}
mod_stream_mgmt:
resend_on_timeout: if_offline
mod_vcard: {}
mod_vcard_xupdate: {}
mod_version:
show_os: false
```
## Errors from error.log/crash.log
No errors
## Bug description
I've created token with ejabberd:admin scope through command line interface. Here is my request;
```
POST /api/register HTTP/1.1
Host: chat.example.net:5443
Content-Type: application/json
X-Admin: true
Authorization: Bearer TOKEN
cache-control: no-cache
Postman-Token: e5cf2666-dcca-4391-8f2c-1a6a9d6478d8
{
""user"": ""apiusertest"",
""host"": ""chat.example.net"",
""password"": ""789123""
}
```
With this request I get;
```
{""status"":""error"",""code"":32,""message"":""AccessRules: Account does not have the right to perform the operation.""}
```",
658,https://api.github.com/repos/processone/ejabberd/issues/3053,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3053/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3053/comments,https://api.github.com/repos/processone/ejabberd/issues/3053/events,https://github.com/processone/ejabberd/issues/3053,503117820,MDU6SXNzdWU1MDMxMTc4MjA=,3053,captcha_url or captcha_host,"{'login': 'xi1976github', 'id': 23615871, 'node_id': 'MDQ6VXNlcjIzNjE1ODcx', 'avatar_url': 'https://avatars1.githubusercontent.com/u/23615871?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/xi1976github', 'html_url': 'https://github.com/xi1976github', 'followers_url': 'https://api.github.com/users/xi1976github/followers', 'following_url': 'https://api.github.com/users/xi1976github/following{/other_user}', 'gists_url': 'https://api.github.com/users/xi1976github/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/xi1976github/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/xi1976github/subscriptions', 'organizations_url': 'https://api.github.com/users/xi1976github/orgs', 'repos_url': 'https://api.github.com/users/xi1976github/repos', 'events_url': 'https://api.github.com/users/xi1976github/events{/privacy}', 'received_events_url': 'https://api.github.com/users/xi1976github/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,4,2019-10-06T15:37:19Z,2019-10-06T16:39:34Z,2019-10-06T16:39:34Z,NONE,,,"## Environment
- ejabberd version: 19.09-1
- Erlang version: `erl +V` 10.5
- OS: Arch
- Installed from: pacman
## Bug description
when using
captcha_url in ejabberd.yml then captcha is not created/displayed
when using
captcha_host then captcha is working, but in the logfile it says that captcha_host
is deprecated and captcha_url is to be used
",
659,https://api.github.com/repos/processone/ejabberd/issues/3052,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3052/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3052/comments,https://api.github.com/repos/processone/ejabberd/issues/3052/events,https://github.com/processone/ejabberd/issues/3052,503111594,MDU6SXNzdWU1MDMxMTE1OTQ=,3052,Constant Erlang crashing,"{'login': 'mkl262', 'id': 8472607, 'node_id': 'MDQ6VXNlcjg0NzI2MDc=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/8472607?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mkl262', 'html_url': 'https://github.com/mkl262', 'followers_url': 'https://api.github.com/users/mkl262/followers', 'following_url': 'https://api.github.com/users/mkl262/following{/other_user}', 'gists_url': 'https://api.github.com/users/mkl262/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mkl262/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mkl262/subscriptions', 'organizations_url': 'https://api.github.com/users/mkl262/orgs', 'repos_url': 'https://api.github.com/users/mkl262/repos', 'events_url': 'https://api.github.com/users/mkl262/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mkl262/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2019-10-06T14:56:13Z,2019-10-07T11:16:50Z,2019-10-06T15:07:48Z,NONE,,,"## Environment
- ejabberd version: 19.02
- Erlang version: `Erlang (SMP,ASYNC_THREADS) (BEAM) emulator version 8.2.1`
- OS: Linux Debian Stretch
- Installed from: official binary installer
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
language: ""en""
hosts:
- ""somedomain.com""
loglevel: 4
log_rotate_size: 10485760
log_rotate_date: """"
log_rotate_count: 1
log_rate_limit: 1000
certfiles:
- ""/opt/ejabberd/conf/domain.pem""
ca_file: ""/opt/ejabberd/conf/cacert.pem""
sql_type: mysql
sql_server: ""db.local""
sql_database: ""ejabberd""
sql_username: ""ejabberd""
sql_password: ""password""
sql_port: 3306
default_db: sql
listen:
-
port: 5222
ip: ""::""
module: ejabberd_c2s
protocol_options:
- ""no_sslv2""
- ""no_sslv3""
- ""no_tlsv1""
- ""no_tlsv1_1""
ciphers: ""ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS""
starttls: true
starttls_required: false
tls_compression: false
max_stanza_size: 262144
shaper: c2s_shaper
access: c2s
-
port: 5269
ip: ""::""
module: ejabberd_s2s_in
max_stanza_size: 524288
-
port: 5443
ip: ""::""
module: ejabberd_http
request_handlers:
""/api"": mod_http_api
""/bosh"": mod_bosh
""/upload"": mod_http_upload
""/ws"": ejabberd_http_ws
""/oauth"": ejabberd_oauth
web_admin: true
captcha: false
tls: false
-
port: 5280
ip: ""::""
module: ejabberd_http
request_handlers:
""/api"": mod_http_api
web_admin: true
captcha: false
-
port: 1883
ip: ""::""
module: mod_mqtt
backlog: 1000
s2s_use_starttls: optional
acl:
local:
user_regexp: """"
loopback:
ip:
- ""127.0.0.0/8""
- ""::1/128""
- ""::FFFF:127.0.0.1/128""
admin:
user:
- ""admin@somedomain.com""
access_rules:
local:
- allow: local
c2s:
- deny: blocked
- allow
announce:
- allow: admin
configure:
- allow: admin
muc_create:
- allow: local
pubsub_createnode:
- allow: local
register:
- allow
trusted_network:
- allow: loopback
api_permissions:
""console commands"":
from:
- ejabberd_ctl
who: all
what: ""*""
""admin access"":
who:
- ip: ""10.5.5.0/24""
- access:
- allow:
- acl: loopback
- acl: admin
- oauth:
- scope: ""ejabberd:admin""
- access:
- allow:
- acl: loopback
- acl: admin
what:
- ""*""
- ""!stop""
- ""!start""
""public commands"":
who:
- ip: ""127.0.0.1/8""
what:
- ""status""
- ""connected_users_number""
shaper:
normal: 1000
fast: 50000
shaper_rules:
max_user_sessions: 10
max_user_offline_messages:
- 5000: admin
- 100
c2s_shaper:
- none: admin
- normal
s2s_shaper: fast
max_fsm_queue: 10000
acme:
contact: ""mailto:admin@somedomain.com""
ca_url: ""https://acme-v01.api.letsencrypt.org""
modules:
mod_adhoc: {}
mod_admin_extra: {}
mod_announce:
access: announce
mod_avatar: {}
mod_blocking: {}
mod_bosh: {}
mod_caps: {}
mod_carboncopy: {}
mod_client_state: {}
mod_configure: {}
mod_disco: {}
mod_http_api: {}
mod_http_upload:
put_url: ""http://xmpp.somedomain.com:5443/upload""
docroot: ""/mnt/nfs/storage/files""
max_size: 10485760
mod_last: {}
mod_mam:
db_type: sql
assume_mam_usage: true
default: always
mod_mqtt: {}
mod_muc:
access:
- allow
access_admin:
- allow: admin
access_create: muc_create
access_persistent: muc_create
default_room_options:
allow_user_invites: false
allow_subscription: true
allow_change_subj: false
allow_query_users: true
allow_private_messages: true
mam: true
max_users: 1000
members_by_default: true
members_only: false
logging: true
persistent: true
anonymous: false
public: false
history_size: 0
max_users: 1000
max_user_conferences: 500
mod_muc_admin: {}
mod_offline:
access_max_user_messages: max_user_offline_messages
mod_ping:
send_pings: true
mod_privacy: {}
mod_private: {}
mod_proxy65:
access: local
max_connections: 5
mod_pubsub:
access_createnode: pubsub_createnode
ignore_pep_from_offline: true
last_item_cache: false
max_items_node: 1000
plugins:
- ""flat""
- ""pep""
force_node_config:
""eu.siacs.conversations.axolotl.*"":
access_model: whitelist
""storage:bookmarks"":
access_model: whitelist
mod_push: {}
mod_push_keepalive: {}
mod_register:
ip_access: trusted_network
mod_roster:
versioning: true
db_type: sql
mod_s2s_dialback: {}
mod_shared_roster: {}
mod_stream_mgmt:
resend_on_timeout: true
resume_timeout: 30
mod_vcard: {}
mod_vcard_xupdate: {}
mod_version:
show_os: false
...
```
## Errors from error.log/crash.log
No errors
## Bug description
I have 2 nodes in a cluster that hosts a single host (""somedomain.com"").
Both nodes are working correctly and accepting connections without a problem, but the second node constantly generates erlang crash reports (3 reports every 10 seconds).
There are no errors or warnings in the logs.
please see attached dumps:
[crash_dumps.tar.gz](https://github.com/processone/ejabberd/files/3694514/crash_dumps.tar.gz)
",
660,https://api.github.com/repos/processone/ejabberd/issues/3051,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3051/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3051/comments,https://api.github.com/repos/processone/ejabberd/issues/3051/events,https://github.com/processone/ejabberd/issues/3051,502258766,MDU6SXNzdWU1MDIyNTg3NjY=,3051,Failed to load NIF on erlang OTP 21,"{'login': 'sujankumar4593', 'id': 8556194, 'node_id': 'MDQ6VXNlcjg1NTYxOTQ=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/8556194?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/sujankumar4593', 'html_url': 'https://github.com/sujankumar4593', 'followers_url': 'https://api.github.com/users/sujankumar4593/followers', 'following_url': 'https://api.github.com/users/sujankumar4593/following{/other_user}', 'gists_url': 'https://api.github.com/users/sujankumar4593/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/sujankumar4593/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/sujankumar4593/subscriptions', 'organizations_url': 'https://api.github.com/users/sujankumar4593/orgs', 'repos_url': 'https://api.github.com/users/sujankumar4593/repos', 'events_url': 'https://api.github.com/users/sujankumar4593/events{/privacy}', 'received_events_url': 'https://api.github.com/users/sujankumar4593/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2019-10-03T19:40:10Z,2019-10-03T21:48:33Z,2019-10-03T21:47:26Z,NONE,,,"## Environment
- ejabberd version: 19.05
- Erlang version: `21`
- OS: Linux (Debian)
- Installed from: source | distro package | official deb/rpm | official binary installer | other
## Bug description
I am getting the following error when adding ssl to the ejabberd with erlang otp version 21
LOGS
```
(ejabberd@localhost)1> 19:34:05.531 [notice] Changed loghwm of /opt/ejabberd/var/log/ejabberd/error.log to 1000
19:34:05.531 [notice] Changed loghwm of /opt/ejabberd/var/log/ejabberd/ejabberd.log to 1000
19:34:05.582 [error] CRASH REPORT Process <0.179.0> with 0 neighbours crashed with reason: bad argument in call to erl_ddll:format_error_int({load_failed,""Failed to load NIF library /opt/ejabberd/lib/fast_tls-1.1.1/priv/lib/fast_tls: 'li...""}) in erl_ddll:format_error/1 line 239
19:34:05.583 [error] Supervisor fast_tls_sup had child fast_tls started with fast_tls:start_link() at undefined exit with reason bad argument in call to erl_ddll:format_error_int({load_failed,""Failed to load NIF library /opt/ejabberd/lib/fast_tls-1.1.1/priv/lib/fast_tls: 'li...""}) in erl_ddll:format_error/1 line 239 in context start_error
19:34:05.583 [error] CRASH REPORT Process <0.176.0> with 0 neighbours exited with reason: {{shutdown,{failed_to_start_child,fast_tls,{badarg,[{erl_ddll,format_error_int,[{load_failed,""Failed to load NIF library /opt/ejabberd/lib/fast_tls-1.1.1/priv/lib/fast_tls: 'libssl.so.1.0.0: cannot open shared object file: No such file or directory'""}],[]},{erl_ddll,format_error,1,[{file,""erl_ddll.erl""},{line,239}]},{fast_tls,load_nif,1,[{file,""src/fast_tls.erl""},{line,476}]},{fast_tls,init,1,[{file,""src/fast_tls.erl""},{line,90}]},{gen_server,init_it,2,[{file,""gen_server.erl""},{line,374}]},...]}}},...} in application_master:init/4 line 138
19:34:05.583 [info] Application fast_tls exited with reason: {{shutdown,{failed_to_start_child,fast_tls,{badarg,[{erl_ddll,format_error_int,[{load_failed,""Failed to load NIF library /opt/ejabberd/lib/fast_tls-1.1.1/priv/lib/fast_tls: 'libssl.so.1.0.0: cannot open shared object file: No such file or directory'""}],[]},{erl_ddll,format_error,1,[{file,""erl_ddll.erl""},{line,239}]},{fast_tls,load_nif,1,[{file,""src/fast_tls.erl""},{line,476}]},{fast_tls,init,1,[{file,""src/fast_tls.erl""},{line,90}]},{gen_server,init_it,2,[{file,""gen_server.erl""},{line,374}]},...]}}},...}
19:34:05.645 [error] CRASH REPORT Process <0.200.0> with 0 neighbours crashed with reason: bad argument in call to erl_ddll:format_error_int({load_failed,""Failed to load NIF library /opt/ejabberd/lib/fast_tls-1.1.1/priv/lib/fast_tls: 'li...""}) in erl_ddll:format_error/1 line 239
19:34:05.646 [error] Supervisor fast_tls_sup had child fast_tls started with fast_tls:start_link() at undefined exit with reason bad argument in call to erl_ddll:format_error_int({load_failed,""Failed to load NIF library /opt/ejabberd/lib/fast_tls-1.1.1/priv/lib/fast_tls: 'li...""}) in erl_ddll:format_error/1 line 239 in context start_error
19:34:05.646 [error] CRASH REPORT Process <0.197.0> with 0 neighbours exited with reason: {{shutdown,{failed_to_start_child,fast_tls,{badarg,[{erl_ddll,format_error_int,[{load_failed,""Failed to load NIF library /opt/ejabberd/lib/fast_tls-1.1.1/priv/lib/fast_tls: 'libssl.so.1.0.0: cannot open shared object file: No such file or directory'""}],[]},{erl_ddll,format_error,1,[{file,""erl_ddll.erl""},{line,239}]},{fast_tls,load_nif,1,[{file,""src/fast_tls.erl""},{line,476}]},{fast_tls,init,1,[{file,""src/fast_tls.erl""},{line,90}]},{gen_server,init_it,2,[{file,""gen_server.erl""},{line,374}]},...]}}},...} in application_master:init/4 line 138
19:34:05.646 [info] Application fast_tls exited with reason: {{shutdown,{failed_to_start_child,fast_tls,{badarg,[{erl_ddll,format_error_int,[{load_failed,""Failed to load NIF library /opt/ejabberd/lib/fast_tls-1.1.1/priv/lib/fast_tls: 'libssl.so.1.0.0: cannot open shared object file: No such file or directory'""}],[]},{erl_ddll,format_error,1,[{file,""erl_ddll.erl""},{line,239}]},{fast_tls,load_nif,1,[{file,""src/fast_tls.erl""},{line,476}]},{fast_tls,init,1,[{file,""src/fast_tls.erl""},{line,90}]},{gen_server,init_it,2,[{file,""gen_server.erl""},{line,374}]},...]}}},...}
19:34:05.647 [error] CRASH REPORT Process <0.186.0> with 0 neighbours exited with reason: {{fast_tls,{{shutdown,{failed_to_start_child,fast_tls,{badarg,[{erl_ddll,format_error_int,[{load_failed,""Failed to load NIF library /opt/ejabberd/lib/fast_tls-1.1.1/priv/lib/fast_tls: 'libssl.so.1.0.0: cannot open shared object file: No such file or directory'""}],[]},{erl_ddll,format_error,1,[{file,""erl_ddll.erl""},{line,239}]},{fast_tls,load_nif,1,[{file,""src/fast_tls.erl""},{line,476}]},{fast_tls,init,1,[{file,""src/fast_tls.erl""},{line,90}]},{gen_server,init_it,2,[{file,""gen_server.erl""},{...}]},...]}}},...}},...} in application_master:init/4 line 138
19:34:05.647 [info] Application xmpp exited with reason: {{fast_tls,{{shutdown,{failed_to_start_child,fast_tls,{badarg,[{erl_ddll,format_error_int,[{load_failed,""Failed to load NIF library /opt/ejabberd/lib/fast_tls-1.1.1/priv/lib/fast_tls: 'libssl.so.1.0.0: cannot open shared object file: No such file or directory'""}],[]},{erl_ddll,format_error,1,[{file,""erl_ddll.erl""},{line,239}]},{fast_tls,load_nif,1,[{file,""src/fast_tls.erl""},{line,476}]},{fast_tls,init,1,[{file,""src/fast_tls.erl""},{line,90}]},{gen_server,init_it,2,[{file,""gen_server.erl""},{...}]},...]}}},...}},...}
```",
661,https://api.github.com/repos/processone/ejabberd/issues/3050,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3050/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3050/comments,https://api.github.com/repos/processone/ejabberd/issues/3050/events,https://github.com/processone/ejabberd/issues/3050,502133661,MDU6SXNzdWU1MDIxMzM2NjE=,3050,Webadmin 404 error in 19.09,"{'login': 'anyuta1166', 'id': 726409, 'node_id': 'MDQ6VXNlcjcyNjQwOQ==', 'avatar_url': 'https://avatars1.githubusercontent.com/u/726409?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/anyuta1166', 'html_url': 'https://github.com/anyuta1166', 'followers_url': 'https://api.github.com/users/anyuta1166/followers', 'following_url': 'https://api.github.com/users/anyuta1166/following{/other_user}', 'gists_url': 'https://api.github.com/users/anyuta1166/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/anyuta1166/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/anyuta1166/subscriptions', 'organizations_url': 'https://api.github.com/users/anyuta1166/orgs', 'repos_url': 'https://api.github.com/users/anyuta1166/repos', 'events_url': 'https://api.github.com/users/anyuta1166/events{/privacy}', 'received_events_url': 'https://api.github.com/users/anyuta1166/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179040989, 'node_id': 'MDU6TGFiZWwxNzkwNDA5ODk=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Bug', 'name': 'Kind:Bug', 'color': 'e11d21', 'default': False, 'description': None}]",closed,False,,[],,6,2019-10-03T15:21:46Z,2019-10-09T09:02:02Z,2019-10-09T09:02:01Z,NONE,,,"## Environment
- ejabberd version: 19.09
- Erlang version: `Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.4.4`
- OS: Linux (Gentoo)
- Installed from: other
## Configuration
```yaml
hosts:
- ""example.net""
listen:
...
-
request_handlers:
""/admin"": ejabberd_web_admin
port: 5281
ip: ""::""
module: ejabberd_http
tls: true
protocol_options:
- ""no_sslv3""
- ""no_tlsv1""
- ""cipher_server_preference""
- ""no_compression""
dhfile: ""/etc/ssl/ejabberd/dhparams.pem""
ciphers: ""ECDH:DH:!3DES:!aNULL:!eNULL:!MEDIUM@STRENGTH""
...
```
## Errors from error.log/crash.log
No errors
## Bug description
This seems to be related to #2989, but the conversation is closed there, so I open a new issue.
Since 19.08 accessing https://jabber.example.net:5281/admin gave me ""Host not served"" error. The host I serve is example.net, but the fqdn of the ejabberd server itself is jabber.example.net.
I've read that it should be fixed in 19.09, but it is not.
Now accessing https://jabber.example.net:5281/admin gives me ""404 Not Found"" error instead.
",
662,https://api.github.com/repos/processone/ejabberd/issues/3049,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3049/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3049/comments,https://api.github.com/repos/processone/ejabberd/issues/3049/events,https://github.com/processone/ejabberd/issues/3049,502022592,MDU6SXNzdWU1MDIwMjI1OTI=,3049,Ejabberd - join to cluster in plugin - ejabberd crash,"{'login': 'sarsonj', 'id': 925756, 'node_id': 'MDQ6VXNlcjkyNTc1Ng==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/925756?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/sarsonj', 'html_url': 'https://github.com/sarsonj', 'followers_url': 'https://api.github.com/users/sarsonj/followers', 'following_url': 'https://api.github.com/users/sarsonj/following{/other_user}', 'gists_url': 'https://api.github.com/users/sarsonj/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/sarsonj/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/sarsonj/subscriptions', 'organizations_url': 'https://api.github.com/users/sarsonj/orgs', 'repos_url': 'https://api.github.com/users/sarsonj/repos', 'events_url': 'https://api.github.com/users/sarsonj/events{/privacy}', 'received_events_url': 'https://api.github.com/users/sarsonj/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/42', 'html_url': 'https://github.com/processone/ejabberd/milestone/42', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/42/labels', 'id': 5706346, 'node_id': 'MDk6TWlsZXN0b25lNTcwNjM0Ng==', 'number': 42, 'title': 'ejabberd 20.07', 'description': 'https://www.process-one.net/blog/ejabberd-20-07/', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 20, 'state': 'closed', 'created_at': '2020-07-28T07:56:43Z', 'updated_at': '2020-07-31T14:08:13Z', 'due_on': '2020-07-30T07:00:00Z', 'closed_at': '2020-07-31T14:05:45Z'}",2,2019-10-03T12:01:10Z,2020-07-31T14:04:06Z,2020-06-09T11:35:24Z,NONE,,,"I wrote simple auto join cluster pluging, that looks for other nodes running and if any available, the plugin join founs node into cluster.
The plugin is written in Elixir. When the `:ejabberd_cluster.join()` function is called, the node is starting to restart (same way, when I call `:ejabberd_cluster.join()` from console, so that is probably right behaviour), however, it fails with error and ejabberd doesn't restart:
```
23:43:43.169 [debug] Stopping mod_shared_roster at xmpp.testing.barkio.com
23:43:43.170 [debug] Route unregistered: xmpp.testing.barkio.com
23:43:43.204 [info] ejabberd 19.9.0 is stopped in the node 'ejapp@ejabberd-1.xmpp-internal-svc.ttmonitor.svc.cluster.local'
23:43:43.207 [info] Application ejabberd exited: :stopped
23:43:43.318 [error] :gen_event handler :ejabberd_system_monitor installed in :alarm_handler terminating
** (ArgumentError) argument error
(stdlib) :ets.lookup_element(:ejabberd_options, {:oom_queue, :global}, 2)
(ejabberd) src/ejabberd_config.erl:157: :ejabberd_config.get_option/1
(ejabberd) src/ejabberd_system_monitor.erl:137: :ejabberd_system_monitor.handle_overload/2
(ejabberd) src/ejabberd_system_monitor.erl:114: :ejabberd_system_monitor.handle_info/2
(stdlib) gen_event.erl:577: :gen_event.server_update/4
(stdlib) gen_event.erl:559: :gen_event.server_notify/4
(stdlib) gen_event.erl:347: :gen_event.handle_msg/6
(stdlib) proc_lib.erl:249: :proc_lib.init_p_do_apply/3
Last message: {:timeout, #Reference<0.2673757326.4237295617.33203>, :handle_overload}
State: {:state, #Reference<0.2673757326.4237295617.33203>, :undefined}
```
As I wrote, when I call :ejabberd_cluster.join() with the same parameters from the console, it works, ejabberd restarts and both nodes are joined into cluster. Any idea, what is the reason for this problem?
## Environment
- ejabberd version: 19.9
- Erlang version: Erlang/OTP 21 [erts-10.3.5.4], Elixir (1.8.2)
- OS: Linux (Debian)
- Installed from: as Elixir app using mix",
663,https://api.github.com/repos/processone/ejabberd/issues/3048,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3048/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3048/comments,https://api.github.com/repos/processone/ejabberd/issues/3048/events,https://github.com/processone/ejabberd/pull/3048,501309547,MDExOlB1bGxSZXF1ZXN0MzIzNjA4NTAx,3048,Fixing an error when call remove mam from xmlrpc,"{'login': 'alamse', 'id': 19145566, 'node_id': 'MDQ6VXNlcjE5MTQ1NTY2', 'avatar_url': 'https://avatars2.githubusercontent.com/u/19145566?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/alamse', 'html_url': 'https://github.com/alamse', 'followers_url': 'https://api.github.com/users/alamse/followers', 'following_url': 'https://api.github.com/users/alamse/following{/other_user}', 'gists_url': 'https://api.github.com/users/alamse/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/alamse/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/alamse/subscriptions', 'organizations_url': 'https://api.github.com/users/alamse/orgs', 'repos_url': 'https://api.github.com/users/alamse/repos', 'events_url': 'https://api.github.com/users/alamse/events{/privacy}', 'received_events_url': 'https://api.github.com/users/alamse/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]",,6,2019-10-02T06:48:45Z,2019-10-03T15:29:52Z,2019-10-03T15:29:52Z,NONE,,"{'url': 'https://api.github.com/repos/processone/ejabberd/pulls/3048', 'html_url': 'https://github.com/processone/ejabberd/pull/3048', 'diff_url': 'https://github.com/processone/ejabberd/pull/3048.diff', 'patch_url': 'https://github.com/processone/ejabberd/pull/3048.patch'}","This PR is to fixing an error when we tried to call `remove_mam_for_user` and `remove_mam_for_user_with_peer` from xmlrpc.
```
CRASH REPORT Process <0.1308.0> with 0 neighbours crashed with reason: no function clause matching lists:flatten(<<""MAM archive removed"">>) line 616
```",
664,https://api.github.com/repos/processone/ejabberd/issues/3047,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3047/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3047/comments,https://api.github.com/repos/processone/ejabberd/issues/3047/events,https://github.com/processone/ejabberd/issues/3047,500850728,MDU6SXNzdWU1MDA4NTA3Mjg=,3047,Lets encrypt cirtificate not working,"{'login': 'sujankumar4593', 'id': 8556194, 'node_id': 'MDQ6VXNlcjg1NTYxOTQ=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/8556194?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/sujankumar4593', 'html_url': 'https://github.com/sujankumar4593', 'followers_url': 'https://api.github.com/users/sujankumar4593/followers', 'following_url': 'https://api.github.com/users/sujankumar4593/following{/other_user}', 'gists_url': 'https://api.github.com/users/sujankumar4593/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/sujankumar4593/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/sujankumar4593/subscriptions', 'organizations_url': 'https://api.github.com/users/sujankumar4593/orgs', 'repos_url': 'https://api.github.com/users/sujankumar4593/repos', 'events_url': 'https://api.github.com/users/sujankumar4593/events{/privacy}', 'received_events_url': 'https://api.github.com/users/sujankumar4593/received_events', 'type': 'User', 'site_admin': False}","[{'id': 352233730, 'node_id': 'MDU6TGFiZWwzNTIyMzM3MzA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Question', 'name': 'Kind:Question', 'color': 'fef2c0', 'default': False, 'description': None}]",closed,False,,[],,4,2019-10-01T12:04:16Z,2019-10-01T19:03:40Z,2019-10-01T12:24:59Z,NONE,,,"## Environment
- ejabberd version: 19.05
- Erlang version: `erl 21`
- OS: Linux (Ubuntu)
- Installed from: source
## Bug description
I have created lets encrypt cirtificate for my domain and I added in ejabberd.yml
```yaml
certfiles:
- ""/opt/ejabberd/certs/privkey.pem""
- ""/opt/ejabberd/certs/fullchain.pem""**
```
but when is set encryption connection to always in psi+ xmpp client I got **The server does not support TLS encryption.** this error.
Logs
```
2019-10-01 08:02:04.598 [info] <0.1268.0>@ejabberd_listener:accept:245 (<0.1432.0>) Accepted connection ::ffff:10.10.1.58:51458 -> ::ffff:192.168.0.104:5232
2019-10-01 08:02:04.618 [info] <0.1432.0> (tcp|<0.1432.0>) Received XML on stream = <<""\n\n"">>
2019-10-01 08:02:04.690 [info] <0.1432.0> (tcp|<0.1432.0>) Send XML on stream = <<"""">>
2019-10-01 08:02:04.711 [info] <0.1432.0> (tcp|<0.1432.0>) Send XML on stream = <<""DIGEST-MD5PLAINSCRAM-SHA-1X-OAUTH2"">>
2019-10-01 08:02:04.727 [info] <0.1432.0> (tcp|<0.1432.0>) Send XML on stream = <<"""">>
```
",
665,https://api.github.com/repos/processone/ejabberd/issues/3046,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3046/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3046/comments,https://api.github.com/repos/processone/ejabberd/issues/3046/events,https://github.com/processone/ejabberd/issues/3046,500234696,MDU6SXNzdWU1MDAyMzQ2OTY=,3046,mod_admin_extra: missing ask option in add_rosteritem API.,"{'login': 'ibrahimkoujar', 'id': 32205798, 'node_id': 'MDQ6VXNlcjMyMjA1Nzk4', 'avatar_url': 'https://avatars3.githubusercontent.com/u/32205798?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ibrahimkoujar', 'html_url': 'https://github.com/ibrahimkoujar', 'followers_url': 'https://api.github.com/users/ibrahimkoujar/followers', 'following_url': 'https://api.github.com/users/ibrahimkoujar/following{/other_user}', 'gists_url': 'https://api.github.com/users/ibrahimkoujar/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ibrahimkoujar/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ibrahimkoujar/subscriptions', 'organizations_url': 'https://api.github.com/users/ibrahimkoujar/orgs', 'repos_url': 'https://api.github.com/users/ibrahimkoujar/repos', 'events_url': 'https://api.github.com/users/ibrahimkoujar/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ibrahimkoujar/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]",,3,2019-09-30T12:09:08Z,2019-10-07T11:20:28Z,2019-10-07T11:20:28Z,NONE,,,"missing `ask` option in `add_rosteritem` HTTP API and CLI.
It will be great if we can use `ask` option in `add_rosteritem` API.
Thanks.",
666,https://api.github.com/repos/processone/ejabberd/issues/3045,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3045/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3045/comments,https://api.github.com/repos/processone/ejabberd/issues/3045/events,https://github.com/processone/ejabberd/issues/3045,499913826,MDU6SXNzdWU0OTk5MTM4MjY=,3045,Wrong FORM_TYPE for IBR form with CAPTCHA,"{'login': 'linkmauve', 'id': 7755816, 'node_id': 'MDQ6VXNlcjc3NTU4MTY=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/7755816?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/linkmauve', 'html_url': 'https://github.com/linkmauve', 'followers_url': 'https://api.github.com/users/linkmauve/followers', 'following_url': 'https://api.github.com/users/linkmauve/following{/other_user}', 'gists_url': 'https://api.github.com/users/linkmauve/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/linkmauve/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/linkmauve/subscriptions', 'organizations_url': 'https://api.github.com/users/linkmauve/orgs', 'repos_url': 'https://api.github.com/users/linkmauve/repos', 'events_url': 'https://api.github.com/users/linkmauve/events{/privacy}', 'received_events_url': 'https://api.github.com/users/linkmauve/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179053760, 'node_id': 'MDU6TGFiZWwxNzkwNTM3NjA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Note:Needs%20more%20info', 'name': 'Note:Needs more info', 'color': 'c7def8', 'default': False, 'description': None}]",open,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/38', 'html_url': 'https://github.com/processone/ejabberd/milestone/38', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/38/labels', 'id': 4710876, 'node_id': 'MDk6TWlsZXN0b25lNDcxMDg3Ng==', 'number': 38, 'title': 'ejabberd 19.12', 'description': '', 'creator': {'login': 'zinid', 'id': 1095902, 'node_id': 'MDQ6VXNlcjEwOTU5MDI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1095902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/zinid', 'html_url': 'https://github.com/zinid', 'followers_url': 'https://api.github.com/users/zinid/followers', 'following_url': 'https://api.github.com/users/zinid/following{/other_user}', 'gists_url': 'https://api.github.com/users/zinid/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/zinid/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/zinid/subscriptions', 'organizations_url': 'https://api.github.com/users/zinid/orgs', 'repos_url': 'https://api.github.com/users/zinid/repos', 'events_url': 'https://api.github.com/users/zinid/events{/privacy}', 'received_events_url': 'https://api.github.com/users/zinid/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 2, 'closed_issues': 5, 'state': 'closed', 'created_at': '2019-10-01T19:12:36Z', 'updated_at': '2020-03-18T13:40:27Z', 'due_on': '2019-12-31T08:00:00Z', 'closed_at': '2020-02-18T08:47:53Z'}",7,2019-09-29T12:58:06Z,2019-11-25T11:54:25Z,,NONE,,,"## Environment
- ejabberd version: unknown
- Erlang version: unknown
- OS: unknown
- Installed from: unknown
## Configuration (only if needed): unknown
## Errors from error.log/crash.log
No errors
## Bug description
When doing in-band registration with some Ejabberd server with a CAPTCHA, such as creep.im or patchcord.be, the FORM_TYPE is `urn:xmpp:captcha` instead of `jabber:iq:registration` like it should be as defined by XEP-0077 and extended by XEP-0158.",
667,https://api.github.com/repos/processone/ejabberd/issues/3044,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3044/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3044/comments,https://api.github.com/repos/processone/ejabberd/issues/3044/events,https://github.com/processone/ejabberd/issues/3044,499830000,MDU6SXNzdWU0OTk4MzAwMDA=,3044,PubSub: Publish options don't work for all node configuration fields,"{'login': 'lovetox', 'id': 8661218, 'node_id': 'MDQ6VXNlcjg2NjEyMTg=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/8661218?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/lovetox', 'html_url': 'https://github.com/lovetox', 'followers_url': 'https://api.github.com/users/lovetox/followers', 'following_url': 'https://api.github.com/users/lovetox/following{/other_user}', 'gists_url': 'https://api.github.com/users/lovetox/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/lovetox/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/lovetox/subscriptions', 'organizations_url': 'https://api.github.com/users/lovetox/orgs', 'repos_url': 'https://api.github.com/users/lovetox/repos', 'events_url': 'https://api.github.com/users/lovetox/events{/privacy}', 'received_events_url': 'https://api.github.com/users/lovetox/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179040816, 'node_id': 'MDU6TGFiZWwxNzkwNDA4MTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Pubsub', 'name': 'Component:Pubsub', 'color': 'fad8c7', 'default': False, 'description': None}, {'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",open,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/38', 'html_url': 'https://github.com/processone/ejabberd/milestone/38', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/38/labels', 'id': 4710876, 'node_id': 'MDk6TWlsZXN0b25lNDcxMDg3Ng==', 'number': 38, 'title': 'ejabberd 19.12', 'description': '', 'creator': {'login': 'zinid', 'id': 1095902, 'node_id': 'MDQ6VXNlcjEwOTU5MDI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1095902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/zinid', 'html_url': 'https://github.com/zinid', 'followers_url': 'https://api.github.com/users/zinid/followers', 'following_url': 'https://api.github.com/users/zinid/following{/other_user}', 'gists_url': 'https://api.github.com/users/zinid/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/zinid/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/zinid/subscriptions', 'organizations_url': 'https://api.github.com/users/zinid/orgs', 'repos_url': 'https://api.github.com/users/zinid/repos', 'events_url': 'https://api.github.com/users/zinid/events{/privacy}', 'received_events_url': 'https://api.github.com/users/zinid/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 2, 'closed_issues': 5, 'state': 'closed', 'created_at': '2019-10-01T19:12:36Z', 'updated_at': '2020-03-18T13:40:27Z', 'due_on': '2019-12-31T08:00:00Z', 'closed_at': '2020-02-18T08:47:53Z'}",0,2019-09-28T23:00:50Z,2019-10-14T20:36:42Z,,NONE,,,"## Environment
- ejabberd version: 18.05
## Bug description
publish options seem only to work for
pubsub#persist_items
pubsub#access_model
all other node configuration fields yield for example
`resource-constraint - Unknown field 'pubsub#send_last_published_item' of type 'http://jabber.org/protocol/pubsub#publish-options`
publish options are for example important for XEP-0402. We need to discover if a node is configured to notify on deletion and retraction. Also its important we can set max_items via publish options.
The XEP doesnt mention those things yet but its in the process of being updated.
Please extend publish option support to all node configuration fields",
668,https://api.github.com/repos/processone/ejabberd/issues/3043,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3043/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3043/comments,https://api.github.com/repos/processone/ejabberd/issues/3043/events,https://github.com/processone/ejabberd/issues/3043,499777635,MDU6SXNzdWU0OTk3Nzc2MzU=,3043,Absolute (hard-coded?) paths in web admin,"{'login': '9662', 'id': 13080040, 'node_id': 'MDQ6VXNlcjEzMDgwMDQw', 'avatar_url': 'https://avatars0.githubusercontent.com/u/13080040?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/9662', 'html_url': 'https://github.com/9662', 'followers_url': 'https://api.github.com/users/9662/followers', 'following_url': 'https://api.github.com/users/9662/following{/other_user}', 'gists_url': 'https://api.github.com/users/9662/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/9662/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/9662/subscriptions', 'organizations_url': 'https://api.github.com/users/9662/orgs', 'repos_url': 'https://api.github.com/users/9662/repos', 'events_url': 'https://api.github.com/users/9662/events{/privacy}', 'received_events_url': 'https://api.github.com/users/9662/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/38', 'html_url': 'https://github.com/processone/ejabberd/milestone/38', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/38/labels', 'id': 4710876, 'node_id': 'MDk6TWlsZXN0b25lNDcxMDg3Ng==', 'number': 38, 'title': 'ejabberd 19.12', 'description': '', 'creator': {'login': 'zinid', 'id': 1095902, 'node_id': 'MDQ6VXNlcjEwOTU5MDI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1095902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/zinid', 'html_url': 'https://github.com/zinid', 'followers_url': 'https://api.github.com/users/zinid/followers', 'following_url': 'https://api.github.com/users/zinid/following{/other_user}', 'gists_url': 'https://api.github.com/users/zinid/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/zinid/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/zinid/subscriptions', 'organizations_url': 'https://api.github.com/users/zinid/orgs', 'repos_url': 'https://api.github.com/users/zinid/repos', 'events_url': 'https://api.github.com/users/zinid/events{/privacy}', 'received_events_url': 'https://api.github.com/users/zinid/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 2, 'closed_issues': 5, 'state': 'closed', 'created_at': '2019-10-01T19:12:36Z', 'updated_at': '2020-03-18T13:40:27Z', 'due_on': '2019-12-31T08:00:00Z', 'closed_at': '2020-02-18T08:47:53Z'}",4,2019-09-28T14:13:39Z,2020-02-28T10:08:14Z,2020-02-28T10:08:14Z,NONE,,,"My report is a duplicate of #1449, but since the closing comment appears to solicit feedback on usage / desirability of this feature, I thought it proper to open this ticket (I am not allowed to write a comment on #1449).",
669,https://api.github.com/repos/processone/ejabberd/issues/3042,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3042/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3042/comments,https://api.github.com/repos/processone/ejabberd/issues/3042/events,https://github.com/processone/ejabberd/issues/3042,499354342,MDU6SXNzdWU0OTkzNTQzNDI=,3042,not able to restore mnesia database after upgrade from 19.05 to 19.08,"{'login': 'hemantlinux', 'id': 21173625, 'node_id': 'MDQ6VXNlcjIxMTczNjI1', 'avatar_url': 'https://avatars2.githubusercontent.com/u/21173625?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/hemantlinux', 'html_url': 'https://github.com/hemantlinux', 'followers_url': 'https://api.github.com/users/hemantlinux/followers', 'following_url': 'https://api.github.com/users/hemantlinux/following{/other_user}', 'gists_url': 'https://api.github.com/users/hemantlinux/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/hemantlinux/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/hemantlinux/subscriptions', 'organizations_url': 'https://api.github.com/users/hemantlinux/orgs', 'repos_url': 'https://api.github.com/users/hemantlinux/repos', 'events_url': 'https://api.github.com/users/hemantlinux/events{/privacy}', 'received_events_url': 'https://api.github.com/users/hemantlinux/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2019-09-27T10:01:06Z,2019-09-30T10:34:51Z,2019-09-28T05:39:47Z,NONE,,,"Hi,
I have been using ejabberd 19.05 and today wanted to upgrade it to 19.08 version.
Before installing new version I have created backup of mnesia database. While restoring that backup to 19.08 , it is showing below error.
""Can't restore backup from ""/home/test/27_09_2019.backup"" at node ejabberd@localhost: Table acl does not exist""
Since release notes showing that there is no change in database but I am getting this error. ",
670,https://api.github.com/repos/processone/ejabberd/issues/3041,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3041/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3041/comments,https://api.github.com/repos/processone/ejabberd/issues/3041/events,https://github.com/processone/ejabberd/issues/3041,498863281,MDU6SXNzdWU0OTg4NjMyODE=,3041, MUC: allow emitting muc#roominfo_webchat_url disco#info form extension field,"{'login': 'horazont', 'id': 271710, 'node_id': 'MDQ6VXNlcjI3MTcxMA==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/271710?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/horazont', 'html_url': 'https://github.com/horazont', 'followers_url': 'https://api.github.com/users/horazont/followers', 'following_url': 'https://api.github.com/users/horazont/following{/other_user}', 'gists_url': 'https://api.github.com/users/horazont/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/horazont/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/horazont/subscriptions', 'organizations_url': 'https://api.github.com/users/horazont/orgs', 'repos_url': 'https://api.github.com/users/horazont/repos', 'events_url': 'https://api.github.com/users/horazont/events{/privacy}', 'received_events_url': 'https://api.github.com/users/horazont/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",open,False,,[],,0,2019-09-26T12:48:41Z,2019-09-26T13:15:52Z,,NONE,,,"The muc#roominfo_webchat_url disco#info extension form field allows to publish a URL to a webchat which allows to join the room anonymously. It would be good if ejabberd supported emitting this URL.
I’ll leave the implementation details up to you. Options which come to mind:
1. A domain-wide URL template (configured by the admin) where ejabberd substitutes placeholders like ``{jid}`` when generating the reply form (similar to [how Prosody implements this](https://modules.prosody.im/mod_muc_webchat_url.html)).
2. A MUC configuration form option for users to fill in manually.
3. A combination of (1) and (2), where (1) is the default if the user has not set the option explicitly.
It might be desirable to have an room-level opt-out for this.
**Additional context**
- The search engine https://search.jabber.network will add the link to the result page if it is present in the room info
- Prosody supports this in the [mod_muc_webchat_url](https://modules.prosody.im/mod_muc_webchat_url.html) extension
- There is a [pull request against XEP-0045](https://github.com/xsf/xeps/pull/828) to standardise the ``muc#roominfo_webchat_url`` field.
- Example: the MUC xsf@muc.xmpp.org advertises the form field.",
671,https://api.github.com/repos/processone/ejabberd/issues/3040,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3040/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3040/comments,https://api.github.com/repos/processone/ejabberd/issues/3040/events,https://github.com/processone/ejabberd/issues/3040,498861508,MDU6SXNzdWU0OTg4NjE1MDg=,3040,MUC: allow emitting muc#roominfo_logs disco#info form extension field,"{'login': 'horazont', 'id': 271710, 'node_id': 'MDQ6VXNlcjI3MTcxMA==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/271710?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/horazont', 'html_url': 'https://github.com/horazont', 'followers_url': 'https://api.github.com/users/horazont/followers', 'following_url': 'https://api.github.com/users/horazont/following{/other_user}', 'gists_url': 'https://api.github.com/users/horazont/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/horazont/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/horazont/subscriptions', 'organizations_url': 'https://api.github.com/users/horazont/orgs', 'repos_url': 'https://api.github.com/users/horazont/repos', 'events_url': 'https://api.github.com/users/horazont/events{/privacy}', 'received_events_url': 'https://api.github.com/users/horazont/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",closed,False,"{'login': 'zinid', 'id': 1095902, 'node_id': 'MDQ6VXNlcjEwOTU5MDI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1095902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/zinid', 'html_url': 'https://github.com/zinid', 'followers_url': 'https://api.github.com/users/zinid/followers', 'following_url': 'https://api.github.com/users/zinid/following{/other_user}', 'gists_url': 'https://api.github.com/users/zinid/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/zinid/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/zinid/subscriptions', 'organizations_url': 'https://api.github.com/users/zinid/orgs', 'repos_url': 'https://api.github.com/users/zinid/repos', 'events_url': 'https://api.github.com/users/zinid/events{/privacy}', 'received_events_url': 'https://api.github.com/users/zinid/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'zinid', 'id': 1095902, 'node_id': 'MDQ6VXNlcjEwOTU5MDI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1095902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/zinid', 'html_url': 'https://github.com/zinid', 'followers_url': 'https://api.github.com/users/zinid/followers', 'following_url': 'https://api.github.com/users/zinid/following{/other_user}', 'gists_url': 'https://api.github.com/users/zinid/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/zinid/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/zinid/subscriptions', 'organizations_url': 'https://api.github.com/users/zinid/orgs', 'repos_url': 'https://api.github.com/users/zinid/repos', 'events_url': 'https://api.github.com/users/zinid/events{/privacy}', 'received_events_url': 'https://api.github.com/users/zinid/received_events', 'type': 'User', 'site_admin': False}]",,2,2019-09-26T12:45:26Z,2019-09-26T13:56:42Z,2019-09-26T13:55:03Z,NONE,,,"From my understanding, ejabberd supports writing logs in HTML format. Those can be served by a webserver (either mod_http_fileserver or an external one).
It is possible to advertise a URL to those logs via the disco#info form extension field ``muc#roominfo_logs``. It would be great if ejabberd supported advertising the URL to those logs for MUCs.
I’ll leave the implementation details up to you. Options which come to mind:
1. A domain-wide URL template (configured by the admin), such as ``https://process-one.net/logs/{jid}/``, where ejabberd substitutes placeholders like ``{jid}`` when generating the reply form.
2. A MUC configuration form option for users to fill in manually.
3. A combination of (1) and (2), where (1) is the default if the user has not set the option explicitly.
It might be desirable to have an room-level opt-out for this.
**Additional context**
- The search engine https://search.jabber.network will add the link to the result page if it is present in the room info
- Prosody supports this in the [mod_http_muc_log](https://modules.prosody.im/mod_http_muc_log.html) extension
- Example: the MUC xsf@muc.xmpp.org advertises the form field.",
672,https://api.github.com/repos/processone/ejabberd/issues/3039,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3039/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3039/comments,https://api.github.com/repos/processone/ejabberd/issues/3039/events,https://github.com/processone/ejabberd/issues/3039,498665390,MDU6SXNzdWU0OTg2NjUzOTA=,3039,Crashing on login,"{'login': 'shaggi7', 'id': 54536845, 'node_id': 'MDQ6VXNlcjU0NTM2ODQ1', 'avatar_url': 'https://avatars1.githubusercontent.com/u/54536845?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/shaggi7', 'html_url': 'https://github.com/shaggi7', 'followers_url': 'https://api.github.com/users/shaggi7/followers', 'following_url': 'https://api.github.com/users/shaggi7/following{/other_user}', 'gists_url': 'https://api.github.com/users/shaggi7/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/shaggi7/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/shaggi7/subscriptions', 'organizations_url': 'https://api.github.com/users/shaggi7/orgs', 'repos_url': 'https://api.github.com/users/shaggi7/repos', 'events_url': 'https://api.github.com/users/shaggi7/events{/privacy}', 'received_events_url': 'https://api.github.com/users/shaggi7/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,4,2019-09-26T05:23:22Z,2019-09-26T09:14:07Z,2019-09-26T07:25:55Z,NONE,,,"Hi,
I am facing the issue upon login into ejabberd :
```
$ ejabberdctl live
--------------------------------------------------------------------
IMPORTANT: ejabberd is going to start in LIVE (interactive) mode.
All log messages will be shown in the command shell.
You can interact with the ejabberd node if you know how to use it.
Please be extremely cautious with your actions,
and exit immediately if you are not completely sure.
To exit this LIVE mode and stop ejabberd, press:
q(). and press the Enter key
--------------------------------------------------------------------
To bypass permanently this warning, add to ejabberdctl.cfg the line:
EJABBERD_BYPASS_WARNINGS=true
Press return to continue
Erlang/OTP 22 [erts-10.4.4] [source] [64-bit] [smp:12:12] [ds:12:12:10] [async-threads:1]
Eshell V10.4.4 (abort with ^G)
(ejabberd@localhost)1> 10:47:44.383 [notice] Changed loghwm of /usr/local/var/log/ejabberd/error.log to 100
10:47:44.383 [notice] Changed loghwm of /usr/local/var/log/ejabberd/ejabberd.log to 100
10:47:44.415 [info] Loading configuration from /usr/local/etc/ejabberd/ejabberd.yml
10:47:44.506 [info] Configuration loaded successfully
10:47:44.603 [info] Building language translation cache
10:47:44.685 [info] Loading modules for 192.168.4.69
10:47:44.746 [info] My message!!!!
10:47:44.746 [info] Hello, ejabberd world!
10:47:44.790 [info] Building MQTT cache for 192.168.4.69, this may take a while
10:47:44.814 [info] Waiting for Mnesia synchronization to complete
10:47:44.912 [warning] No certificate found matching 192.168.4.69
10:47:44.913 [warning] No certificate found matching pubsub.192.168.4.69
10:47:44.913 [warning] No certificate found matching proxy.192.168.4.69
10:47:44.913 [warning] No certificate found matching upload.192.168.4.69
10:47:44.913 [warning] No certificate found matching conference.192.168.4.69
10:47:44.913 [info] ejabberd 19.08.58 is started in the node ejabberd@localhost in 0.60s
10:47:44.913 [info] Start accepting TCP connections at [::]:1883 for mod_mqtt
10:47:44.913 [info] Start accepting TLS connections at [::]:5443 for ejabberd_http
10:47:44.913 [info] Start accepting TCP connections at 127.0.1.1:7777 for mod_proxy65_stream
10:47:44.913 [info] Start accepting TCP connections at [::]:5280 for ejabberd_http
10:47:44.913 [info] Start accepting TCP connections at [::]:5269 for ejabberd_s2s_in
10:47:44.913 [info] Start accepting TCP connections at [::]:5222 for ejabberd_c2s
10:47:48.561 [info] (<0.651.0>) Accepted connection [::ffff:192.168.4.69]:34372 -> [::ffff:192.168.4.69]:5280
10:47:49.019 [info] (http_bind|<0.652.0>) Accepted c2s SCRAM-SHA-1 authentication for sagar@192.168.4.69 by sql backend from ::ffff:192.168.4.69
10:47:49.268 [info] (http_bind|<0.652.0>) Opened c2s session for sagar@192.168.4.69/webApp
10:47:49.529 [info] <<<<-------=-=-=-=-=-=-=-=-=-=-=-=-=-=-=------------>>>>
10:47:49.529 [info] <<<<-------=-=-=-=-=-=-=-=-=-=-=-=-=-=-=------------>>>>
10:47:49.529 [info] FORMAT ERROR: ""LServer IN MOD_VCARD "" [<<""192.168.4.69"">>]
10:47:49.529 [info] <<<<-------=-=-=-=-=-=-=-=-=-=-=-=-=-=-=------------>>>>
10:47:49.529 [info] <<<<-------=-=-=-=-=-=-=-=-=-=-=-=-=-=-=------------>>>>
10:47:49.529 [info] <<<<-------=-=-=-=-=-=-=-=-=-=-=-=-=-=-=------------>>>>
10:47:49.530 [info] <<<<-------=-=-=-=-=-=-=-=-=-=-=-=-=-=-=------------>>>>
10:47:49.530 [info] FORMAT ERROR: ""LServer IN MOD_VCARD_SQL "" [<<""192.168.4.69"">>]
10:47:49.530 [info] <<<<-------=-=-=-=-=-=-=-=-=-=-=-=-=-=-=------------>>>>
10:47:49.530 [info] <<<<-------=-=-=-=-=-=-=-=-=-=-=-=-=-=-=------------>>>>
10:47:49.542 [info] Outbound s2s connection started: 192.168.4.69 -> 192.168.3.145
10:47:49.543 [info] Outbound s2s connection started: 192.168.4.69 -> 192.168.3.145
10:47:49.543 [error] gen_server <0.654.0> terminated with reason: no function clause matching string:chr(<<""192.168.3.145"">>, 46, 1) line 1801
10:47:49.544 [error] CRASH REPORT Process <0.654.0> with 0 neighbours exited with reason: no function clause matching string:chr(<<""192.168.3.145"">>, 46, 1) line 1801 in p1_server:terminate/7 line 878
10:47:49.544 [error] Supervisor ejabberd_s2s_out_sup had child undefined started with {ejabberd_s2s_out,start_link,undefined} at <0.654.0> exit with reason no function clause matching string:chr(<<""192.168.3.145"">>, 46, 1) line 1801 in context child_terminated
10:47:49.545 [error] gen_server <0.655.0> terminated with reason: no function clause matching string:chr(<<""192.168.3.145"">>, 46, 1) line 1801
10:47:49.545 [error] CRASH REPORT Process <0.655.0> with 0 neighbours exited with reason: no function clause matching string:chr(<<""192.168.3.145"">>, 46, 1) line 1801 in p1_server:terminate/7 line 878
10:47:49.546 [error] Supervisor ejabberd_s2s_out_sup had child undefined started with {ejabberd_s2s_out,start_link,undefined} at <0.655.0> exit with reason no function clause matching string:chr(<<""192.168.3.145"">>, 46, 1) line 1801 in context child_terminated
```
I have also tried the solution provided in #3037.
also I am receiving the these presence stanzas from rosters upon login:
```
4e354a5e2baf2f5d3f055529561fed9536cb037bInternal server error100
```",
673,https://api.github.com/repos/processone/ejabberd/issues/3038,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3038/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3038/comments,https://api.github.com/repos/processone/ejabberd/issues/3038/events,https://github.com/processone/ejabberd/issues/3038,498216283,MDU6SXNzdWU0OTgyMTYyODM=,3038,Errors while making queries.,"{'login': 'shaggi7', 'id': 54536845, 'node_id': 'MDQ6VXNlcjU0NTM2ODQ1', 'avatar_url': 'https://avatars1.githubusercontent.com/u/54536845?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/shaggi7', 'html_url': 'https://github.com/shaggi7', 'followers_url': 'https://api.github.com/users/shaggi7/followers', 'following_url': 'https://api.github.com/users/shaggi7/following{/other_user}', 'gists_url': 'https://api.github.com/users/shaggi7/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/shaggi7/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/shaggi7/subscriptions', 'organizations_url': 'https://api.github.com/users/shaggi7/orgs', 'repos_url': 'https://api.github.com/users/shaggi7/repos', 'events_url': 'https://api.github.com/users/shaggi7/events{/privacy}', 'received_events_url': 'https://api.github.com/users/shaggi7/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2019-09-25T11:12:47Z,2019-09-25T11:27:01Z,2019-09-25T11:16:55Z,NONE,,,"Hi,
I am making a custom module. and using the function ejabberd_sql:sql_query().
Here is the code snippet:
```
LServer = <<""XXX.XXX.X.XX"">>,
LUser = <<""sagar"">>,
case ejabberd_sql:sql_query(
LServer,
?SQL(""select @(created_at)s from users""
"" when username=%(LUser)s and %(LServer)H))) of
{selected, [Res]} ->
?INFO_MSG(""<<<<-------=-=-=-=-=-=-=-=-=-=-=-=-=-=-=------------>>>>"",[]),
?INFO_MSG(""Here is the response of the query:"", [Res]),
?INFO_MSG(""<<<<-------=-=-=-=-=-=-=-=-=-=-=-=-=-=-=------------>>>>"",[]);
{selected, []} ->
?INFO_MSG(""<<<<-------=-=-=-=-=-=-=-=-=-=-=-=-=-=-=------------>>>>"",[]),
?INFO_MSG(""Query correct but nothing is fetched"",[]),
?INFO_MSG(""<<<<-------=-=-=-=-=-=-=-=-=-=-=-=-=-=-=------------>>>>"",[]);
_->
?INFO_MSG(""<<<<-------=-=-=-=-=-=-=-=-=-=-=-=-=-=-=------------>>>>"",[]),
?INFO_MSG(""ERROR CONDITION"",[]),
?INFO_MSG(""<<<<-------=-=-=-=-=-=-=-=-=-=-=-=-=-=-=------------>>>>"",[])
end.
```
and this is running fine. But I am facing issues in these queries:
```
Query 1:
ejabberd_sql:sql_query(
LServer,
?SQL(""select @(*)s from users""))
OUTPUT:
16:39:47.727 [error] Error while processing SQL query result:
** Row: [<<""sagar"">>,<<""9009"">>,<<>>,<<>>,<<""0"">>,<<""2019-09-10 16:09:59"">>]
** exception error: no function clause matching
mod_hello_world:'-start/2-fun-5-'([<<""sagar"">>,<<""9009"">>,
<<>>,<<>>,<<""0"">>,
<<""2019-09-10 16:09:59"">>]) (src/mod_hello_world.erl, line 19)
in function ejabberd_sql:'-sql_query_format_res/2-fun-2-'/2 (src/ejabberd_sql.erl, line 757)
in call from lists:flatmap/2 (lists.erl, line 1250)
in call from lists:flatmap/2 (lists.erl, line 1250)
in call from ejabberd_sql:sql_query_format_res/2 (src/ejabberd_sql.erl, line 754)
in call from ejabberd_sql:sql_query_internal/1 (src/ejabberd_sql.erl, line 605)
in call from ejabberd_sql:run_sql_cmd/4 (src/ejabberd_sql.erl, line 470)
in call from p1_fsm:handle_msg/10 (src/p1_fsm.erl, line 582)
16:39:47.727 [error] Error while processing SQL query result:
Query 2:
ejabberd_sql:sql_query(
LServer,
?SQL(""select @(username)s from users""))
OUTPUT:
16:41:44.454 [info] Hello, ejabberd world!
16:41:44.454 [info] <<<<-------=-=-=-=-=-=-=-=-=-=-=-=-=-=-=------------>>>>
16:41:44.454 [info] ERROR CONDITION
16:41:44.454 [info] <<<<-------=-=-=-=-=-=-=-=-=-=-=-=-=-=-=------------>>>>
```
The Last one not creating error but also not returning anything. Please help!!",
674,https://api.github.com/repos/processone/ejabberd/issues/3037,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3037/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3037/comments,https://api.github.com/repos/processone/ejabberd/issues/3037/events,https://github.com/processone/ejabberd/issues/3037,498092410,MDU6SXNzdWU0OTgwOTI0MTA=,3037,Unknown Wrning message on the WIFI change,"{'login': 'shaggi7', 'id': 54536845, 'node_id': 'MDQ6VXNlcjU0NTM2ODQ1', 'avatar_url': 'https://avatars1.githubusercontent.com/u/54536845?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/shaggi7', 'html_url': 'https://github.com/shaggi7', 'followers_url': 'https://api.github.com/users/shaggi7/followers', 'following_url': 'https://api.github.com/users/shaggi7/following{/other_user}', 'gists_url': 'https://api.github.com/users/shaggi7/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/shaggi7/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/shaggi7/subscriptions', 'organizations_url': 'https://api.github.com/users/shaggi7/orgs', 'repos_url': 'https://api.github.com/users/shaggi7/repos', 'events_url': 'https://api.github.com/users/shaggi7/events{/privacy}', 'received_events_url': 'https://api.github.com/users/shaggi7/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179040989, 'node_id': 'MDU6TGFiZWwxNzkwNDA5ODk=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Bug', 'name': 'Kind:Bug', 'color': 'e11d21', 'default': False, 'description': None}]",closed,True,"{'login': 'zinid', 'id': 1095902, 'node_id': 'MDQ6VXNlcjEwOTU5MDI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1095902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/zinid', 'html_url': 'https://github.com/zinid', 'followers_url': 'https://api.github.com/users/zinid/followers', 'following_url': 'https://api.github.com/users/zinid/following{/other_user}', 'gists_url': 'https://api.github.com/users/zinid/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/zinid/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/zinid/subscriptions', 'organizations_url': 'https://api.github.com/users/zinid/orgs', 'repos_url': 'https://api.github.com/users/zinid/repos', 'events_url': 'https://api.github.com/users/zinid/events{/privacy}', 'received_events_url': 'https://api.github.com/users/zinid/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'zinid', 'id': 1095902, 'node_id': 'MDQ6VXNlcjEwOTU5MDI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1095902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/zinid', 'html_url': 'https://github.com/zinid', 'followers_url': 'https://api.github.com/users/zinid/followers', 'following_url': 'https://api.github.com/users/zinid/following{/other_user}', 'gists_url': 'https://api.github.com/users/zinid/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/zinid/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/zinid/subscriptions', 'organizations_url': 'https://api.github.com/users/zinid/orgs', 'repos_url': 'https://api.github.com/users/zinid/repos', 'events_url': 'https://api.github.com/users/zinid/events{/privacy}', 'received_events_url': 'https://api.github.com/users/zinid/received_events', 'type': 'User', 'site_admin': False}]",,7,2019-09-25T07:08:19Z,2019-09-25T10:59:49Z,2019-09-25T10:59:49Z,NONE,resolved,,"Hi,
I have build the ejabberd from source.
I am getting an unknown warning message like this (IP1 : new IP, IP2 : old IP).
```
12:33:47.361 [info] Building MQTT cache for IP1, this may take a while
12:33:47.368 [warning] Option 'auth_password_format' is not defined for virtual host 'IP2'. This is a bug, please report it with the following stacktrace included:
** exception error: bad argument
in function ets:lookup_element/3
called as ets:lookup_element(ejabberd_options,
{auth_password_format,<<""IP2"">>},
2)
in call from ejabberd_config:get_option/1 (src/ejabberd_config.erl, line 157)
in call from ejabberd_auth_mnesia:need_transform/1 (src/ejabberd_auth_mnesia.erl, line 208)
in call from lists:foldl/3 (lists.erl, line 1263)
in call from ejabberd_mnesia:do_need_transform/3 (src/ejabberd_mnesia.erl, line 351)
in call from ejabberd_mnesia:transform/4 (src/ejabberd_mnesia.erl, line 324)
in call from ejabberd_mnesia:handle_call/3 (src/ejabberd_mnesia.erl, line 96)
in call from gen_server:try_handle_call/4 (gen_server.erl, line 661)
12:33:47.386 [info] Waiting for Mnesia synchronization to complete
```
",
675,https://api.github.com/repos/processone/ejabberd/issues/3036,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3036/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3036/comments,https://api.github.com/repos/processone/ejabberd/issues/3036/events,https://github.com/processone/ejabberd/issues/3036,498083978,MDU6SXNzdWU0OTgwODM5Nzg=,3036,Cannot revert from ACME back to standard certs,"{'login': 'timeos', 'id': 4984316, 'node_id': 'MDQ6VXNlcjQ5ODQzMTY=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/4984316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/timeos', 'html_url': 'https://github.com/timeos', 'followers_url': 'https://api.github.com/users/timeos/followers', 'following_url': 'https://api.github.com/users/timeos/following{/other_user}', 'gists_url': 'https://api.github.com/users/timeos/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/timeos/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/timeos/subscriptions', 'organizations_url': 'https://api.github.com/users/timeos/orgs', 'repos_url': 'https://api.github.com/users/timeos/repos', 'events_url': 'https://api.github.com/users/timeos/events{/privacy}', 'received_events_url': 'https://api.github.com/users/timeos/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,6,2019-09-25T06:48:16Z,2019-09-25T07:56:20Z,2019-09-25T07:55:58Z,NONE,,,"## Environment
- ejabberd version: 18.09
- Erlang version: Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.3.4
- OS: Linux (CentOS Linux release 7.7.1908 (Core))
- Installed from: official rpm
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
loglevel: 4
...
```
## Bug description
Because of ACME issue (reported under #3035 ) I wanted to revert back to using my own certificates in configuration file ""/opt/ejabberd/conf/ejabberd.yml"". So I did this:
- comment out whole ""acme"" section (including ""contact"" and ""ca_url"")
- in section ""certfiles"" replaced the links to ACME certificates ""/opt/ejabberd/database/ejabberd@localhost/certs/acme/example.com.pem"" to my own certificate.
- there are no ""certfile"" enabled in listeners
- there are no other cert-related directives enabled at all (s2s_certfile etc.)
- restart ejabberd proces via systemctl (my session get dropped and reconnected)
the problem is that ejabberd ignores all my config changes and keep using existing (already expired) ACME certificates.
then I decided to be more radical and removed all content (backed up actually) from /opt/ejabberd/database/ejabberd@localhost/certs/ directory. but now ejabberd refused to connect of any client with following message:
2019-09-23 12:10:57.483 [warning] <0.633.0>@ejabberd_c2s:process_terminated:312 (tls|<0.633.0>) Failed to secure c2s connection: TLS failed: Failed to find a certificate matching the domain in SNI extension: error:1408A0E2:SSL routines:SSL3_GET_CLIENT_HELLO:clienthello tlsext
this would mean that ACME certificates were finally not read after process restart, but my new certificate defined using ""certfile:"" was still ignored.
please how to instruct ejabberd to ignore ACME DB at all and to start use certificates what I have explicitly defined in yml config file?
thank you
",
676,https://api.github.com/repos/processone/ejabberd/issues/3035,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3035/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3035/comments,https://api.github.com/repos/processone/ejabberd/issues/3035/events,https://github.com/processone/ejabberd/issues/3035,498079632,MDU6SXNzdWU0OTgwNzk2MzI=,3035,ACME is broken?,"{'login': 'timeos', 'id': 4984316, 'node_id': 'MDQ6VXNlcjQ5ODQzMTY=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/4984316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/timeos', 'html_url': 'https://github.com/timeos', 'followers_url': 'https://api.github.com/users/timeos/followers', 'following_url': 'https://api.github.com/users/timeos/following{/other_user}', 'gists_url': 'https://api.github.com/users/timeos/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/timeos/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/timeos/subscriptions', 'organizations_url': 'https://api.github.com/users/timeos/orgs', 'repos_url': 'https://api.github.com/users/timeos/repos', 'events_url': 'https://api.github.com/users/timeos/events{/privacy}', 'received_events_url': 'https://api.github.com/users/timeos/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179040989, 'node_id': 'MDU6TGFiZWwxNzkwNDA5ODk=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Bug', 'name': 'Kind:Bug', 'color': 'e11d21', 'default': False, 'description': None}]",closed,False,,[],,4,2019-09-25T06:38:08Z,2019-09-25T07:54:59Z,2019-09-25T07:46:33Z,NONE,,,"
## Environment
- ejabberd version: 18.09
- Erlang version: Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.3.4
- OS: Linux (CentOS Linux release 7.7.1908 (Core))
- Installed from: official rpm
## Bug description
We used ACME for a while and worked fine until the mid of summer (sooner/later, not know exact date) when it stopped working - ""authorization"" error:
/opt/ejabberd-19.08/bin/ejabberdctl renew_certificates
Error with one or more certificates
Error for domain: ""example.com"", with reason: 'authorization'
in log I can see this:
```
2019-09-25 08:19:39.540 [error] <0.764.0>@ejabberd_acme:get_config_ca_url:1148 No CA url has been specified in configuration
2019-09-25 08:19:39.560 [info] <0.764.0>@acme_challenge:register_hooks:40 Registering hook for ACME HTTP headers
2019-09-25 08:19:41.454 [error] <0.764.0>@ejabberd_acme_comm:failed_http_request:401 Unexpected status code from : 404, Body: {
""type"": ""urn:acme:error:malformed"",
""detail"": ""No such challenge"",
""status"": 404
}
2019-09-25 08:19:41.454 [error] <0.764.0>@ejabberd_acme:create_new_authorization:318 Error: {throw,{error,{unexpected_code,404,""Not Found""}}} getting an authorization for domain: <<""example.com"">>
2019-09-25 08:19:41.454 [info] <0.764.0>@acme_challenge:unregister_hooks:44 Unregistering hook for ACME HTTP headers
```
the problem is that the challenge test request never comes from ACME servers at all.
If I uncomment following line (which was uncommented before of recent upgrade from 18.01):
ca_url: ""https://acme-v01.api.letsencrypt.org""
then I will get: ""Error: create_new_account"" on command line immediately.
in log:
2019-09-23 12:17:17.650 [error] <0.1030.0>@ejabberd_acme:ensure_account_exists:366 No existing account
2019-09-23 12:20:17.276 [error] <0.1678.0>@ejabberd_acme:create_new_account:287 Error: {error,badarg} creating an account for contact: <<""mailto:example@example.com"">>
thanks for helping on this",
677,https://api.github.com/repos/processone/ejabberd/issues/3034,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3034/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3034/comments,https://api.github.com/repos/processone/ejabberd/issues/3034/events,https://github.com/processone/ejabberd/issues/3034,498008859,MDU6SXNzdWU0OTgwMDg4NTk=,3034,block user from server no library ,"{'login': 'dverdugo85', 'id': 5117517, 'node_id': 'MDQ6VXNlcjUxMTc1MTc=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/5117517?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dverdugo85', 'html_url': 'https://github.com/dverdugo85', 'followers_url': 'https://api.github.com/users/dverdugo85/followers', 'following_url': 'https://api.github.com/users/dverdugo85/following{/other_user}', 'gists_url': 'https://api.github.com/users/dverdugo85/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dverdugo85/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dverdugo85/subscriptions', 'organizations_url': 'https://api.github.com/users/dverdugo85/orgs', 'repos_url': 'https://api.github.com/users/dverdugo85/repos', 'events_url': 'https://api.github.com/users/dverdugo85/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dverdugo85/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179050794, 'node_id': 'MDU6TGFiZWwxNzkwNTA3OTQ=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Privacy', 'name': 'Component:Privacy', 'color': 'fad8c7', 'default': False, 'description': None}, {'id': 352233730, 'node_id': 'MDU6TGFiZWwzNTIyMzM3MzA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Question', 'name': 'Kind:Question', 'color': 'fef2c0', 'default': False, 'description': None}, {'id': 175994827, 'node_id': 'MDU6TGFiZWwxNzU5OTQ4Mjc=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/should-go-to-so-sf', 'name': 'should-go-to-so-sf', 'color': 'bfd4f2', 'default': False, 'description': 'This is a usage questions. Should be directed to Server Fault or Stack Overflow'}]",closed,False,,[],,4,2019-09-25T02:13:23Z,2019-09-26T11:07:02Z,2019-09-25T17:24:01Z,NONE,,,"
**Describe the solution you'd like**
A clear and concise description of what you want to happen.
I want the server to block users between users, I want the server to do everything I work for.
I want to send a request to server with the info and the terminal block user!!
Regards!!!!!
",
678,https://api.github.com/repos/processone/ejabberd/issues/3033,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3033/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3033/comments,https://api.github.com/repos/processone/ejabberd/issues/3033/events,https://github.com/processone/ejabberd/issues/3033,497782999,MDU6SXNzdWU0OTc3ODI5OTk=,3033,19.08 Web admin config issues: Host not served,"{'login': 'Emilio-Gonzalez', 'id': 16757008, 'node_id': 'MDQ6VXNlcjE2NzU3MDA4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/16757008?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Emilio-Gonzalez', 'html_url': 'https://github.com/Emilio-Gonzalez', 'followers_url': 'https://api.github.com/users/Emilio-Gonzalez/followers', 'following_url': 'https://api.github.com/users/Emilio-Gonzalez/following{/other_user}', 'gists_url': 'https://api.github.com/users/Emilio-Gonzalez/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Emilio-Gonzalez/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Emilio-Gonzalez/subscriptions', 'organizations_url': 'https://api.github.com/users/Emilio-Gonzalez/orgs', 'repos_url': 'https://api.github.com/users/Emilio-Gonzalez/repos', 'events_url': 'https://api.github.com/users/Emilio-Gonzalez/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Emilio-Gonzalez/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179040989, 'node_id': 'MDU6TGFiZWwxNzkwNDA5ODk=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Bug', 'name': 'Kind:Bug', 'color': 'e11d21', 'default': False, 'description': None}]",closed,False,,[],,1,2019-09-24T16:03:15Z,2019-09-24T16:08:03Z,2019-09-24T16:08:03Z,NONE,,,"## Environment
- ejabberd version: 19.08
- OS: Linux (CentOS)
- Installed from: official rpm
## Bug description
Same configuration as in 19.05 (it works ok in this version) but now I can´t access Web Admin in 19.08.
It says **Host not served**
Any new config is needed?
As default config It doesn't work neither.
",
679,https://api.github.com/repos/processone/ejabberd/issues/3032,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3032/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3032/comments,https://api.github.com/repos/processone/ejabberd/issues/3032/events,https://github.com/processone/ejabberd/issues/3032,497464304,MDU6SXNzdWU0OTc0NjQzMDQ=,3032,mod_hello_world not running ,"{'login': 'shaggi7', 'id': 54536845, 'node_id': 'MDQ6VXNlcjU0NTM2ODQ1', 'avatar_url': 'https://avatars1.githubusercontent.com/u/54536845?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/shaggi7', 'html_url': 'https://github.com/shaggi7', 'followers_url': 'https://api.github.com/users/shaggi7/followers', 'following_url': 'https://api.github.com/users/shaggi7/following{/other_user}', 'gists_url': 'https://api.github.com/users/shaggi7/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/shaggi7/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/shaggi7/subscriptions', 'organizations_url': 'https://api.github.com/users/shaggi7/orgs', 'repos_url': 'https://api.github.com/users/shaggi7/repos', 'events_url': 'https://api.github.com/users/shaggi7/events{/privacy}', 'received_events_url': 'https://api.github.com/users/shaggi7/received_events', 'type': 'User', 'site_admin': False}","[{'id': 175994827, 'node_id': 'MDU6TGFiZWwxNzU5OTQ4Mjc=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/should-go-to-so-sf', 'name': 'should-go-to-so-sf', 'color': 'bfd4f2', 'default': False, 'description': 'This is a usage questions. Should be directed to Server Fault or Stack Overflow'}]",closed,False,,[],,4,2019-09-24T05:29:37Z,2019-09-24T06:50:42Z,2019-09-24T05:31:49Z,NONE,,,"Hi,
I am making a custom module following the tutorial https://docs.ejabberd.im/developer/extending-ejabberd/modules/
I have build a new ejabberd instance from source just today . Here are the steps I did
1. Made a file mod_hello_world.erl and copied the code from tutorial in it.
2. Saved this file in ""ejabberd-master/src"" folder .
3. sudo make install
4. Succesfully created .beam file in the ""ejabberd-master/bin"" folder .
5. Updated the ejabberd.yml file as follow:
```
mod_vcard: {}
mod_vcard_xupdate: {}
mod_version:
show_os: false
mod_hello_world: {}
```
now when i am running the the command ""ejabberdctl live"" I am getting this abrupt behaviour :
```
$ ejabberdctl live
--------------------------------------------------------------------
IMPORTANT: ejabberd is going to start in LIVE (interactive) mode.
All log messages will be shown in the command shell.
You can interact with the ejabberd node if you know how to use it.
Please be extremely cautious with your actions,
and exit immediately if you are not completely sure.
To exit this LIVE mode and stop ejabberd, press:
q(). and press the Enter key
--------------------------------------------------------------------
To bypass permanently this warning, add to ejabberdctl.cfg the line:
EJABBERD_BYPASS_WARNINGS=true
Press return to continue
Erlang/OTP 22 [erts-10.4.4] [source] [64-bit] [smp:12:12] [ds:12:12:10] [async-threads:1]
Eshell V10.4.4 (abort with ^G)
(ejabberd@localhost)1> 10:51:24.339 [notice] Changed loghwm of /usr/local/var/log/ejabberd/error.log to 100
10:51:24.339 [notice] Changed loghwm of /usr/local/var/log/ejabberd/ejabberd.log to 100
10:51:24.370 [info] Loading configuration from /usr/local/etc/ejabberd/ejabberd.yml
10:51:24.450 [critical] Failed to start ejabberd application: Invalid value of option modules: unknown ejabberd module: mod_hello_world. Did you mean mod_disco_opt?
```
What step did i miss or overdo? Please help.
",
680,https://api.github.com/repos/processone/ejabberd/issues/3031,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3031/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3031/comments,https://api.github.com/repos/processone/ejabberd/issues/3031/events,https://github.com/processone/ejabberd/issues/3031,497011536,MDU6SXNzdWU0OTcwMTE1MzY=,3031,Problem Connecting to Database in custom module.,"{'login': 'shaggi7', 'id': 54536845, 'node_id': 'MDQ6VXNlcjU0NTM2ODQ1', 'avatar_url': 'https://avatars1.githubusercontent.com/u/54536845?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/shaggi7', 'html_url': 'https://github.com/shaggi7', 'followers_url': 'https://api.github.com/users/shaggi7/followers', 'following_url': 'https://api.github.com/users/shaggi7/following{/other_user}', 'gists_url': 'https://api.github.com/users/shaggi7/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/shaggi7/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/shaggi7/subscriptions', 'organizations_url': 'https://api.github.com/users/shaggi7/orgs', 'repos_url': 'https://api.github.com/users/shaggi7/repos', 'events_url': 'https://api.github.com/users/shaggi7/events{/privacy}', 'received_events_url': 'https://api.github.com/users/shaggi7/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,5,2019-09-23T10:20:05Z,2019-09-24T07:29:38Z,2019-09-23T12:02:52Z,NONE,,,"Hi,
I am building a custom module to get all registerd user from a list of users .
I am trying to coneect to database. ODBC are all set up as i am seeing the output of the following command:
```
$ isql MySQL ejabberd 9009
+---------------------------------------+
| Connected! |
| |
| sql-statement |
| help [tablename] |
| quit |
| |
+---------------------------------------+
SQL>
```
Ejabberd compiling succesfully. But when running the Live command i am gettin the following errors:
```
$ ejabberdctl live
--------------------------------------------------------------------
IMPORTANT: ejabberd is going to start in LIVE (interactive) mode.
All log messages will be shown in the command shell.
You can interact with the ejabberd node if you know how to use it.
Please be extremely cautious with your actions,
and exit immediately if you are not completely sure.
To exit this LIVE mode and stop ejabberd, press:
q(). and press the Enter key
--------------------------------------------------------------------
To bypass permanently this warning, add to ejabberdctl.cfg the line:
EJABBERD_BYPASS_WARNINGS=true
Press return to continue
Erlang/OTP 22 [erts-10.4.4] [source] [64-bit] [smp:12:12] [ds:12:12:10] [async-threads:1]
Eshell V10.4.4 (abort with ^G)
(ejabberd@localhost)1> 15:45:38.418 [notice] Changed loghwm of /usr/local/var/log/ejabberd/error.log to 100
15:45:38.418 [notice] Changed loghwm of /usr/local/var/log/ejabberd/ejabberd.log to 100
15:45:38.454 [info] Loading configuration from /usr/local/etc/ejabberd/ejabberd.yml
15:45:38.546 [info] Configuration loaded successfully
15:45:38.644 [info] Building language translation cache
15:45:38.701 [warning] Path /etc/letsencrypt/live/localhost/fullchain.pem is empty, please make sure ejabberd has sufficient rights to read it
15:45:38.702 [warning] Path /etc/letsencrypt/live/localhost/privkey.pem is empty, please make sure ejabberd has sufficient rights to read it
15:45:38.731 [info] Loading modules for 192.168.4.69
15:45:38.784 [info] >>>>>>>>>>>>>>>>>>>>>>>>>>>HERE is my MODULE<<<<<<<<<<<<<<<<<<<<<<<<<<<<
15:45:38.791 [critical] Internal error of module mod_search_users has occurred during start:
** Options: #{}
** exception error: no match of right hand side value {error,
""[unixODBC][Driver Manager]Data source name not found and no default driver specified SQLSTATE IS: IM002 Connection to database failed.""}
in function mod_search_users:start/2 (src/mod_search_users.erl, line 16)
in call from gen_mod:start_module/4 (src/gen_mod.erl, line 149)
in call from lists:foreach/2 (lists.erl, line 1338)
in call from gen_mod:start_link/0 (src/gen_mod.erl, line 76)
in call from supervisor:do_start_child_i/3 (supervisor.erl, line 379)
in call from supervisor:do_start_child/2 (supervisor.erl, line 365)
in call from supervisor:'-start_children/2-fun-0-'/3 (supervisor.erl, line 349)
in call from supervisor:children_map/4 (supervisor.erl, line 1157)
15:45:38.791 [critical] ejabberd initialization was aborted because a module start failed.
```
What is wrong . please Help!!!!",
681,https://api.github.com/repos/processone/ejabberd/issues/3030,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3030/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3030/comments,https://api.github.com/repos/processone/ejabberd/issues/3030/events,https://github.com/processone/ejabberd/issues/3030,496945033,MDU6SXNzdWU0OTY5NDUwMzM=,3030,Q: Using PEP auto-subscribe with custom roster,"{'login': 'pdorofiejczyk', 'id': 1422873, 'node_id': 'MDQ6VXNlcjE0MjI4NzM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1422873?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/pdorofiejczyk', 'html_url': 'https://github.com/pdorofiejczyk', 'followers_url': 'https://api.github.com/users/pdorofiejczyk/followers', 'following_url': 'https://api.github.com/users/pdorofiejczyk/following{/other_user}', 'gists_url': 'https://api.github.com/users/pdorofiejczyk/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/pdorofiejczyk/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/pdorofiejczyk/subscriptions', 'organizations_url': 'https://api.github.com/users/pdorofiejczyk/orgs', 'repos_url': 'https://api.github.com/users/pdorofiejczyk/repos', 'events_url': 'https://api.github.com/users/pdorofiejczyk/events{/privacy}', 'received_events_url': 'https://api.github.com/users/pdorofiejczyk/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-09-23T07:54:40Z,2020-06-24T10:43:57Z,2020-06-24T10:43:57Z,CONTRIBUTOR,,,"W have our custom roster on hook `roster_get` and we are trying to make it work with PEP auto-subscribe. It looks like auto-subscribe works only when ""normal"" subscription flow had place and stanzas `` and `` have beed send.
We have tried to find solution in the source code but modules `mod_pubsub` and `node_pep` etc are very complicated. Do you have any tips how to make it work in our case?",
682,https://api.github.com/repos/processone/ejabberd/issues/3029,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3029/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3029/comments,https://api.github.com/repos/processone/ejabberd/issues/3029/events,https://github.com/processone/ejabberd/issues/3029,496820777,MDU6SXNzdWU0OTY4MjA3Nzc=,3029,Presence not correctly rejected after stopping mod_muc,"{'login': 'lovetox', 'id': 8661218, 'node_id': 'MDQ6VXNlcjg2NjEyMTg=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/8661218?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/lovetox', 'html_url': 'https://github.com/lovetox', 'followers_url': 'https://api.github.com/users/lovetox/followers', 'following_url': 'https://api.github.com/users/lovetox/following{/other_user}', 'gists_url': 'https://api.github.com/users/lovetox/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/lovetox/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/lovetox/subscriptions', 'organizations_url': 'https://api.github.com/users/lovetox/orgs', 'repos_url': 'https://api.github.com/users/lovetox/repos', 'events_url': 'https://api.github.com/users/lovetox/events{/privacy}', 'received_events_url': 'https://api.github.com/users/lovetox/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179682417, 'node_id': 'MDU6TGFiZWwxNzk2ODI0MTc=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:S2S', 'name': 'Component:S2S', 'color': 'd4c5f9', 'default': False, 'description': None}, {'id': 179040989, 'node_id': 'MDU6TGFiZWwxNzkwNDA5ODk=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Bug', 'name': 'Kind:Bug', 'color': 'e11d21', 'default': False, 'description': None}]",open,False,,[],"{'url': 'https://api.github.com/repos/processone/ejabberd/milestones/11', 'html_url': 'https://github.com/processone/ejabberd/milestone/11', 'labels_url': 'https://api.github.com/repos/processone/ejabberd/milestones/11/labels', 'id': 1437111, 'node_id': 'MDk6TWlsZXN0b25lMTQzNzExMQ==', 'number': 11, 'title': 'ejabberd 20.xx', 'description': '', 'creator': {'login': 'mremond', 'id': 86736, 'node_id': 'MDQ6VXNlcjg2NzM2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/86736?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mremond', 'html_url': 'https://github.com/mremond', 'followers_url': 'https://api.github.com/users/mremond/followers', 'following_url': 'https://api.github.com/users/mremond/following{/other_user}', 'gists_url': 'https://api.github.com/users/mremond/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mremond/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mremond/subscriptions', 'organizations_url': 'https://api.github.com/users/mremond/orgs', 'repos_url': 'https://api.github.com/users/mremond/repos', 'events_url': 'https://api.github.com/users/mremond/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mremond/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 35, 'closed_issues': 4, 'state': 'open', 'created_at': '2015-12-01T10:25:26Z', 'updated_at': '2020-09-03T18:38:17Z', 'due_on': None, 'closed_at': None}",0,2019-09-22T19:18:29Z,2020-02-18T10:01:12Z,,NONE,,,"## Environment
- ejabberd version: 18.05
- OS: Linux (Debian)
- Installed from: distro package
## Bug description
After stopping mod_muc, the first presence that arrives from a remote server to the muc service domain is not properly rejected with a presence error.
Instead ejabberd terminates the s2s connection to the remote server.
Only the second presence is answered correctly with an error.
After discussion with @zinid it was determined
> 1) mod_muc is stopped, ejabberd doesn't know anything about conference.domain.tld
> 2) ejabberd receives stanza via existing s2s stream to conference.domain.tld, but doesn't find it in route table
> 3) ejabberd terminates the s2s stream with host-unknown
> 4) you send next stanza and a new stream is rejected with host unknown and you receive the error in the client",
683,https://api.github.com/repos/processone/ejabberd/issues/3028,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3028/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3028/comments,https://api.github.com/repos/processone/ejabberd/issues/3028/events,https://github.com/processone/ejabberd/issues/3028,496647412,MDU6SXNzdWU0OTY2NDc0MTI=,3028,bad argument in call to erlang:iolist_to_binary,"{'login': 'shaggi7', 'id': 54536845, 'node_id': 'MDQ6VXNlcjU0NTM2ODQ1', 'avatar_url': 'https://avatars1.githubusercontent.com/u/54536845?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/shaggi7', 'html_url': 'https://github.com/shaggi7', 'followers_url': 'https://api.github.com/users/shaggi7/followers', 'following_url': 'https://api.github.com/users/shaggi7/following{/other_user}', 'gists_url': 'https://api.github.com/users/shaggi7/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/shaggi7/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/shaggi7/subscriptions', 'organizations_url': 'https://api.github.com/users/shaggi7/orgs', 'repos_url': 'https://api.github.com/users/shaggi7/repos', 'events_url': 'https://api.github.com/users/shaggi7/events{/privacy}', 'received_events_url': 'https://api.github.com/users/shaggi7/received_events', 'type': 'User', 'site_admin': False}","[{'id': 175994827, 'node_id': 'MDU6TGFiZWwxNzU5OTQ4Mjc=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/should-go-to-so-sf', 'name': 'should-go-to-so-sf', 'color': 'bfd4f2', 'default': False, 'description': 'This is a usage questions. Should be directed to Server Fault or Stack Overflow'}]",closed,False,,[],,1,2019-09-21T11:47:09Z,2019-09-21T15:27:46Z,2019-09-21T15:27:35Z,NONE,,,"Hi,
I am building a custom module in ejabberd.
This module is to make a http-request . Here is my code.
```
-module(mod_search_users).
-behaviour(gen_mod).
-include(""logger.hrl"").
-include(""xmpp.hrl"").
-include(""ejabberd_http.hrl"").
-export([start/2, stop/1, depends/2, mod_options/1, process/2]).
start(_Host, _Opts) ->
?INFO_MSG("">>>>>>>>>>>>>>>>>>>>>>>>>>>HERE is my MODULE<<<<<<<<<<<<<<<<<<<<<<<<<<<<"", []),
ok.
stop(_Host) ->
ok.
depends(HOST, _Opts) ->
[].
mod_options(HOST) ->
[].
process(Path, _Request) ->
{xmlelement, ""html"", [{""xmlns"", ""http://www.w3.org/1999/xhtml""}],
[{xmlelement, ""head"", [],
[{xmlelement, ""title"", [], []}]},
{xmlelement, ""body"", [],
[{xmlelement, ""p"", [], [{xmlcdata, is_user_exists(Path)}]}]}]}.
is_user_exists(User) ->
Result = ejabberd_auth:user_exists(User, ""localhost""),
case Result of
true -> ""The username "" ++ User ++ "" is already taken."";
false ->""The username "" ++ User ++ "" is available.""
end.
```
It is compiling correctly but when i make a request the url it shows the error:
```
17:15:13.749 [error] CRASH REPORT Process <0.599.0> with 0 neighbours crashed with reason: bad argument in call to erlang:iolist_to_binary([{xmlelement,""head"",[],[{xmlelement,""title"",[],[]}]},{xmlelement,""body"",[],[{xmlelement,""p"",[],...}]}]) in ejabberd_http:make_text_output/5 line 658
```
What is wrong i am dong in my code
",
684,https://api.github.com/repos/processone/ejabberd/issues/3027,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3027/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3027/comments,https://api.github.com/repos/processone/ejabberd/issues/3027/events,https://github.com/processone/ejabberd/issues/3027,495792209,MDU6SXNzdWU0OTU3OTIyMDk=,3027,Setting V-card request taking too long to .,"{'login': 'shaggi7', 'id': 54536845, 'node_id': 'MDQ6VXNlcjU0NTM2ODQ1', 'avatar_url': 'https://avatars1.githubusercontent.com/u/54536845?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/shaggi7', 'html_url': 'https://github.com/shaggi7', 'followers_url': 'https://api.github.com/users/shaggi7/followers', 'following_url': 'https://api.github.com/users/shaggi7/following{/other_user}', 'gists_url': 'https://api.github.com/users/shaggi7/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/shaggi7/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/shaggi7/subscriptions', 'organizations_url': 'https://api.github.com/users/shaggi7/orgs', 'repos_url': 'https://api.github.com/users/shaggi7/repos', 'events_url': 'https://api.github.com/users/shaggi7/events{/privacy}', 'received_events_url': 'https://api.github.com/users/shaggi7/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179053760, 'node_id': 'MDU6TGFiZWwxNzkwNTM3NjA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Note:Needs%20more%20info', 'name': 'Note:Needs more info', 'color': 'c7def8', 'default': False, 'description': None}]",closed,False,,[],,3,2019-09-19T13:14:48Z,2019-09-23T10:38:42Z,2019-09-23T10:38:42Z,NONE,,,"Hi Guys,
I am sending a request to 'set' vCard it is taking too much time to set . Here is the stanza i am sending
```
sagar@192.168.3.145/webAppI am now using Txt.Appimage.pngiVBORw0KGgoAAAANSUhEUgAACAAAAAgACAIAAAA9xURnAAAAA3NCSVQICAjb4U/gAAAAX3pUWHRSYXcgcHJvZmlsZSB0eXBlIEFQUDEAAAiZ40pPzUstykxWKCjKT8vMSeVSAANjEy4TSxNLo0QDAwMLAwgwNDAwNgSSRkC2OVQo0QAFmJibpQGhuVmymSmIzwUAT7oVaBst2IwAACAASURBVHic7N3fb5b1wcfxFmzRFLCzo6gDHSpqcQUKWqjKNKBRMWqWieHARA4ci9mTLJkxapapiSZGT1z8GWOmzqkkhMz4I2BlEsCghVJbsihsbAPkR+Yo29Si2AJ9Dp4liz4ooO39ucr9ev0F75M7d3J9ruv7ragAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYsirTAcesefPmXXDBBQcOHEiHAFC+Kisr+/r6Fi9e/Mc//jGY0dLS8uMf/7ivry/YAHHDhg3bs2fPgw8+mA4phJNOOulnP/tZTU1Nf39/ugVihg8f3tnZuWjRomBDdXX17bff7scIQNawYcO2bdv2+OOPp0OOTQaAwbJ48eJ58+alKwAodwcPHvzJT37y9NNPBxsmTpz45z//ORgABbFnz57vfve76YpCuPHGG3/3u9+lKyDvjjvueOCBB4IBZ511VkdHx+jRo4MNAFBRUdHV1dXU1JSuODYNSwccs/bv359OAICKvr6++F/S5s2b//73v2cboAhGjRq1YMGCdEUhTJ06NZ0AhZB9+l9RUbF//36f6AFQBP6PBo8BAAAYdJ2dnekEyKuurvbg+/9cdNFF6QTI27BhQzoBADj2GQAAgEH38ssvpxOgEKZNm5ZOKIQJEyakEyDv3XffTScAAMc+AwAAMOiefPLJffv2pSsg7wc/+EE6IW/BggW1tbXpCshbuHBhOgEAOPYZAACAUli/fn06AfJOOOGE+fPnpyvCpkyZMmLEiHQFhO3YsSN+SQ8AUA4MAABAKbS3t6cTIO/444+fNWtWuiJs+vTp6QTI6+joSCcAAGXBAAAAlMJdd93V29ubroC8SZMmpRPCGhoa0gkQ1t/fv2LFinQFAFAWDAAAQCn09PRs3bo1XQF5kydPTickXX/99SNHjkxXQFhPT8/DDz+crgAAyoIBAAAokXfeeSedAHmjRo2aPXt2uiLmkksuOf7449MVENbV1ZVOAADKhQEAACiRFStWOAUIqqqqfvSjH6UrYpz/AxUVFevWrUsnAADlwgAAAJTIc8899+9//ztdAXnl/BC8qakpnQBhe/fufeGFF9IVAEC5MAAAAKWzZs2adALkTZ06NZ2QcfHFF48aNSpdAWE7d+7s7OxMVwAA5cIAAACUTltbWzoB8urq6k444YR0RcANN9xQVVWVroCw1atXpxMAgDJiAAAASuehhx7as2dPugLy7r333nRCwKRJk9IJENbb2+tjOACglAwAAEDp9PX1/eUvf0lXQN60adPSCQGNjY3pBAjr7u5+9tln0xUAQBkxAAAAJbV8+fJ0AuSde+656YSA+vr6dAKEOf0fACgxAwAAUFKrVq3q6elJV0DYKaeckk4otfvvvz+dAHlvvvlmOgEAKC8GAACgpP7whz/s2rUrXQF5d955ZzqhpJqbm9MJENbd3d3a2pquAADKiwEAACi11atXpxMg7/LLL08nlNTEiRPTCRC2ffv2999/P10BAJQXAwAAUGpLlixJJ0De97///XRCSY0fPz6dAGGvvPJKOgEAKDsGAACg1FpbW7du3ZqugLAJEyakE0rn9ttvTydAWF9f3/Lly9MVAEDZMQAAAAEbN25MJ0Derbfemk4okXI77wj+v7/97W9r1qxJVwAAZccAAAAEPP/88+kEyLvqqqvSCSVSVp87wCF1dHSkEwCAcmQAAAACXnzxxY8++ihdAWHlcw3AGWeckU6AsKeeeiqdAACUIwMAAJCxadOmdAKEjRs3rqWlJV0x6H7+85+nEyDsww8/XLlyZboCAChHBgAAIKO1tTWdAGEjRoyYMWNGumLQzZ07N50AYW6+AQBSDAAAQMbdd9+dToC8crgd1wUAsHjx4nQCAFCmDAAAQMx7772XToCwSZMmpRMG18yZM0877bR0BST19/c/8cQT6QoAoEwZAACAmK6urnQChNXV1V122WXpikHU3Nw8YsSIdAUkdXZ2phMAgPJlAAAAYh577LF0AoSNGjVq+vTp6YpBdMUVV6QTIGz9+vXpBACgfBkAAICYd9555x//+Ee6AsJmzpyZThhE55xzTjoBwn71q1+lEwCA8mUAAACSvBcJTU1N6YTBMnv27DFjxqQrIGn79u2mbgAgyAAAACStXr26v78/XQFJtbW1s2bNSlcMimnTpo0ePTpdAUl2bgAgywAAACQ98MADn332WboCkk488cRLLrkkXTEoZsyYkU6ApIMHD65YsSJdAQCUNQMAABC2YcOGdAKETZ48OZ0wKM4///x0AiR9+umnjz76aLoCAChrBgAAIKytrS2dAGHNzc3phIHX0tLyne98J10BSe3t7ekEAKDcGQAAgLBFixbt3bs3XQFJdXV1Z599drpigM2ZM+fEE09MV0CSCwAAgDgDAAAQ1t7evmvXrnQFJI0cOXL+/PnpigHW2NiYToCkvXv3PvPMM+kKAKDcGQAAgLy33nornQBhx97jchcAUOa2b9++cePGdAUAUO4MAABA3po1a/r6+tIVkDR16tR0wkAaN25cfX19ugKSbNsAQBEYAACAvKeffrq7uztdAUnjx49PJwykm266qaamJl0BMb29vWvWrElXAAAYAACAYujs7EwnQFJ1dfVtt92WrhgwjY2NlZWV6QqI6e7u/u1vf5uuAAAwAAAAxbB8+fJ0AiRVVlY2NzenKwbMlClT0gmQ1NHRkU4AAKioMAAAAAXx8ssv7969O10BSeedd146YcBMmDAhnQBJra2t6QQAgIoKAwAAUBBbtmzZtm1bugKSzjnnnHTCwLj11lurq6vTFRCze/fupUuXpisAACoqDAAAQHG89tpr6QRIGjZs2M0335yuGAAzZ850AQDlbNu2bVu2bElXAABUVBgAAIDieP311/ft25eugKSrrroqnTAAGhoa0gmQ5PV/AKA4DAAAQFGsXbvWK5OUuYkTJ6YTBsDZZ5+dToCYzz//fNmyZekKAID/MAAAAAWybt26dAIkTZo0KZ3wbd10001VVVXpCojZsmVLW1tbugIA4D8MAABAgTzyyCPpBEgaPnz4pZdemq74Vq6++up0AiR1dHSkEwAA/ssAAAAUSEdHx44dO9IVkLRw4cJ0wrdybJxiBN/Yww8/nE4AAPgvAwAAUCzvv/9+OgGShvopQI2NjekEiNm5c6ez7ACAQjEAAADF8pvf/CadAElnnnlmOuGb++EPfzh8+PB0BcRs2rQpnQAA8AUGAACgWBYvXvz555+nKyBm5MiRc+fOTVd8Qz/96U/TCZC0aNGidAIAwBcYAACAwunq6konQNK8efPSCd9QQ0NDOgFiDhw44CM2AKBoDAAAQOG8/fbb6QRIampqSid8Q0P6/CL4ljZs2JBOAAD4MgMAAFA4v/jFL9IJkHTqqad+73vfS1cctdmzZ48ePTpdATGu/wUACsgAAAAU0ebNm9MJEDNmzJiWlpZ0xVGbP39+OgGSbrnllnQCAMCXGQAAgCJav359OgGSZs+enU44as3NzekEiPnggw/SCQAAh2AAAACKaMmSJQcOHEhXQMzFF1+cTjg69fX1p5xySroCYpz/AwAUkwEAACii3//+9//617/SFRBTX18/fvz4dMVRmDVrVn19fboCMg4ePPjGG2+kKwAADsEAAAAUVFtbWzoBYsaOHXvZZZelK47CUDyzCAbKJ5988tRTT6UrAAAOwQAAABTU2rVr+/v70xUQM3369HTCUbjwwgvTCRDT0dGRTgAAODQDAABQUPfdd9/HH3+croCYIfRIva6u7uSTT05XQEx7e3s6AQDg0AwAAEBxbd68OZ0AMePGjUsnHKlrrrlm7Nix6QrI6OnpeeaZZ9IVAACHZgAAAIpr1apV6QSIqa2tXbhwYbriiDQ1NVVWVqYrIGPHjh1/+tOf0hUAAIdmAAAAiuvNN9/s6elJV0BGVVVVY2NjuuKIXHTRRekEiFm5cmU6AQDgKxkAAIDiWrZs2YcffpiugJgZM2akE47Iaaedlk6AjH379r311lvpCgCAr2QAAAAKzZuVlLOzzjornXB4N998c21tbboCMrq7u1988cV0BQDAVzIAAACFtnr16oMHD6YrIKOmpmbBggXpisOYMmVKVVVVugIy2tvb0wkAAF/HAAAAFNpzzz23a9eudAVkVFdXz5w5M11xGOeff346AWJWrFiRTgAA+DoGAACg6N577710AsScd9556YTDmDhxYjoBMnbv3v3aa6+lKwAAvo4BAAAoupdeeimdADGNjY3phK9z4403jhw5Ml0BGVu2bNm6dWu6AgDg6xgAAICia21t/ec//5mugIyampq5c+emK75SS0vLiBEj0hWQsXTp0nQCAMBhGAAAgKLbunWrVywpW8cdd9y1116brvhKxT+hCAZJb2/vsmXL0hUAAIdhAAAAhoBXX301nQAxDQ0N6YSvNHXq1HQCZPz1r39dt25dugIA4DAMAADAEHDPPff09/enKyBj8uTJ6YRDu/LKK2tqatIVkNHW1pZOAAA4PAMAADA0bNq0KZ0AGbW1tcX8COC666477rjj0hWQ8eSTT6YTAAAOzwAAAAwNHR0d6QSIueWWW9IJh3DuueemEyBj586da9euTVcAAByeAQAAGBp++ctfphMgZsqUKemEQ2hsbEwnQMbGjRvTCQAAR8QAAAAMDR988EF3d3e6AjIK+K79mDFj6urq0hWQ8cILL6QTAACOiAEAABgyOjs70wmQUV9fn074sjvvvDOdABn79+9/9tln0xUAAEfEAAAADBlLly5NJ0DMPffck074gqampnQCZHR1daUTAACOlAEAABgyfv3rX/f29qYrIGPOnDnphC9oaGhIJ0CG638BgCHEAAAADCXvvvtuOgEyTj/99HTCF4wdOzadABn/87/s3XuYl3Wd//FBQDkZHpixJBIZBRWVo8jJA3hCOQiWlddee13rlpqdtq4td2vL1dLNw1amtLtlmVtqmiZqJo6iMiAnOYycQXEGDRA8cT4PM78/8leroTDD/b3f3+99Px5/wcz3+7mffxTCvGbu+8tfjk4AANhfBgAAoJTMnTs3OgFidOnSpXgeunvttddGJ0CM2tra6AQAgCYwAAAApWT8+PG7d++OroAYV199dXTCu4YPHx6dADH8IBoAUFoMAABAKVm2bNmf/vSn6AqIUTyPASi2+xFBOhoaGqqqqqIrAACawAAAAJSYGTNmRCdAjCL5snu7du26du0aXQEBNm/e/Itf/CK6AgCgCQwAAECJqa6udhcg8qlLly5nnnlmdIUnoJJfc+bMiU4AAGgaAwAAUGLuvPPOTZs2RVdAgFatWg0YMCC6omzEiBHRCRBj9uzZ0QkAAE1jAAAASo+7AJFbF110UXRCsdyJCFK2ZcuW733ve9EVAABNYwAAAEqPAYDcOvbYY2MDhgwZ0qVLl9gGCLFy5crt27dHVwAANI0BAAAoPffcc88777wTXQEBKioqRo4cGRgwZMiQ1q1bBwZAlClTpkQnAAA0mQEAACg9r732Wl1dXXQFBGjXrl3v3r0DA84555zAq0OUHTt2PP/889EVAABNZgAAAErSpEmTohMgxuDBgwOvfvzxxwdeHaK8+eabv/3tb6MrAACazAAAAJSkKVOmuBcz+XTKKadEXXrEiBEVFRVRV4dAs2fPjk4AAGgOAwAAUJKeeOKJ1atXR1dAgMMOO+zcc88NuXTv3r3bt28fcmmI9cwzz0QnAAA0hwEAAChV06dPj06AAIceeujQoUNDLj1o0KCQ60KsdevWPfzww9EVAADNYQAAAErVgw8+GJ0AMaKeA9ynT5+Q60KslStXrl27NroCAKA5DAAAQKl6/PHH//SnP0VXQIB+/fqlf9FzzjmnY8eO6V8Xwj366KPRCQAAzWQAAABK2PLly6MTIMDhhx+e/gZwxhlnfOQjH0n5ohBu+/btTz/9dHQFAEAzGQAAgBL229/+NjoBArRv337s2LEpX/TUU09N+YpQDOrq6ubMmRNdAQDQTAYAAKCE3XXXXVu2bImugAAnn3xyylcMue8QhJs5c2Z0AgBA8xkAAIDStnTp0ugECNCrV680L3fCCSccccQRaV4RisRPf/rT6AQAgOYzAAAApW3y5MnRCRCgc+fOaV7usssu69ChQ5pXhGKwatWqefPmRVcAADSfAQAAKG3XXHNNdAIEaN269b/927+ldrmTTjoptWtB8Vi2bFl0AgDAATEAAAAl76WXXopOgLS1aNHitNNOS+1yHgBAPv3sZz+LTgAAOCAGAACg5L344ovRCRAgze/KP/roo1O7FhSJ3bt3P/TQQ9EVAAAHxAAAAJS8u+66KzoBAlRWVqZzoW9/+9sHH3xwOteC4lFTUxOdAABwoAwAAEDJq6qqevvtt6MrIG0HHXTQV7/61RQu1L9//xYtWqRwISgqM2bMiE4AADhQBgAAIAvmzp0bnQABhg8fnsJVTjzxxBSuAsXma1/7WnQCAMCBMgAAAFkwbdq06AQI0L179xSucvzxx6dwFSgqtbW10QkAAAkwAAAAWfC9731v+/bt0RWQthS+N/+qq65q2bJloa8CxcYPlgEA2WAAAAAyYvHixdEJEGDUqFEFPf+CCy4o6PlQhPbs2fPEE09EVwAAJMAAAABkhKc1kk+f+9znCnp+OncZgqKyefPmu+++O7oCACABBgAAICMefvjhbdu2RVdA2iorKwt6/kknnVTQ86EIzZo1KzoBACAZBgAAICMmT578xhtvRFdA2o477rjCHT5mzJgWLVoU7nwoTrNnz45OAABIhgEAAMiOqVOnRidA2tq2bTtu3LgCHf53f/d3BToZCe6/mgAAIABJREFUitbmzZtvv/326AoAgGQYAACA7Jg+fXp9fX10BaTtU5/6VIFOPuGEEwp0MhSturq6N998M7oCACAZBgAAIDv+53/+56233oqugLSdeuqpBTq5W7duBToZipYfJgMAssQAAABkyqJFi6ITIG1HH330sccem/ixF154YYcOHRI/ForZ9u3bDQAAQJYYAACATKmqqopOgLQdccQRp59+euLHfvazn038TChyb7/99gMPPBBdAQCQGAMAAJApEydOfPvtt6MrIG3nn39+4mf27ds38TOhyD3//PPRCQAASTIAAACZsnjx4j/96U/RFZC2xH8C4Nhjj/3Yxz6W7JlQ/CZPnhydAACQJAMAAJA1EydOjE6AtJWXl/fo0SPBA08//fQjjzwywQOh+K1du/b++++PrgAASJIBAADImokTJ+7evTu6AlJVXl5+1llnJXjgOeeck+BpUBJqa2s3btwYXQEAkCQDAACQNVOnTq2rq4uugLT1798/wdMGDhyY4GlQEh5//PHoBACAhBkAAIAMmjdvXnQCpC3BL9kfc8wxFRUVSZ0GJWH79u1VVVXRFQAACTMAAAAZ9N///d/RCZC2BJ/Ze9555xkAyJva2lrjMQCQPQYAACCDpkyZsnbt2ugKSNXhhx/+xS9+MZGjevfuncg5UEKmT58enQAAkDwDAACQTYsXL45OgFS1bNmyV69eiRx15plnJnIOlJCbb745OgEAIHkGAAAgm+67777oBEjbgAEDEjnnox/9aCLnQKl49dVXX3nllegKAIDkGQAAgGy666676uvroysgVV27dj3wQ66++uojjjjiwM+BErJ06dLoBACAgjAAAACZNX/+/OgESFX79u2vuuqqAzykV69eLVu2TKQHSsVdd90VnQAAUBAGAAAgs2bOnBmdAKlq3bp1//79D/CQfv36JRIDpWLnzp0PPvhgdAUAQEEYAACAzPryl78cnQBpO+WUUw7whMrKykRKoFTU1NREJwAAFIoBAADIsrq6uugESNVJJ510IG+//PLL27dvn1QMlIRZs2ZFJwAAFIoBAADIsjlz5kQnQKratm37yU9+stlvHzhw4MEHH5xgDxS/r33ta9EJAACFYgAAALLsscce27NnT3QFpKdVq1YjR45s9ttPPfXUBGOg+L300kvRCQAABWQAAACy7J577tm0aVN0BaSqR48ezX5vz549EyyB4jdv3rzoBACAAjIAAAAZ98ILL0QnQKqa/RzgT37yk23btk02BorZnj17/vCHP0RXAAAUkAEAAMg4AwB5c+ihh55++unNeOOIESNatWqVeA8UrY0bN953333RFQAABWQAAAAy7sYbb3QXIPLm8ssvb8a7TjjhhMRLoJjNnj07OgEAoLAMAABAxu3cubO2tja6AlJ18sknN+Ndzb53EJQoPyIGAGSeAaBQWrRoEZ0AAGUHHXSQ/ySVlZVVV1dHJ0CqTjzxxKa+5aSTTurYsWMhYqA4bd68+brrrouuCHbQQQcddJAvCwAQz3+PCsctPgvl7bffXrduXX19fXQI+9DY2Hj00Uf7UwaaaufOnW+88Yb/7xS5Fi1a7NixY+vWrdEh8aqrq6+44op27dpFh0BKjjjiiKa+5Utf+lIhSqBo1dXVNTQ0RFcEq6+vX7Vq1fbt2xsbG6Nb+DCNjY3t27c//PDDo0Og9Lz11ls7duzwTVFFrmXLlmvXro2uyCz/64eyrVu3+pIQNNXChQtPPfXU6Apogrq6uq5du0ZXQHpuvfXWa665Zv9fP3Xq1KFDhxauB4rNbbfd9vWvfz26AvbXT37yk69+9avRFVBiGhsbv/a1r91+++3RIRDJd26C+zVBc7Rs2TI6AZpmypQp0QmQqqZ+Nf+kk04qUAkUoW3btk2dOjW6ApqgTZs20QlQkg499NDoBAhmAAAAcsFjAMibT3ziE016fTPuGgSl680333z44YejKwAACs4AAADkwl133bVmzZroCkhP586du3Xrtp8v/sEPflDQGCg2M2bMiE4AAEiDAQAAyIvly5dHJ0CqLr/88v18pbv/kzeTJ0+OTgAASIMBAADIi0ceeSQ6AVI1bNiw/XzlMcccU9ASKCpr16799a9/HV0BAJAGAwAAkBdVVVWbNm2KroD0fPzjH9+fl1VUVHTp0qXQMVA8Xnnlle3bt0dXAACkwQAAAOTF8uXL6+rqoisgPZ/4xCfOOuusfb7syiuvTCEGiocfCAMA8sMAAADkyMSJE6MTID0tWrTYnwFgxIgRKcRAkdi6dWtVVVV0BQBASgwAAECOXH/99dEJkKpzzjlnn6/p3LlzCiVQJGpraxcuXBhdAQCQEgMAAJAjO3bseOmll6IrID1du3b98BecffbZHgBArjz//PPRCQAA6TEAAAD5Mn/+/OgESE9FRcXYsWM/5AVDhw5t2bJlaj0Q7o477ohOAABIjwEAAMiXm266KToB0tOmTZvevXt/yAuGDRuWWgyEe/XVV5cuXRpdAQCQHgMAAJAv8+bN27BhQ3QFpGfw4MEf8tnjjjsutRIIt3jx4ugEAIBUGQAAgNypqamJToD0nHTSSR/0qZEjR3bq1CnNGIh15513RicAAKTKAAAA5M6kSZOiEyA9HTt2HDVq1F4/1adPn3bt2qXcA1F27tz5yCOPRFcAAKTKAAAA5M5//Md/1NfXR1dASjp06DBo0KC9fmro0KEpx0CguXPnRicAAKTNAAAA5NGLL74YnQDp+aDnAJ988skpl0CgadOmRScAAKTNAAAA5NG8efOiEyA9ffr0+dsPjhw5smPHjunHQIjGxsZrrrkmugIAIG0GAAAgj375y1/u3r07ugJS8pGPfORv7/YzcODADh06hPRA+l5++eXoBACAAAYAACCPXnjhhTVr1kRXQErat2//t88B/qD7AkEmeQAAAJBPBgAAIKdmzpwZnQDpOemkk973kb3eFwgyac+ePY899lh0BQBAAAMAAJBTzz//fH19fXQFpOR93+9/2mmnHXbYYVExkLKNGzfef//90RUAAAEMAABATo0fP37z5s3RFZCSo4466v/+dty4ce3bt4+KgZT5kS8AILcMAABAfs2ePTs6AVJy8MEH33DDDX/57d/eEQgybNasWdEJAAAxDAAAQH5NmzYtOgHS06tXr7/8ul+/foElkKbNmzd/73vfi64AAIhhAAAA8mvChAkbNmyIroCU9OzZ8y+/rqioCCyBNL388svRCQAAYQwAAEB+LVy48LXXXouugJR07dr1z7+4/vrrDz744NAWSM/UqVOjEwAAwhgAAIBce+aZZ6ITICUtWrT45je/WVZW1rt37+gWSMm2bduqq6ujKwAAwhgAAIBcmzJlys6dO6MrICVnnnlm2XvvBQTZ9uabb06YMCG6AgAgjAEAAMi1Rx55ZPXq1dEVkJLu3buXlZV169YtOgRS4mHvAEDOGQAAgLybPXt2dAKkpHv37hdffHGLFi2iQyAlzz33XHQCAEAkAwAAkHe/+93vohMgPdddd110AqRkzZo1v/jFL6IrAAAiGQAAgLx7+OGH3QWI/PAEYPLj5Zdfjk4AAAhmAAAAKFuxYkV0AgAJe+yxx6ITAACCGQAAAMoefPDB6AQAkrR58+annnoqugIAIJgBAACg7Kc//en27dujKwBITF1d3aJFi6IrAACCGQAAAMrKysqWLVsWnQBAYqZOnRqdAAAQzwAAAFBWVlY2bdq06AQAEvOjH/0oOgEAIJ4BAACgrKys7Ctf+Up0AgDJqKurq62tja4AAIhnAAAAeJevFgFkg7v/AwD8mQEAAOBd8+fPj04AIAHjx4+PTgAAKAoGAACAd917773RCQAcqG3btj311FPRFQAARcEAAADwrt///vcbN26MrgDggNTU1EQnAAAUCwMAAMBfzZ07NzoBgAMybdq06AQAgGJhAAAA+KsZM2ZEJwDQfI2Njf/yL/8SXQEAUCwMAAAAf/Wd73xn586d0RUANNPy5cujEwAAiogBAADgPZYtWxadAEAzuZMbAMD/ZQAAAHiP6dOnRycA0Bz19fUPPvhgdAUAQBExAAAAvMcTTzyxffv26AoAmmz9+vWPPvpodAUAQBExAAAAvMfjjz/+1ltvRVcA0GSzZs2KTgAAKC4GAACA95s2bVp0AgBN09jYaAAAAHgfAwAAwPtNnz69oaEhugKAJti0adMNN9wQXQEAUFwMAAAA73fHHXe4CxBAaVmxYkV0AgBA0TEAAADsxdKlS6MTAGiCKVOmRCcAABQdAwAAwF5UVVVFJwCwv7Zu3Tp58uToCgCAomMAAADYi6effnr9+vXRFQDslzfeeOOxxx6LrgAAKDoGAACAvZgzZ86qVauiKwDYL1OnTo1OAAAoRgYAAIC9e/rpp6MTANgv1dXV0QkAAMXIAAAAsHdPPPHEnj17oisA2Ic1a9bcdddd0RUAAMXIAAAAsHfPPPNMXV1ddAUA+7B8+fLoBACAImUAAAD4QAsWLIhOAGAfPP4XAOCDGAAAAD7QnXfeGZ0AwIfZvHnzU089FV0BAFCkDAAAAB/oySeffOutt6IrAPhAK1euXLJkSXQFAECRMgAAAHyYxYsXRycA8IGefvrp6AQAgOJlAAAA+DAPPfRQdAIAH+jWW2+NTgAAKF4GAACADzN+/PjGxsboCgD24pVXXlm7dm10BQBA8TIAAADsw/z586MTANiLRYsWRScAABQ1AwAAwD7Mnj07OgGAvfiv//qv6AQAgKJmAAAA2Id///d/j04A4P22bt361FNPRVcAABQ1AwAAwD68/vrrq1atiq4A4D1qamqiEwAAip0BAABg3+bMmROdAMB7TJ06NToBAKDYGQAAAPbtiSeeaGhoiK4A4F2NjY3f/va3oysAAIqdAQAAYN/uvPPOLVu2RFcA8K7FixdHJwAAlAADAADAfpk9e3Z0AgDv8gAAAID9YQAAANgvBgCAIlFfX//73/8+ugIAoAQYAAAA9ou7AAEUiXfeeefRRx+NrgAAKAEGAACA/VJbW/vqq69GVwBQNmvWrOgEAIDSYAAAANhfkydPjk4AyLvGxsYXXnghugIAoDQYAAAA9tfUqVN37NgRXQGQa1u2bLnhhhuiKwAASoMBAABgfz3wwANvvPFGdAVAri1ZsiQ6AQCgZBgAAACaYMaMGdEJALk2derU6AQAgJJhAAAAaILnnnsuOgEgv7Zs2fLss89GVwAAlAwDAABAE9x9991r166NrgDIqXXr1k2cODG6AgCgZBgAAACaYOfOnS+//HJ0BUBOPf/889EJAAClxAAAANA0f/jDH6ITAPKosbFx8uTJ0RUAAKXEAAAA0DRVVVVbt26NrgDInTVr1tx9993RFQAApcQAAADQNAsWLKirq4uuAMgdd2ADAGgqAwAAQJNNmjQpOgEgdx544IHoBACAEmMAAABosltuuSU6ASBfNmzY8Mwzz0RXAACUGAMAAECTvf7666+88kp0BUCO1NXVuQUQAEBTGQAAAJpj4cKF0QkAOfLss89GJwAAlB4DAABAc4wfPz46ASBHfvzjH0cnAACUHgMAAEBzPPPMM1u2bImuAMiFFStWrF69OroCAKD0GAAAAJpp3rx50QkAubBo0aLoBACAkmQAAABopurq6ugEgFy49dZboxMAAEqSAQAAoJmuvfbahoaG6AqAjNu8efP06dOjKwAASpIBAACg+RYuXBidAJBxNTU10QkAAKXKAAAA0Hxz586NTgDIuOeeey46AQCgVBkAAACa7957762vr4+uAMisPXv2XHfdddEVAAClygAAANB8zz777Lp166IrADJr6dKl0QkAACXMAAAAcEBmzpwZnQCQWfPmzYtOAAAoYQYAAIADMmPGjIaGhugKgAyqr6//3e9+F10BAFDCDAAAAAfkhz/84aZNm6IrADLonXfe+eMf/xhdAQBQwgwAAAAH6sUXX4xOAMig559/PjoBAKC0GQAAAA6UL1EBJK6hoeGFF16IrgAAKG0GAACAA/X4449v3LgxugIgUzZt2nTzzTdHVwAAlDYDAADAgZo1a9bq1aujKwAyZenSpdEJAAAlzwAAAJCA5557LjoBIFPcXQ0A4MAZAAAAElBdXb179+7oCoCM2LJlyzPPPBNdAQBQ8gwAAAAJePDBB90FCCAp69atq6qqiq4AACh5BgAAgGTU1NREJwBkRHV1dXQCAEAWGAAAAJLxu9/9LjoBIAsaGxs9WAUAIBEGAACAZPz+979fu3ZtdAVAyVu9evU999wTXQEAkAUGAACAZOzevfuVV16JrgAoeUuWLIlOAADICAMAAEBiHnnkkegEgJL32GOPRScAAGSEAQAAIDH/+Z//uXv37ugKgBK2YcOGqqqq6AoAgIwwAAAAJGnp0qXRCQAlrK6ubsWKFdEVAAAZYQAAAEjSrFmzohMAStikSZOiEwAAssMAAACQpCuvvDI6AaCEfetb34pOAADIDgMAAEDCXnvttegEgJK0fPnyPXv2RFcAAGSHAQAAIGEvvvhidAJASVq4cGF0AgBAphgAAAAS9tBDD0UnAJSkm2++OToBACBTDAAAAAn7zW9+s2XLlugKgBKzcePGOXPmRFcAAGSKAQAAIHnz5s2LTgAoMTU1NdEJAABZYwAAAEjerFmzohMASkx1dXV0AgBA1hgAAACSd8011+zcuTO6AqBkNDQ0XHfdddEVAABZYwAAACiI2tra6ASAkrFo0aLoBACADDIAAAAUxLRp06ITAEqGx/8CABSCAQAAoCCqqqp27NgRXQFQAurr6++9997oCgCADDIAAAAUxEMPPfTOO+9EVwCUgDfffPPZZ5+NrgAAyCADAABAocyYMSM6AaAEzJw5MzoBACCbDAAAAIUyffr0xsbG6AqAotbQ0GAuBQAoEAMAAECh/OhHP3rrrbeiKwCK2qZNm2699dboCgCAbDIAAAAU0MsvvxydAFDUlixZEp0AAJBZBgAAgAJ68sknoxMAitrUqVOjEwAAMssAAABQQM8999zGjRujKwCK1KZNmyZOnBhdAQCQWQYAAIACev7551evXh1dAVCk1q1bV11dHV0BAJBZBgAAgMJ67rnnohMAitTkyZOjEwAAsswAAABQWI8//nh0AkAx2rNnz5QpU6IrAACyzAAAAFBYTz75ZF1dXXQFQNFZs2bNPffcE10BAJBlBgAAgIJbtGhRdAJA0VmyZEl0AgBAxhkAAAAK7le/+lV0AkDRefjhh6MTAAAyzgAAAFBwEyZMWL9+fXQFQBFZv379pEmToisAADLOAAAAkAZ3ugD4v2pra2tra6MrAAAyzgAAAJCGxx57LDoBoIg8+eST0QkAANlnAAAASMMtt9wSnQBQRG644YboBACA7DMAAACkZNGiRdEJAEVh+fLlO3bsiK4AAMg+AwAAQErmzZsXnQBQFObPnx+dAACQCwYAAICU3HbbbdEJAEXhBz/4QXQCAEAuGAAAAFJSU1Ozbt266AqAYBs3bnzxxRejKwAAcsEAAACQnhdeeCE6ASBYTU1NdAIAQF4YAAAA0jNp0qSGhoboCoBIVVVV0QkAAHlhAAAASM/tt9++bdu26AqAMPX19TfddFN0BQBAXhgAAABSNW/evOgEgDALFy6MTgAAyBEDAABAqmbPnh2dABDGCAoAkCYDAABAqn7zm99s3bo1ugIgQH19/b333htdAQCQIwYAAIBUzZ8/f9WqVdEVAAHeeOON5557LroCACBHDAAAAGmrrq6OTgAIMGPGjOgEAIB8MQAAAKRt+vTpu3btiq4ASFVDQ8OsWbOiKwAA8sUAAACQtv/93/998803oysAUrVp06Zbb701ugIAIF8MAAAAAV544YXoBIBULViwIDoBACB3DAAAAAGeffbZ6ASAVE2bNi06AQAgdwwAAAABJkyY8MYbb0RXAKRk06ZNVVVV0RUAALljAAAACLB69era2troCoCUvP7669XV1dEVAAC5YwAAAIjxxz/+MToBICW++g8AEMIAAAAQ44knnti+fXt0BUDB7dmzxwAAABDCAAAAEGPevHkrV66MrgAouDVr1tx3333RFQAAeWQAAAAIM3ny5OgEgIJbsGBBdAIAQE4ZAAAAwtx+++3RCQAFN2HChOgEAICcMgAAAIRZtmzZq6++Gl0BUEBvv/12VVVVdAUAQE4ZAAAAIi1evDg6AaCAamtrV61aFV0BAJBTBgAAgEi/+MUvohMACsi3/wMABDIAAABEmjBhwvbt26MrAArl2muvjU4AAMgvAwAAQLC5c+dGJwAUxJIlSxobG6MrAADyywAAABCsRYsW0QkABeHPNwCAWAYAAIBggwYNik4AKIgTTzzxqKOOiq4AAMgvAwAAQKQvfOELBx3kr2RAZn3nO9+JTgAAyC//2gQAiPTZz342OgGggM4666zoBACA/DIAAABE6tmzZ3QCQAFVVlb27t07ugIAIKcMAAAAYcaOHdupU6foCoACateu3ciRI6MrAAByygAAABDmH//xH6MTAApu9OjR0QkAADllAAAACHPKKadEJwAUXLdu3bp27RpdAQCQRwYAAIAYI0aM8BUxIA/Ky8v9EAAAQAgDAABAjM9+9rPRCQApueiii6ITAADyyAAAABBj6NCh0QkAKendu3d0AgBAHhkAAAACjBkzpnPnztEVACkpLy//whe+EF0BAJA7BgAAgADDhg1r06ZNdAVASlq2bHnGGWdEVwAA5I4BAAAgwLnnnhudAJAq9z0DAEifAQAAIG2DBg3q0qVLdAVAqioqKkaPHh1dAQCQLwYAAIC0jRo1qmPHjtEVAKlq06bNyJEjoysAAPLFAAAAkLazzz47OgEgwODBg6MTAADyxQAAAJC2k08+OToBIMAJJ5wQnQAAkC8GAACAVF177bUf+chHoisAArRu3fqHP/xhdAUAQI4YAAAAUuUOGECenX766dEJAAA5YgAAAEjVgAEDohMAwvTt2zc6AQAgRwwAAADpufLKKzt27BhdARCmbdu2X/nKV6IrAADywgAAAJCeESNGHHSQv4ABuTZy5MjoBACAvPDvTwCA9Lj/D0C/fv2iEwAA8sIAAACQkmOPPbZz587RFQDBOnXqdPjhh0dXAADkggEAACAl3//+96MTAIrCz3/+8+gEAIBcMAAAAKSkf//+0QkARaF3797RCQAAuWAAAABISY8ePaITAIrCcccd16VLl+gKAIDsMwAAAKThlltuiU4AKCLf/OY3oxMAALLPAAAAkIbhw4dHJwAUkbPOOis6AQAg+wwAAABp6NmzZ3QCQBGprKz0JAAAgEIzAAAAFNw//dM/tWnTJroCoIi0b99+xIgR0RUAABlnAAAAKLhPf/rT0QkARWfs2LHRCQAAGWcAAAAorCOOOOL444+PrgAoOt26devWrVt0BQBAlhkAAAAKa+zYseXl5dEVAEWnvLx8zJgx0RUAAFlmAAAAKKxLL700OgGgSF1wwQXRCQAAWWYAAAAorJNPPjk6AaBI9erVKzoBACDLDAAAAAV0+eWXd+7cOboCoEiVl5dfddVV0RUAAJllAAAAKKBzzjmnRYsW0RUARapVq1ZDhw6NrgAAyCwDAABAAfnCFsCHO/PMM6MTAAAyywAAAFAol156aUVFRXQFQFErLy+/8MILoysAALLJAAAAUCjDhw9v27ZtdAVAUWvbtu24ceOiKwAAsskAAABQKMOHD49OACgBgwcPjk4AAMgmAwAAQEGcfvrpnTt3jq4AKAHHHXdcdAIAQDYZAAAACuKyyy5r3759dAVACTjkkENuvfXW6AoAgAwyAAAAFMSgQYOiEwBKxsCBA6MTAAAyyAAAAFAQJ598cnQCQMno169fdAIAQAYZAAAAknfddde1a9cuugKgZLRt2/bqq6+OrgAAyBoDAABA8oYMGRKdAFBiLr744ugEAICsMQAAACTPAwAAmqp///7RCQAAWWMAAABI2D/8wz+0b98+ugKgxBx55JHHHXdcdAUAQKYYAAAAEnbppZdGJwCUpBtvvDE6AQAgUwwAAAAJ69u3b3QCQEnq06dPdAIAQKYYAAAAklReXv7Rj340ugKgJB1//PEf//jHoysAALLDAAAAkKQf//jH0QkAJewb3/hGdAIAQHYYAAAAktS/f//oBIASNmzYsOgEAIDsMAAAACSpR48e0QkAJayysvKUU06JrgAAyAgDAABAYtz/B+AAtW/ffuTIkdEVAAAZYQAAAEjMOeecE50AUPLGjh0bnQAAkBEGAACAZPTq1auysjK6AqDkdevWrVu3btEVAABZYAAAAEjG6NGj27VrF10BUPLKy8vHjBkTXQEAkAUGAACAZIwePTo6ASAjzjvvvOgEAIAsMAAAACSge/fublgBkJQ+ffpEJwAAZIEBAAAgASNHjuzUqVN0BUBGlJeXX3XVVdEVAAAlzwAAAJCACy64IDoBIDtatWo1ePDg6AoAgJJnAAAASIC7VQAka9iwYdEJAAAlzwAAAHCgvvKVr7j/D0CyysvLPVwdAOAAGQAAAA7UGWeccdBB/loFkKQ2bdqMGjUqugIAoLT5lyoAwIEaMmRIdAJABg0aNCg6AQCgtBkAAAAOyGWXXXbkkUdGVwBkUPfu3aMTAABKmwEAAOCAnH/++Yccckh0BUAGHXLIIbfcckt0BQBACTMAAAAcEPf/ASicgQMHRicAAJQwAwAAQPMdddRRXbt2ja4AyKzTTjstOgEAoIQZAAAAmu/6669v3bp1dAVAZrVp0+ZLX/pSdAUAQKkyAAAANJ9vTQUotDFjxkQnAACUKgMAAEDz9erVKzoBIOP69u0bnQAAUKoMAAAAzXT99de3bNkyugIg4zp16tSjR4/oCgCAkmQAAABopuHDh0cnAOTCddddF50AAFCSDAAAAM3krhQA6fDnLQBA8xgAAACaY9y4ce3atYuuAMiF7t27H3b1nGm0AAAgAElEQVTYYdEVAAClxwAAANAcV111VXQCQI5897vfjU4AACg9BgAAgOY45ZRTohMAcuT888+PTgAAKD0GAACAJjvzzDOPPvro6AqAHOnWrVuvXr2iKwAASowBAACgyb785S9HJwDkS7t27S666KLoCgCAEmMAAABosj59+kQnAOTOmDFjohMAAEqMAQAAoGnOO++8bt26RVcA5E5lZeUxxxwTXQEAUEoMAAAATXPxxRcfdJC/RAGkrby8/OKLL46uAAAoJf7tCgDQNMOHD49OAMip8847LzoBAKCUGAAAAJpg+PDhXbp0ia4AyKn+/ftHJwAAlBIDAABAE5xzzjkdOnSIrgDIqfLy8i984QvRFQAAJcMAAADQBBdeeGF0AkB+tWzZcsiQIdEVAAAlwwAAALC/TjzxxK5du0ZXAOTaGWecEZ0AAFAyDAAAAPvr05/+9OGHHx5dAZBrRx111KhRo6IrAABKgwEAAGB/nXnmmdEJAHnXpk0bAwAAwH4yAAAA7K/evXtHJwBQNmjQoOgEAIDSYAAAANgv//zP/3zYYYdFVwBQ1qNHj+gEAIDSYAAAANgvQ4YMOeggf3cCiHfIIYfccsst0RUAACXAP2IBAPbLGWecEZ0AwLsGDhwYnQAAUAIMAAAA+/aZz3zm8MMPj64A4F2nnXZadAIAQAkwAAAA7Nu4ceNatmwZXQHAu9q0afPFL34xugIAoNgZAAAA9m3AgAHRCZCMFStWRCdAMsaMGROdAABQ7AwAAAD70LZt22OPPTa6ApJx1113RSdAMvr27RudAABQ7AwAAAD78JOf/CQ6AZKxbt26H/zgB9EVkIzy8vJjjjkmugIAoKgZAAAA9sH9f8iMl19+uaysbMOGDdEhkIybbropOgEAoKgZAAAA9qFXr17RCZCMl156qaysbPHixdEhkIw+ffpEJwAAFDUDAADAh/nud78bnQCJeeCBB8r+/88BQAb06NHj0EMPja4AACheBgAAgA8zcuTI6ARIxq5du5566qmysrIpU6bs2bMnOgeS8f3vfz86AQCgeBkAAAA+TM+ePaMTIBnLly//8y9+9atf7dq1KzYGkjJs2LDoBACA4mUAAAD4QJ///Oc7dOgQXQHJ+L93/lm5cmVcCCSpsrLylFNOia4AAChSBgAAgA902WWXRSdAYubPn/+XXy9atCiwBBLUvn37UaNGRVcAABQpAwAAwAc64YQTohMgGbt27Ro/fvxffrts2bLAGEjW6NGjoxMAAIqUAQAAYO8+85nPHH300dEVkIz169e/8847f/ntxIkTt27dGtgDCaqsrPTHNQDAXhkAAAD27lOf+lR0AiRmwYIF//e3M2bM2LJlS1QMJKuiouKSSy6JrgAAKEYGAACAvRswYEB0AiRm+fLl7/vI+yYBKGkXXnhhdAIAQDEyAAAA7MVll13WuXPn6ApIxs6dO2fNmvW+Dy5cuDAkBgqhb9++0QkAAMXIAAAAsBfDhw9v2bJldAUkY/v27ffcc8/7Prhw4cKdO3eG9EDiOnXqdOWVV0ZXAAAUHQMAAMBenH322dEJkJhXX331bz949913b9q0Kf0YKIRWrVqdccYZ0RUAAEXHAAAA8H6jRo362Mc+Fl0Biampqdnrx19//fWUS6BwDAAAAH/LAAAA8H7nnntu+/btoysgMUuXLt3rx2fPnp1yCRRORUXFRRddFF0BAFBcDAAAAO/n/j9kyYYNG6ZMmbLXT7344ospx0DhtG3bdvTo0dEVAADFxQAAAPAebdu2raysjK6AxGzevHnmzJl7/dTcuXPXr1+fcg8UzqBBg6ITAACKiwEAAOA9rrvuug4dOkRXQGIWLFjwQZ+aMWPGO++8k2YMFNSJJ54YnQAAUFwMAAAA7+EbSMmYD7/R/7Jly1IrgUI7+OCDb7311ugKAIAiYgAAAHiPPn36RCdAYnbt2rV48eIPeUF1dXVqMZCC008/PToBAKCIGAAAAP7qmmuuad++fXQFJObNN9986KGHPuQFs2fP3rNnT2o9UGj9+vWLTgAAKCIGAACAvzr77LNbtGgRXQGJWbdu3Ye/YPLkyatXr04nBlLQrl27q6++OroCAKBYGAAAAP5qwIAB0QmQpFmzZu3zNWvXrk2hBFIzZsyY6AQAgGJhAAAAeNeFF1545JFHRldAkqZMmbLP18ycOTOFEkhN3759oxMAAIqFAQAA4F2f+9znohMgSRs2bKipqdnny+6///4UYiA1FRUV0QkAAMXCAAAA8K7TTjstOgGS9Prrry9fvnyfL5sxY8bGjRtT6IHUPPDAA9EJAABFwQAAAPCuT3ziE9EJkKQVK1bs5ytXrlxZyBBIW+/evaMTAACKggEAAKCsrKzszjvvjE6AhFVVVe3nK2trawtaAinr3r27GwEBAJQZAAAA/mzgwIHRCZCwn/3sZ/v5ykceeaSgJZC+b33rW9EJAADxDAAAAGVlZWUnnnhidAIk6bXXXquvr9/PF//6178uaAykb9iwYdEJAADxDAAAAGXXX399y5YtoysgSatWrWrS61977bUClUCIysrKU045JboCACCYAQAAoGzkyJHRCZCwOXPmNOn1r7zySoFKIESHDh1GjBgRXQEAEMwAAADkXbdu3SorK6MrIGE33nhjk16/YMGCApVAlEsuuSQ6AQAgmAEAAMi7UaNGHXbYYdEVkKSdO3e+8cYbTXrL+PHjCxQDUbp169alS5foCgCASAYAACDvLr300ugESNjSpUub+pYVK1Zs2bKlEDEQpaKiYty4cdEVAACRDAAAQK4dccQRxx9/fHQFJKyurq4Z71q8eHHiJRDrggsuiE4AAIhkAAAAcu2yyy476qijoisgYVOmTGnGuzwHmOzp3bt3dAIAQCQDAACQa+eff350AiTvtttua8a7Zs6c2dDQkHgMBCovL7/iiiuiKwAAwhgAAIBc69+/f3QCJGz16tXNe+Mdd9yxa9euZGMgVuvWrYcOHRpdAQAQxgAAAOTX5z//+fLy8ugKSNiSJUua/d41a9YkWALF4KyzzopOAAAIYwAAAPJryJAhrVu3jq6AhK1YsaLZ712wYEGCJVAMKioq3O0NAMgtAwAAkF/Dhw+PToCE1dfX/+EPf2j225cvX55gDBSDtm3bXnLJJdEVAAAxDAAAQE6NHj26oqIiugIStn379okTJzb77ZMmTdq2bVuCPVAMBg8eHJ0AABDDAAAA5NTo0aPbtGkTXQEJO8Bv4Z80adLWrVuTioEicfzxx0cnAADEMAAAADk1aNCg6ARI3tKlS8NPgGLTpk2bm2++OboCACCAAQAAyCnfEEr2NDQ0LFq06AAPmT9/fiIxUFSMvgBAPhkAAIA8+tGPfnTIIYdEV0DCtm7det999x3gIUuWLKmvr0+kB4pHv379ohMAAAIYAACAPBowYEB0AiRvw4YNq1atOsBDfvnLX27YsCGRHige7dq1u/LKK6MrAADSZgAAAPLotNNOi06A5NXU1Bz4Ibt373777bcP/BwoNmPHjo1OAABImwEAAMidb3zjGwcffHB0BSTvwB8A8GezZs1K5BwoKv37949OAABImwEAAMidiy66KDoBkrdt27ZEfgKgLKGfJIBiU15eftRRR0VXAACkygAAAORO3759oxMgeZs2bXrooYcSOerFF1/ctGlTIkdBUfnxj38cnQAAkCoDAACQL2effXbHjh2jKyB5r732WlJHTZ482WMAyKR+/fpFJwAApMoAAADky9e//vXoBCiIF154IcHTamtrEzwNikT37t0rKiqiKwAA0mMAAADy5dRTT41OgIJYsGBBgqdVV1cneBoUj2uuuSY6AQAgPQYAACBHevbs2bVr1+gKSN5bb701a9asBA9M9jQoHueee250AgBAegwAAECOuP8PWbV+/fpkfwLgqaeeWr16dYIHQpGorKzs2bNndAUAQEoMAABAjgwdOjQ6AQoi2a/+/9m6desSPxPCdejQ4aKLLoquAABIiQEAAMiLIUOGVFZWRldAQUyePDnxM2fPnp34mVAMLrnkkugEAICUGAAAgLy4+OKLW7VqFV0Bydu1a1dNTU3ix06YMCHxM6EYdOvWrUuXLtEVAABpMAAAAHlxwQUXRCdAQaxevXratGmJH1tVVbVt27bEj4VwFRUV48aNi64AAEiDAQAAyIVBgwYdc8wx0RVQEK+//nqBTq6rqyvQyRDrvPPOi04AAEiDAQAAyIVzzz23Y8eO0RVQENOnTy/QyStXrizQyRCrb9++0QkAAGkwAAAAueD+P2TY/fffX6CTn3zyyQKdDLHKy8uvuOKK6AoAgIIzAAAAudCjR4/oBCiIDRs2zJ07t0CHjx8/vkAnQ6zWrVsPHjw4ugIAoOAMAABA9v3rv/5rp06doiugIAp9m/41a9YU9HyIMnz48OgEAICCMwAAANl3xhlnRCdAoaxYsaKkz4co5eXlF110UXQFAEBhGQAAgOwbMGBAdAIUysMPP1zQ8xcvXlzQ8yFK27Ztx4wZE10BAFBYBgAAIOO++MUvHnbYYdEVUCiFewLwnz3wwAMFPR8CDRo0KDoBAKCwDAAAQMadddZZrVq1iq6Agli5cmWhL1FdXb19+/ZCXwVCdO/ePToBAKCwDAAAQMYNHjw4OgEK5ZVXXknhKsuWLUvhKpC+Nm3a3HTTTdEVAAAFZAAAALJs+PDhH/3oR6MroFAWLFiQwlU8B5gMGzhwYHQCAEABGQAAgCz7+7//e/f/IcN+/vOfp3CVOXPmNDY2pnAhSJ+nxAMA2WYAAACyzLd2kmFbtmxJ5+Y8t9xyy+7du1O4EKSvbdu2V111VXQFAEChGAAAgCw74YQTohOgUBYvXpzatdauXZvatSBl48aNi04AACgUAwAAkFm33XZbdAIUUDpPAP6zdB42ACH69u0bnQAAUCgGAAAgs4YMGRKdAIXS0NAwc+bM1C738ssvp3YtSFl5eXnXrl2jKwAACsIAAABkVp8+faIToFB27dp1xx13pHa5qVOn7tixI7XLQcpuvPHG6AQAgIIwAAAA2fSlL32pZcuW0RVQKK+//nqal5swYcK2bdvSvCKkqV+/ftEJAAAFYQAAALLp05/+dHQCFNDChQtTvqK7AJFhPXr0OPjgg6MrAACSZwAAALKpZ8+e0QlQQC+99FLKV6ypqUn5ipCm73//+9EJAADJMwAAABk0bty4I488MroCCmXbtm3PPPNMyhddsmRJQ0NDyheF1Fx44YXRCQAAyTMAAAAZdMUVV0QnQAFt27btySefTPmijz766Pr161O+KKTm2GOPPfnkk6MrAAASZgAAADLo/7F33/FRVXkfx29IAqGLlMSVogJSwiqQSEcgdBASAdEVVOqCSHFFUVdFqqCoSJHiighIF6W3QIBQJJBAGoQECBACpIf0Opnnj/s897k7LZNkZs4k+bz/eF7DvWfO+c7gs8y9v3PPYf0fVGy2X/9HkqSYmBgKAKjAatWqNXToUNEpAAAALIwCAAAAqGh8fHyaNm0qOgVgRcHBwULGZRsAVGzDhw8XHQEAAMDCKAAAAICKZuTIkaIjAFak0WgiIiKEDB0YGChkXMA2WrRo8dRTT4lOAQAAYEkUAAAAQEXTtWtX0REAK3r8+PHevXuFDB0WFpaVlSVkaMAGGjVqRAkZAABUMBQAAABAheLj49O4cWPRKQArSk1NjY2NFTL0kSNHkpKShAwN2Eb//v1FRwAAALAkCgAAAKBCefnll6tVqyY6BWBFV65cETi6qNoDYBsvvfSS6AgAAACWRAEAAABUKEOGDBEdAbCuy5cvCxz91KlTAkcHrK1hw4b//Oc/RacAAACwGAoAAACg4ujVqxf7N6Jiy8zMDA8PFxjgr7/+Ejg6YG1OTk7du3cXnQIAAMBiKAAAAICKY8iQIXXq1BGdArCi5OTko0ePCgxw9uzZuLg4gQEAa3v55ZdFRwAAALAYCgAAAKDi6N27t+gIgHXFxMSIDZCRkREfHy82A2BVrq6ugwYNEp0CAADAMigAAACAiqNVq1aiIwDWdf78edERpNDQUNERACuqXr26t7e36BQAAACWQQEAAABUEPPmzatbt67oFIB1XbhwQXQE6cCBA6IjANbVpUsX0REAAAAsgwIAAACoILhfgwovPj7eHvbg3b17d0FBgegUgBW1adNGdAQAAADLoAAAAAAqCAoAqPASEhKSkpJEp5AkSYqOjhYdAbCiatWqLVmyRHQKAAAAC6AAAAAAKoJp06bVrl1bdArAuuxn8X3hexED1tatWzfREQAAACyAAgAAAKgIBg4cWKUKP2xQwe3fv190hP/l6+srOgJgXZ6enqIjAAAAWADXyQAAoCLo1KmT6AiAdRUWFu7atUt0iv+1bNky0REA66pRo8aUKVNEpwAAACgrCgAAAKDc69atm5ubm+gUgHXduXNHdIT/Yie7EQDW4+PjIzoCAABAWVEAAAAA5d706dNFRwCs7v79+6Ij/JeoqCjREQDr6tixo+gIAAAAZUUBAAAAlHseHh6iIwBW5+/vLzrCf4mMjBQdAbCuRo0a1a9fX3QKAACAMqEAAAAAyr3nn39edATA6ubPny86wn/Zt2+f6AiA1a1cuVJ0BAAAgDKhAAAAAMq3b7/9VnQEwOrS0tJER9C1b9++wsJC0SkA62IVIAAAUN5RAAAAAOVb3759RUcArC4iIkJ0BAPsMxVgQa1bt3Z2dhadAgAAoPQoAAAAgPKtbdu2oiMAVnf79m3REQy4efOm6AiA1S1ZskR0BAAAgNKjAAAAAMqxjz76qGrVqqJTAFZ3+PBh0REMCAkJER0BsLp+/fqJjgAAAFB6FAAAAEA5NmLECNERAKvTaDTbtm0TncKA5cuX5+fni04BWFfz5s3btWsnOgUAAEApUQAAAADllaura4sWLUSnAKzOPtf/kSQpIyMjOTlZdArAumrVqjV48GDRKQAAAEqJAgAAACivhg8f3qBBA9EpAKuLjIwUHcGo8PBw0REAq/P29hYdAQAAoJQoAAAAgPJq1KhRoiMAthARESE6glH2XJwALKVFixb169cXnQIAAKA0KAAAAIDyyt3dXXQEwOoKCgp27NghOoVRFy9ezMvLE50CsC5XV9fRo0eLTgEAAFAaFAAAAEC5NHHixKefflp0CsDqMjIyrl69KjqFUVu3bs3JyRGdArA6tgEAAADlFAUAAABQLvXv3190BMAWwsLCREcoRnR0tOgIgNV5enqKjgAAAFAaFAAAAEC51K1bN9ERAFuw/0X2g4ODRUcArK5hw4aTJ08WnQIAAKDEKAAAAIDyZ8yYMY0aNRKdArC6goIC+7+9bs97FAOW4uTk1KNHD9EpAAAASowCAAAAKH969epVrVo10SkAq8vOzl67dq3oFMU4efJkamqq6BSA1fXs2VN0BAAAgBKjAAAAAMqfXr16iY4A2EJcXJzoCMW7evVqWlqa6BSA1bm5ubH9DAAAKHcoAAAAgHKma9eujRs3Fp0CsIWrV6+KjmCW0NBQ0REAq6tevbqPj4/oFAAAACVDAQAAAJQzr7/+eo0aNUSnAGyhvCyvf+nSJdERAFvo0qWL6AgAAAAlQwEAAACUM2zDiEoiPT39/PnzolOYJSwsLCcnR3QKwOratWsnOgIAAEDJUAAAAADljLu7u+gIgC1kZGScPHlSdAqz7N+/PykpSXQKwOqqVq369ddfi04BAABQAhQAAABAebJ48WIXFxfRKQBbiIqKEh2hBB4+fCg6AmALrAIEAADKFwoAAACgPOnWrZvoCICNlK+F9S9cuCA6AmALHh4eoiMAAACUAAUAAABQnnh6eoqOANiCRqMJDw8XnaIEzp07JzoCYAs1a9acPHmy6BQAAADmogAAAADKjUmTJtWqVUt0CsAWEhMTjxw5IjpFCVy+fJltAFBJ+Pj4iI4AAABgLgoAAACg3BgxYoToCICNJCUlJScni05RAvfv34+LixOdArCFjh07io4AAABgLgoAAACg3OCeCyqPoKAg0RFK7MaNG6IjALbg5uYmOgIAAIC5KAAAAIDyoV69eq6urqJTADZy8uRJ0RFKbO/evaIjADayfft20REAAADMQgEAAACUD+vWrRMdAbCRzMzMsLAw0SlKbOvWrUVFRaJTALbQoUMH0REAAADMQgEAAACUD9xtQeXx8OHD4OBg0SlKIzo6WnQEwBZatWpVr1490SkAAACKRwEAAACUA02bNm3ZsqXoFICNxMTEiI5QSrGxsaIjADby2WefiY4AAABQPAoAAACgHPjoo49ERwBs59SpU6IjlNLZs2dFRwBspG/fvqIjAAAAFI8CAAAAKAd69eolOgJgO5s3bxYdoZTmzp0rOgJgI82bN3d3dxedAgAAoBgUAAAAgL3z8PBo0aKF6BSAjcTFxZXrhXTS09NFRwBsoXbt2oMGDRKdAgAAoBgUAAAAgL0bOHBg9erVRacAbOT+/fuiI5TJjRs3REcAbOTVV18VHQEAAKAYFAAAAIC9GzlypOgIgO2EhISIjlAmt27dEh0BsJEWLVo0atRIdAoAAABTKAAAAAC71q5du2bNmolOAdjOhg0bREcok0OHDomOANiIq6vr6NGjRacAAAAwhQIAAACwa4MHD65fv77oFICNFBUVXbx4UXSKMtm2bZtGoxGdArCRAQMGiI4AAABgCgUAAABg19hiEZVKZGSk6AgWcPv2bdERABvx8PAQHQEAAMAUCgAAAMCutWvXTnQEwHbu3LkjOoIFVIwyBmCOhg0bTpw4UXQKAAAAoygAAAAA+zVr1qwGDRqITgHYTkBAgOgIFnDt2jXREQAbcXZ27tmzp+gUAAAARlEAAAAA9qtHjx5VqvBzBZXIggULREewgK1bt+bn54tOAdjIyy+/LDoCAACAUVxRAwAA+9WjRw/REQDbSUpKEh3BMsLDwzMyMkSnAGzEzc3Ny8tLdAoAAADDKAAAAAA79fbbbz/55JOiUwC2ExYWJjqCxYSEhIiOANhI9erVX3vtNdEpAAAADKMAAAAA7FS/fv2qVq0qOgVgO9HR0aIjWExUVJToCIDtdO3aVXQEAAAAwygAAAAAO9W9e3fREQDb0Wg0p06dEp3CYoKCgtgGAJVHq1atREcAAAAwjAIAAACwRx4eHk2aNBGdArCdvLy8rVu3ik5hMT///HNOTo7oFICNuLi4LFmyRHQKAAAAAygAAAAAe/TPf/7T2dlZdArAdu7cuSM6goXFxsaKjgDYDqsAAQAA+0QBAAAA2KOXXnpJdATApirSDsCyq1evio4A2I6np6foCAAAAAZQAAAAAPbohRdeEB0BsKnIyEjRESwsIiJCdATAdmrWrDlhwgTRKQAAAHRRAAAAAHZn4cKFjo6OolMAtpOVlXXw4EHRKSzs7NmzaWlpolMAtjNy5EjREQAAAHRRAAAAAHbHy8tLdATApjIyMgIDA0WnsLCzZ8+mp6eLTgHYDqsAAQAAO0QBAAAA2B0PDw/REQCbCgkJER3BKq5duyY6AmA7jRo1cnFxEZ0CAADgv1AAAAAA9mXMmDHVqlUTnQKwqfDwcNERrOLSpUuiIwA2tWHDBtERAAAA/gsFAAAAYF/GjRsnOgJgU3l5eWFhYaJTWEV4eHhBQYHoFIDt8AQbAACwNxQAAACAfWnXrp3oCIBNpaWlbdq0SXQKq9i9e3dCQoLoFIDttGrVql69eqJTAAAA/D8KAAAAwI7069fPzc1NdArApuLi4kRHsKL4+HjREQCb+vTTT0VHAAAA+H8UAAAAgB2ZMmWK6AiArV2+fFl0BCsKCAgQHQGwqf79+4uOAAAA8P8oAAAAADvSoUMH0REAWwsODhYdwYrOnDkjOgJgU82bN2/Tpo3oFAAAAP+LAgAAALAX/fv3b968uegUgE2lpqZW7CcAgoKCUlNTRacAbKd27dpDhgwRnQIAAOB/UQAAAAD2YtSoUaIjALaWmppasRfJuXXrVsXe5ADQN3LkSNERAAAA/hcFAAAAYC969eolOgJga5GRkaIjWN3NmzdFRwBs6rnnnmNDewAAYCcoAAAAALswcODAxo0bi04B2Jq/v7/oCFZ39OhR0REAm3J1deWZNgAAYCcoAAAAALvQp0+fmjVrik4B2FRRUdGlS5dEp7C6tWvXio4A2Fq/fv1ERwAAAJAkCgAAAMBODBw4UHQEwNYePHjg5+cnOoUt3Lt3T3QEwKY8PT1FRwAAAJAkCgAAAMAeuLu7N2vWTHQKwNYSEhJER7CR2NhY0REAm2rYsOGECRNEpwAAAKAAAAAA7MCoUaPq1asnOgVga5Vh/R9ZQECA6AiATVWtWrV79+6iUwAAAFAAAAAAdqBPnz6iIwAC7NixQ3QEG5k9e7boCICt9e3bV3QEAAAACgAAAMAOvPjii6IjALaWmZnp7+8vOoXtZGVliY4A2FSjRo369+8vOgUAAKjsKAAAAADBPv7447p164pOAdja3bt3RUewqcjISNERAJuqXr36q6++KjoFAACo7CgAAAAAwXr06OHg4CA6BWBrla0AEB0dLToCYGtdu3YVHQEAAFR2FAAAAIBgXbp0ER0BEODIkSOiI9jUiRMnREcAbK1169aiIwAAgMqOAgAAABDpzTffrFevnugUgABr1qwRHcGm1q9fr9VqRacAbMrFxWXx4sWiUwAAgEqNAgAAABDJ29vb0dFRdArA1h49eiQ6ggD37t0THQGwtW7duomOAAAAKjUKAAAAQKROnTqJjgAIcPPmTdERBIiIiBAdAbA1/pkDAABiUQAAAADCuLi4PPPMM6JTAAJUzlvhN27cEB0BsLUaNWpMnDhRdAoAAFB5UQAAAADCVLY10AHF9u3bRUcQYM+ePQUFBaJTALY2cuRI0REAAEDlRQEAAAAIw8IIqJxyc3PPnDkjOoUA58+fz8rKEp0CsLWOHTuKjgAAACovCgAAANcgHDwAACAASURBVEAYd3d30REAASIjI0VHEOb69euiIwC25urq2qBBA9EpAABAJUUBAAAAiDFv3jzREQAxKucOwLLKufkBsHz5ctERAABAJUUBAAAAiDFo0CDREQABtFrt1atXRacQJiQkpLCwUHQKwNY8PT1FRwAAAJUUBQAAACAG6/+gciooKPjqq69EpxBm1apV2dnZolMAtta6dWvREQAAQCVFAQAAAAgwfvz4WrVqiU4BCJCcnCw6gmAJCQmiIwACLFmyRHQEAABQGVEAAAAAAowfP150BECM4OBg0REEu3z5sugIgABDhgwRHQEAAFRGFAAAAIAALVu2FB0BEKMy7wAsu3HjhugIgADPPvts27ZtRacAAACVDgUAAABga2PHjnVzcxOdAhAgNzf3r7/+Ep1CsIsXL2ZkZIhOAdha7dq1hw4dKjoFAACodCgAAAAAWxs1apToCIAY2dnZO3bsEJ1CsOPHj6enp4tOAQgwfPhw0REAAEClQwEAAADYWocOHURHAMS4e/eu6Ah2ISoqSnQEQICWLVs2bNhQdAoAAFC5UAAAAAA2NXbs2Kefflp0CkCMq1evio5gFy5duiQ6AiCAq6vr6NGjRacAAACVCwUAAABgU71793Z0dBSdAhCD/W9l4eHhRUVFolMAAvTr1090BAAAULlQAAAAADbVp08f0REAMVJTU0+ePCk6hV04cOBAfHy86BSAAJ06dRIdAQAAVC4UAAAAgO34+Pi4ubmJTgGIkZaWxhJAsrS0tKSkJNEpAAEaNmw4ceJE0SkAAEAlQgEAAADYjpeXV40aNUSnAMQICQkRHcGOsA0AKidnZ+cePXqITgEAACoRCgAAAMB2WP8HlVlgYKDoCHbE399fdARAjF69eomOAAAAKhEKAAAAwEbatGnzzDPPiE4BiJGbm3vt2jXRKexIcHBwRkaG6BSAAG5ubv379xedAgAAVBYUAAAAgI1MmDChVq1aolMAYiQlJf3555+iU9iR0NDQhw8fik4BCFC9enVvb2/RKQAAQGVBAQAAANhIly5dREcAhHn06JHoCHbn3r17oiMAYnTt2lV0BAAAUFlQAAAAADbSoUMH0REAYS5evCg6gt3x9fUVHQEQo23btqIjAACAyoICAAAAsIWPP/64Ro0aolMAwrDnrb41a9aIjgCI4eLisnjxYtEpAABApUABAAAA2IKXl5eDg4PoFIAYycnJgYGBolPYnezs7NjYWNEpADG6desmOgIAAKgUKAAAAABb6Ny5s+gIgDDx8fF3794VncIeUQBApfXSSy+JjgAAACoFCgAAAMDqXnvttbp164pOAQgTGRkpOoKdunLliugIgBg1a9acOHGi6BQAAKDiowAAAACsbsyYMaIjACIdPXpUdAQ7tWLFCtERAGFGjBghOgIAAKj4KAAAAACr69ixo+gIgEg//fST6Ah2KioqqqCgQHQKQAz+cQQAADZAAQAAAFhdkyZNREcAhGH1f9Nu3LghOgIghpubm+gIAACg4qMAAAAArGvDhg2iIwAiPXjwQHQEu3bnzh3REQBhNm/eLDoCAACo4CgAAAAA6+rUqZPoCIBIAQEBoiPYNX9/f9ERAGE8PDxERwAAABUcBQAAAGBd7dq1Ex0BEGn27NmiI9i17777TnQEQJi2bduKjgAAACo4CgAAAMCKlixZIjoCIFJ2drboCOVAbGys6AiAMN98843oCAAAoCKjAAAAAKxo4MCBoiMAIrHDrTkiIiJERwCE6d+/v+gIAACgIqMAAAAArKVNmzYtWrQQnQIQiR1uzREVFSU6AiBM8+bNWQgIAABYDwUAAABgLUOHDq1du7boFIBIp06dEh2hHDhy5EhhYaHoFIAYtWvXHjx4sOgUAACgwqIAAAAArMXHx0d0BECwH3/8UXSEcuDQoUM5OTmiUwDCeHt7i44AAAAqLAoAAADAKho0aMD6P6jkYmJiREcoNyIjI0VHAIRp2bJlrVq1RKcAAAAVEwUAAABgFaNHj3Z1dRWdAhCJvW3Nd/36ddERAGHc3NzGjh0rOgUAAKiYKAAAAACrGDJkiOgIgGDMajdfaGioRqMRnQIQhm0AAACAlVAAAAAAVuHh4SE6AiBSQUHBvn37RKcoN1asWJGdnS06BSCMp6en6AgAAKBiogAAAAAsb+rUqQ0aNBCdAhApJyfHz89PdIpyo7CwMCkpSXQKQJiGDRtOnDhRdAoAAFABUQAAAACW17NnTycnJ9EpAJHYAKCkgoODRUcAhHF2du7Ro4foFAAAoAKiAABIzs7OoiMA5Q//jwPTvLy8REcABGMDgJKiZIJKrl+/fqIjwK4xtQIoBQcHB0dHR9EpAMH49wOQ1q5dy61MoESqVKkSGxsrOgXs2s6dO11cXLRaregggBgODg4HDx4UnaKc2b9/f926dblKR+Xk4OCQm5srOgXsmq+vr0ajYb90oKT++usv0REAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALAsB9EBAKA0hg8fPmnSpPz8fJ3jTk5O/v7+33//vZBUNjZs2LBJkyYFBQXduHHj+vXr4eHhohMBAAAAAADAjjiJDgBUXlWqVCkqKhKdorxq0qTJsGHDDJ7KzMy0xogHDhxITU1NTk5OTk6Oj49PTExMSEjIyMiIi4tLTExUmgUFBdWqVUur1arf6+joePHixbfeesuykdq3bz98+PDhw4dLkpSenh4XF5eenh4YGHjq1KnAwMDo6GjLDgcAAAAAAAAAMOXLL78MCAhITk6+deuW6CwW0L59eyHjDh06NCsrS2vIf/7zH2uMmJuba3C4gIAAdbNbt24ZbHbw4EGLR/r+++8NjqXVaq1UBQEAAACASmLv3r1+fn6iU0jPPPPMsWPH9u7dKzoIAAAw7osvvjh27Ni9e/d07tLOnz/f9BuvX7/+8OFDPz+/77//vkGDBrZJa75XXnmlqKjo0aNHM2fOtPHQXbp0SUlJMXjve926ddYYMS4uzuBwv/32m7pZeHi4wWYrV660eKSDBw8aKwD8+OOPFh8OAAAAACoJPz8/+drqwoULYpNERETISX7//XexSQAAgDR37twDBw7Ex8evX79effzu3bsG79LGxsaa7jAkJETdPjU19cyZMxs3brT4YjKl8MQTTyQlJSnZdCbCW9vf//73xMREg9/q6tWrrTFibGysweFWrVqlbhYaGmqw2YIFCyweyVhNIjc3d8yYMRYfDgAAAAAqiaioKPny6sqVK2KTKFPfjh49KjYJAACV0RNPPDF58uTNmzdfv349JydHuQOblpambjZv3jyDN2q1Wu28efNM9H/9+nWD79LpX4jg4GCdVJmZmcuWLbPN6M8//3x8fLzBL2fFihXWGNFYAWDp0qXqZsYKAHPmzLFsns6dO2dmZhocq9jCEgAAAADAhMjISPnySngBIDk5WU5y5MgRsUkAlFNVRAcAyrfOnTuvXbv2rbfeatOmjYuLi3K8Tp066ocA5s2bZ+ye7BtvvGGi/7p16xo8HhQUVKq8FnP8+PEXX3xR52DNmjU//PDDK1eudOnSxdoBHBwcrD2EmbKyssxplpuba9lx//GPf9SsWdPgqYsXL1p2LAAAAAAAAJRHFACAMjl27FhYWJjBU6NGjVL/cd++fQabPffcc+PGjTN4ql+/fm5ubgZP3bt3rwQpLW3FihX9+/c3drZDhw6HDh0q9Yo3b7/9tjnN5C15SzdE6VSpYvh/MHNyctR/NFaZKCgosGyetm3bGjt16tQpy44FAAAAAACA8ogCAFBWixYtMnj8ySef/PDDD5U/btmyJT09Xb+Zs7PziBEjDPbQsmVLgzedNRqNn59fqcJawKRJk4rd8vfJJ5/84osvdu7cWYr+v/766w0bNpQqmnUZu7NvZgGgsLDQsnk6depk8PijR4/YARgAAAAAykKZcGbjmWcCk/Tu3dvHx8fb23vEiBF16tSxVLeenp6vvvqqt7e3t7e3RTrs37+/j4+Pj4/Pyy+/bJEOgQrPSXQAoNzbs2dPTExM06ZN9U+988473377rfw6ICAgNDS0R48e+s169+5tsOfu3bsbPF5YWLhly5ZSxi2zatWqRUREtGnTptiWo0ePdnd3b9eunfmdDxs2zM3NbcKECQ8ePJg7d24ZYlqeo6OjweM6a/vYpgAwYsQIY+v/iH06BAAAAID11K5d+88//6xfv/6JEydCQkJ+++23qlWr5ufne3l5de3atWvXrk2aNImKinrttdeUt6xcubJ37973798fOnSocnDu3LmvvvqqVqvdu3fvnTt3tmzZIvczcuTI9u3b9+3bt0qVKmvWrHn//fczMzPPnDnj6+vr7+8vtxk3bpybm9urr75atWpVX19f9W5nBw4caNasmb+///Tp05WD27Ztc3d3T0xMPHPmjL+//5kzZ+R+pk2b1qZNmx49ety5cyciImL48OF37ty5fPnywoULq1atWlRU5ODg8N5777m6ug4ZMkSj0SxYsGDv3r1yn8OHD58zZ07NmjU3bty4cuVK+WCrVq1Wr17dqFGjiIiIa9euyf3k5+e3aNHC29vb09PT3d393Llz06ZNM/0lOzk5FRYWVqtWTfnOJUlycHBwdnaWj1StWjUzM1P9lp07d7Zq1aqoqMjJyemnn35avXr1oEGDPDw8unTp0rRp0+Tk5Hfeeef+/fuSJL333nvjx49PT0/39fV99OjRr7/+KknSwIEDO3ToMGDAgPr16wcFBU2YMEGJIb+QR6lXr548uvxHBwcHrVabn59f7H82pr388ssLFy5s2rRp48aNlbHi4uJSUlIOHjz48ccfm3jvnDlzqlevnpCQsHbtWldX17ffftvZ2fmrr76Sz65du7Z3795NmjRRrl7v378fFxe3fv16g9P+OnfuPGDAAEdHx8uXLx86dKhLly5Dhgy5ffv2pk2bJElq3br1d9995+7u3qxZM7l9QUHB/fv3IyIiPvnkk/Dw8DJ+DwAAmLJ27VqDe7Fqtdr69esrzcaOHWus2fz58/W7jYqKMtj47t27tvtsRsybNy8tLc3Yx1FLSUkxv9uLFy8qb1R+NBjUrFmzuLg4gyNaaRNgZeclHWPHjlU3M7Zvs06zMtq2bZuxL1z9UxsAAABARXL27FlzrsLWrFkjtz9w4IBy8M6dO/LBiRMnajQac/oplkajke9WS5L04MED5fjBgwflg2vWrLHIQFqtNjExUe5z8ODBeXl5ynHlhn5wcLA5/bz11lvGvt7Zs2cXFRWZ00lgYKDyrk2bNpnfPj8/v9jGX3/99cKFC82JoS3zzsBnzpwx3X9sbGzr1q1L9N7vv/9ekqTY2FgT3f7111/6HWZnZ+u31Gg0kiR9+eWXBs/K8vPzf/nll7J8D0DFxhJAgAW8++67RUVFBk+p/xH67bffYmJiDDbTf3LN3d1dLu/ru3TpUqliWtK8efPq1q3r7+9fbMt69eppNBpj0+fVXn755c6dOyt//PTTT/fv31+mlBalTPfQobO4v232ADD2XEV6evqJEycsOBAAAAAA+2HsOWAd8sVLjx49evXqpRx85plnpk6dKkmSi4uLsR3OSkqZFz9t2rS//e1vyvE+ffo8//zz5gc2h5J5+vTpyix4SZJmzJghv1AfNEGZ2q/v7bffNnZBp8PDw0N57eLiUmx7bUmW8XFycjJzbzxJkgYMGGBmS32PHj1S7kUUFRWFhob6+/v7+/sHBQVlZWXJx59++ulz584ZfHvdunUNHm/atGl6evrTTz9tYuguXbrExMTo9FC9enX9llWqVPnuu+/mzZtn8KzM2dl5/PjxR48eNTEiAABlderUKYOFaJ3Z+seOHTNWr9bp8F//+pex4rb+1Pi33nrr9OnT+/fv3717986dO7dt27a1VLZv375r1649e/YcPXr0t99+M+eDz5kzx0QdXvbHH3+Y09Xp06f133vlypVatWrpNzbxBICy7JJl5eTkGBxOZwuHyMhIg83UD+GWnbGv+urVqxYcBQAAAIBd8fHxCQwM3LFjh/TfDx8HBwdLkjRt2rSwsLDjx4/LjRctWqRzvaBsJrd27drg4GB58ZydO3cqDXJzc8eNGycvqLJ58+bQ0NC5c+f26NEjNTVVabNx40ZJktavXx8WFvbTTz/JHepfES9dulQ+5evre/HixVmzZkmSFBYWpjR48OCBJElbt249f/78vn37AgMDR4wYMXXqVKVBXl7e+++//9RTTx0+fDg8PHzKlClyh/Hx8eqB5BnikiQNGTLk4sWLx48fHzx4sPTfV3B+fn516tQ5deqU6UlmixYtKiwsNHa1pXblyhXlXW3atPH39z927FiXLl26d++ekJCgNNu6devu3bsvXbr097//XW48d+7cgICAOXPmqJtduHChTZs2o0ePPnfu3L59+yRJWrdunTkxtFqt8tddUlevXpV7KCwsPHz4cJMmTXQaHDx4UBlFWXxJ7Yknnjh06NDVq1cDAwPVz38UFBQoL44fP/7OO+/I7d955529e/cqZ7X/99+t4vXXX7906dKVK1eCgoLU9xmUv5TExMSffvrJy8tLbv/vf/87JCRE/W2sWrWqdN8GAADFW7BggbF/j9V3fl955RVjzT744AN1h0eOHDHYLD09Xf+G+LRp08x8UNF8ISEhZn72Xr16RUREGOvHzAWLXnvtNfXvALW0tDT9bRJMFAD8/f1HjRplZnjzGSsADBkyRN3MWAHAUvsdSZK0ePFiY9+2wbWkAAAAAFQ8EydOVC4Etm3bpt/g0KFD8lnlVu/t27f1m33wwQdKP7///rvBsbZv3660Ue8loLhz5458VlmHR1kFSG3v3r1KP6NHjzY4lrIWblJSkpubm87Z4cOHy7eGs7OzlUENLut/9+5d+ezjx4+VVeOL1atXL29v7yFDhigr2ERHR/ft23f48OHe/8fHx8dED+3bt8/MzJTfm5eXN3HiRP026tvWxtbwGTx48PDhw0eOHJmeni63DAoK6tatmzrGK6+8Yubn0uHq6qoEUNaG0nf58mW5TbFL+44bN05ndaPo6Oh+/frpt+zZs6e6nmTslr26LmXivyhJkr777juljVINAgDAKrKysrSG7N69W93M2FLyZ8+eVTczdnc7MjJSf+jJkyebs5JgiQQFBZXo4xtcjDIrK0t+8LNYJpZrTE1N1W9vogCg1Wrz8vJiYmLWrVs3aNCgEn0KEwwWAAoKCnSKEzdv3jQYyYJJDD4qIbPUEAAAAADsnzIz2uC9Ufn+eFFR0bx58+QZY3l5ed26ddNptmLFCrmT3NzcMWPGGBxI/YT6e++9p99A3lQgLS3txx9/lJvJe97quHDhgnw2Pj7e2IdSJp4/fvxYf7HcJUuWyGfDw8N9fX1NfPzHjx/LZ0u3SuqNGzfkt5f00liSpBkzZijz21JSUl566SX12aNHjypfZkBAQLG9JSUlyY0PHTpU0iTGfPTRR+oLyZ9//tlgsw8//NDMi82XXnopIyNDaWzwKl7x1ltvKf/pxsXFGWzz1VdfqROePHnSRIe7du1SWv7555+mowKVEHsAABZjbMq8p6en+o8G7+BnZGQoS+xJkvTZZ5+5uroa7M1uV3jv2bOnr6+vzsGvv/46Kiqq2Pd+9dVXL774orGzOhUUc1StWrVJkyZTpkzZvXt3eHj43Llzn3zyyZJ2ola7dm2Da0Hm5eVlZmaqjxhbMrKwsLAsAdR0fj4qwsLCTLzLzc1t6dKlBmcGAQAAACiPQkND5RctWrTQOVW/fv369etLklRYWLhy5Up5vZ2qVau2b99ep2WrVq3kFwkJCVu3bjU4kK+vb3Jysvxav4TwzjvvyAv0JyQknDhxIjc3V5KkRo0a6ffTtGlT+YV6CR0d8ho4kiTVrl1b/zpRSRsZGXn58mX59XPPPaffj7K+fOkWyVGu7MzcFUBt1apVGzZskF/Xq1dPvb7u2rVrBw4cKL+OiopSb4NXbBJL7dwgSVJCQoL6jzp3LRTKX7okSaZXtdXJtnnzZhONt2zZomxt6OrqOnv2bP026q89Ozv7k08+MdHh3LlzlZJDjx49TLQEAKBMVq9ebXBSdn5+vvrZRmXCgkajSUtLO3LkyIIFC3S6Up6z05Gdna2z4rzMHp4AkKkf0zP2JKO+xMREYzGSkpIMvsX0EwD6EhIS/vjjD/2fqmbq16+fwW84OTm5ZcuW6pbR0dEGA6h33yqL/v37G/uM69atM/gWb2/vY8eOKUtMskwQAAAAUDH8+uuv8o/89PR0nVMzZ86UJ6E/fPhQkqSAgAC55aZNm3RaKlPdd+7caWKs0NBQuZnOuu2SJG3ZskU+dezYMUmS5AVeNBrNu+++q27Wq1cvZVa+sqC/QXl5eXKz//znPzqnlJ0P5s+f37FjR+VyT70FsSRJ06dPl08lJSW98MILJsYyRlnc1UStwjRlCSatVivPlps5c6Yy8/3Ro0emt8lVKKsImH+JbY579+4p8YwVfj7//HOlzT//+U8TvXXu3Fn9BECxo8+fP19pbHDOvnLnxOB/cvrOnTuntLfU1TcAALr69OljbBUgnefpEhMT//zzzwkTJhjsx9vbW/m5o+PmzZsG3zJp0iRjbym10hUAJEnavHmzVqu9ceOGme0Nrh2kMLYgYEkLALL8/Pxz58517NixpB/q3XffNbgZ1IMHD5ycnNQtlWUodXTp0qWkgxpkbB9prd5vrObNmy9btkxZQFOhM9cDAAAAQDn1zjvvyNcphYWF77//vvrUhg0b5N///v7+kiT98ssv8h/1n1xXrhRmzpxpYqyffvpJbqa/uouyoOuiRYsk1U6/v/76q7rZl19+KR8vKCgw/bmUDvUvS5UNAOTl75XV9ocNG6Zudvz4cfn4tWvXTI9lTNkLANJ/z+378ccflfpHenr6gAEDzOzESgUASZIOHz585coV5WEFfUpxSKvVTp482URX6gKA/LiJaZ6enkr7wMBA/QbqAoDp0pRMvWQQk94AAFYUHx+vc7P18ePHp0+fNrglkTF+fn5aI+SfU/rmzJlj7C2lZv4dfH2bN29+4403zGn5xRdfmMhg4ndD6QoAiqtXr5Zou6Rvv/3WYD/6m2gpO03pMPZMpSRJiYmJ5id58OCBwf6vX7+u01L5xa9v79695o8IAAAAwG4ps9B0JnErU/7Xr18vSZKPj4/8x4cPH9aoUUNpNmbMGPl4SkpKp06dTAw0evRo5YJCWcRGkqS//e1vytPG8uPRO3bskP+os9Hd77//Lh83vXipuoe0tDT18alTp8qbDShPikdERMgtv/rqK3VLZSLUL7/8YnosYyxSAJAMXcFpNBrTN9N1WK8AYMykSZNOnjyp86S++QWAq1evmjNKSkqK3D46Olr/rLoAsGTJkmJ7Gzt2rNJ+48aN5gQAAKA09u7dK/97c/v27QMHDrRp06akPYwcOVLenUlfYmJikyZNDL6revXqDRo0MNGtwTV25s2bZ+ItOivbWEPPnj0NflLF1KlTjb23jAUAWVhY2FtvvWVO1N27dxvsQX86SUxMjMGWxh47XbZsmVarvXDhgjkxevToYeyzGFxjUX/6v6J79+7mjAgAAADAnilPVCv7AcjknWNzc3P/8Y9/yEfkZgUFBerZWsoyNQY3q9Px8OFDubF6zni/fv3kg7GxsfKRzz77TD6iM9Xp/v378vFiJ3SPGTNGfrIhPz9fvY6Q8hSCsjfe4cOH5SOnT59W96Bc+Lz++uvFfi6DLFUAeO6555SJ//L3/+GHH5aoB6sWAF588cXff//91KlT165dUy8KpM/8AoBO4ccYpQBgcMdgdQFA5+kWg7y9vZX2R48eNScAUHmwCTBgSadOndq0aVPbtm2bN28+bNiwiIiIkvawdOlSY1sMnT9//v79+wZP5eTkGFsrX5Kk5s2bG+yzZs2aJpIYW27IgkzPQz9//ryxRe0tpV27dps3bw4MDPT29jbdslatWgaP62/ta+yvLzs72+Bxee5M165dDx06VExcSfr3v/9t7NTbb7+tf9DEKo0mHvMEAAAAUF4oi+Sop3D16dOnTp06kiTl5+dv375dPhgTEyNJkpOTk7qlsn3u+fPnix3r7t278gsPDw/lYN++feUXylqj169fz8rKkiRJPU3N09OzXr16kiQVFRXJC+KbsHXr1szMTEmSnJ2dO3TooBxv27at/EJ5FFvZB1g9W27WrFlKpGLHsrbo6GilNCJJUlZWlp+fn8A8io4dOwYHBwcHB48cObJ3795t27ZVtmhWlG4BJf3LZIOU+/7FbrOck5NTbG8ZGRkajcbMDoHKhgIAYEkrVqwYN25cKe77y3788ccWLVoYPFVQUPDNN9+UrlsHBwc7/Pfvzp07Tz75pLGz2dnZphegNMHYrXZjPDw89uzZI29XZcwzzzxj8Lj+evrGvmr5F7AOT0/Pv//97/LrIUOGHD582HRUpbEOYz/LTp8+ffLkSYOnWrVqNXv2bNPDAQAAALBzJ0+elG+POjk5KZP9+/Tp4+zsLEmSenEV5bV6U7TmzZvLL/bv32/OWPKLhg0bKgeVG/TKSu5//vlnRkaG/PqDDz6QX3h7e8tT0DIzM3U2yTNI2augVatWysFnn31WkqSCggJlrC+//FJ+Ua9eva5du8qvhwwZIr+4c+dOSkpKsWOVwu7duwsLC6Ojo6tWrWq65YkTJ9zd3ZU/1q1bd+/eH6YlggAAIABJREFUvTo7yZXFmTNnCgsLi11VScfkyZPPnz//4osv6hzPz8+Pj49/8ODBpUuX3n77bXP+pvTl5uaa00yuUUmSpPzXYkxycnKxvdWsWdPR0VF+baW/dKD8ogAA2AsvLy8TWwWcOXPGzFVi7J+7u/vNmzeN3VKXLVu2rNQPWm7cuHH58uXm7DukcHR0HDBgQEZGxvr16+vXr6/fwNiCSPrFnipVDP/vqsGyxPfff6/+4+DBgy9evGgs5Jtvvtm4cWODp0y8q1+/fsZOUQAAAAAAyrsDBw7Ik+WdnJyUH//KDmTqrcKU1+3atZNfeHt7y3WCuLi448ePFzuWss3A3/72t6FDh8qvlRv0+/btU1rKTxtIktStWzf5hTLXLTw83JzPpVxqKWnlcSVJSk9PV6/xIt8+rlevXvv27eUjykz2M2fOmDNWKXh5eTk6Oj777LMTJkww0Wzr1q3KExLKU/tNmjT566+/LBJj0KBBnp6ejo6O6m+pWE2bNv3hhx9cXFzkP2ZkZPj5+c2fP3/WrFljx47t2rVr48aNO3fuvGXLlmrVqpUilZkTEM2/X29OvUR+vkSmfuQCgEQBALATDg4OO3bsMHa2qKjotddes2Ue6xk7duzRo0eNPeggu3Dhgun9CUwrLCz84IMPGjdu/Pnnn0dERCiPARarVq1ab775pqurq87xIUOGKD9NdAQEBOgcMfZbR2f3KkmSRo4c2aNHD52DnTt3fvDgwdNPP63fg8FFfiRJysvLmzRpksFTsoMHDxo8/tRTT+lUIAAAAACUO8HBwfILZaa5sh6OesaScl1Qr149uYGPj4985NGjR+Y8SH3jxg3l1qqXl5ckSZ07d65bt658RL2oqbINrDxnX1I9zayuSZjg5+eXl5cnSVKdOnXkYoOyEHxKSop6dVxlOSD5Jnjr1q2feuop+Yiy/JHFKbekja0WK0nSd9999+abb8qv79+/37BhQ+WxBk9PT2OXaSVSvXp1ZQqa+lEJ077//ntlI+iQkJBevXr17dt33rx5K1eu3L179507d5SWBgsA77//fkxMjIk1bNW7TBvj5eWldF7sBH/9i3R9SvlHkqQbN24U2x6oVCgAAHYhODhY/RCljt27dz9+/NiWeaxk+fLlGzZsMDaNXfbw4cMy7k+r3IJfvHhx27ZtZ8yYcfXqVa1Wa857169fr/971MScDv3HMow9AaBv7ty5BqsFTz75pP7jCy4uLuofNGrFzqAZNmyYsSrI2LFjzUgKAAAAwH4py/crS+TL94LT09P9/f2VZkeOHMnPz5ckqU6dOoMGDZJUS/mbswGATKkoyJOZOnfuLM+8joqKUjdTLlKUPQbktYby8/PPnTtnzkC7du2SJ4Y7OTnJBYA+ffrIp5T1f2TKzgTyFVP37t3lmsSjR4+U0oj16M/0ks2aNWv69Ony68ePH8t7v7Vv3/7Ro0fywaFDh65atapEY+lfP6qvc83Zxln2wgsvyC9SU1Pbt2+vVGv0Gbx4f/XVV5s0aTJ48OD+/fsbfJeJxX4V/fv3V+oExV7Sml4/QKY8a1JYWMiOd4AOCgCAeAEBAco/wPoeP378xhtv2DKPNTRu3DgkJOT99983vUJifn7+8OHDLTv02rVrO3bsOHHixGJXRYyJifnwww/1j6t3nVJLTExUT46Qmfm04+rVq439pRtcfPO9994zNuvB2Cr/asZ2F2jYsOGPP/5Y7NsBAAAA2K3z58/Ly+DUrl27R48er7zyirywT1ZWls4aODdv3pQkydnZuU2bNtL/ragjSdLu3bvNHEtZe0e+NazM61fW/JEFBgbKW7w+8cQTkiRNnz5dvhLMzs7etGmTmWOFhobKL+QnG5S7wDpXdkqRQy42yI8m6EcqKeWRCIOz4JU77wbn6nXr1m3BggXyR87Ly5s8ebJSOBkzZoyy5P306dOnTJlSbBJlC9zq1avrxzBzrpua0k98fLzplurdntWDyv9X/q9In+kn/mUDBgyQXxQUFKxZs8Z0406dOhXbQAlT6k0ZAQCwFnlyugmzZs0q4xAtWrRITk7W73nZsmUW+QjF2rNnT2FhoemPKRs3bpyZfTZr1iwuLs5gJytWrDD2rsmTJz948KCkoxtrrzPxRJaYmGiwsbrN66+/buwLyc7OVqbtqAUFBRlsn56ebuY3VlBQYLCHYn/zAQAAALBzMTEx8s/7zz//fM2aNfJr/WX9Dxw4IJ/y9fXt16+f/Fq9nI455HdlZGQ0a9YsMDBQ/uP8+fN1mt25c0c+NXv27K1btxqLZMKSJUvkd8nbF2dnZ8vj6k88VyJ17NgxIiJC/uPHH39cos+l4/Tp0ya+H/mURqNRlvhXU1+Af/TRRzpn33333aKiIvlsTk6OXK0xQflE+nPaxo8fL58qKCgw/6PFxsbK79Kf0KY2ZsyY/Px85YMoT8b7+fnJn115xEGSpM6dO2dkZCiNv/32WxM9v/fee0rLoKAgg22Uv32tVpuVlaUUqww6evSo0ljZFxoAAPFat26t/Eoz5siRI2UfSFQB4Pnnnz948KBGozH9GRWTJ082v/PSFQBky5cvV/80kSmrMerw9/c3Fnjjxo367VNSUgw2Vhp4eXnl5eUZ6/PPP//U77Nr165paWkG2xt8XMCggwcPGhu02G8MAAAAgD37888/5d/2x44dO3PmjPx60aJFOs2WLl0qn4qOjl6xYoX8+uzZsyUaS7mz/8UXXygXZfrNTp48KZ/atWvXlStX5NdLly41f6BXXnklMzNTfmO1atXkF8qCP2rx8fHy2YULFyYlJRmLpFDybN682VibTZs2KVdM8opJim+++UY+rr92qyRJt2/fVt64ePFig51/8cUXShtlc2Bj5BvuWq22qKhI59Tvv/8un9Jf9X7Xrl3yKf2dkENDQ5XR586da3DQrl276lzb/vvf/5ZPRUZGarVajUYzY8YMpb1OAUCr1c6cOdNgz3369MnJyZHbFBYWGluWVl0A0Gq1jx49UvZ21rFx40al2cOHDw22AQBAgJkzZyr/5hlj8JdNKdi+ALBy5crw8HDTn04tNzf33XffLdEQZSkAyI4dO6Z+l8FnG2vUqGEitsFuU1NTTTQeN26cib/3tLS0Zs2a6fe5atUqg+01Gs17771n5jfWoEED5dezjri4ODM7AQAAAGCHpk2bJv+2v337tnwDWqPRvPXWWzrNunfvLs/pfvz48a1bt+S3LFiwoERj/fHHH/IbL1y4IE9UMrgMzsKFC+VmoaGhubm5Wq02Kyvr1VdfLdFYSsj9+/crg+o3U6ZtXbx4UX5hYv2fS5cuqa+Gli9fbrDZzJkzlTYJCQne3t7y8cWLF2dlZanDzJkz57fffpPPRkVFKe/atGnTCy+88Ntvv6m/4U8//XTbtm1eXl7r169XWl67dk0++/PPP+tfp69du1ZpeffuXWXX5fXr1ysz9P/44w/1W5TqjkynBvDZZ58ppwoKCnbv3t2vXz/l7MiRI/ft26c/k0/eUGHw4MHyJW1hYaF6Dp9+AUCr1Z4+fVq9oPGwYcP27dunbrBjxw5jf006BQCtVpudnb1lyxZPT0+lzQcffKC+86DRaJR9rQEAEGz//v3KE3/GJCcnl3EvXIVtCgBvvPHGL7/8ovy2M9/9+/dHjhxZ0uHKXgCQJGnq1Kl3797VGn8Q9ezZsyZiG3yLsan6kiT98MMPpp+H+O677wz2aexJEXkFT4Pc3d0nTpz4zTffbNy48ciRI5GRkVlZWSb+q/vqq6/M/NIAAAAA2Bt3d3d55ntRUZH8s1/ZbFbHo0ePtFqtRqNRViUt6VgTJ06U36hcXxjc17dPnz7y5Y9yk7oUU9y2bdumM5b+Yw2SJK1evVo+q4x16NAhY30qt+9lp06dMtby4cOHSrOCgoLs7Gx5GSLFqFGjfHx85Bviubm5OtfC2dnZSh75gmv8+PHy0qwFBQU6MXJycpTOdUoyvXv3Tk9PV1rm5eVlZ2erJ5bl5eW1bt1a/RadJWRjY2N1Ptq1a9fUDfLz87P/j3rx2AcPHqivRtWfKC8vT97gQaYuAKgXvFW+N52etVqteodqfeoCgPo6Wv748jegvsItKir65ptvTHQIAICNzJo1S3le0oS8vLz333/fUoNaowDQpUuXSZMmLVmy5Ndff7169WpqamqxDzQYFBgY2KRJk1IEsEgBQJIkJyen3bt39+nTR/+Uel1Cfb///rvBDvVnPWi1Wo1GExAQYPqrkOdT6JswYYKx5fv37t07b96877//fv369Tt37vTz87tx40ZiYmJqamp6erqJhYb0RUVFmf+lAQAAALA3OlccW7ZsMdjst99+Uze7cuVKKcZS34/WarXGdrINCQlRN1u3bl1JB5o0aZK6h+TkZGX+u1rdunV1LsSGDh1qrE95Ephi+/btxlp++OGHJq6hfvnlF0mSpkyZYs6yt3v37pX+e+UfE9avX6+TRNnXQV9hYaH+pb3ylIYsPDxc/9MpWwsYc+/ePS8vr/nz5xs8q/NUgboAsH///ps3b5roWaPRFLuYrboA8O233+rUS3SkpKQsXLjQdIcAAFjdiBEj/vrrr2In/mu12qKiIoOTGkqtbt26yjKIaiVaflEtJSUlNTVVvR1QKRQUFKxZs6bUH8pSBQAT7t+/b+LvyNi7jC2zY1pKSkq7du3kHn744YdNmzZt2bJl3759hw4dunfvnokYpRjLoMLCwqlTp1rkewMAAABgewMGDFCWwr9161bVqlWNtVSWgM/IyFCv/WK+RYsWKbPdT5w4YazZoEGDEhMT5Wb6i9SbSVk0pqCgwMSDy999950yKc30XnrTpk1TrtoiIyNbtmxpovG7774bExOjntqfm5ubmJioTnLkyJHHjx8nG5GamhoWFqYsOevn55eSkmKi8YULF6pVq6afZNGiRQ8fPlRP88rJyYmJifnwww/1G3t4eCh1jtTUVP3FoGSrV69OSEjQubeelZWVmJi4ffv2KlWqyM3Wrl2rbpObmxsQEKCzK6+6ACAviLRx48bHjx+rZwoWFhZmZGSEhIRMmjTJxHcuUxcAJEkaNmzYmTNnMjMz1dPjcnJyUlNT9+/f36VLl2I7BCozB9EBgIrvjTfemDFjhoeHh8F/xXVotdqlS5cqu+sUa+3atdHR0RkZGfn5+RqNRr9BUVFRjRo1vvnmmzp16uic2rx58+HDh11cXPTf5eDg4OzsXKNGjUaNGjk4OOjkefDggc4/9iUVERExZ86cgwcPlrqHpk2bXrp0ydXVVf/UypUrZ82aVYZ0kiRJQUFBHTt2NHY2ICDA2C+M7Ozs6tWrl3S4KVOm/PTTT/Jrf3//nj17lrSHsjt58mTpfv0DAAAAsAdt2rSZNWtWZmamwZvCasuWLatRo8aqVatKfV9+3Lhx3bp1u3XrVrHrrvz888+JiYmffvpp6QaSJOmzzz579tlnjxw5smfPHhPN3nzzTS8vr2vXrhlb1l/h4eExceLErKysjz76yJwAb7zxRs+ePatUqVJUVHTu3DkTDw1Y2/jx47t27arRaAoKCnx9fQ8cOGCi8bJly+rVq1fs3fZevXq98sortWvXlu+q//77735+fvrNli5d+sQTTxQWFh47dkx/3M6dO584caJWrVqSJO3YseMf//iHfHz06NE9e/Z0cnKqUqXKzZs3t2/fbnDnZH1Lliz55JNP5NfVqlXLz8+XJKlp06be3t7t2rUrKipydHQ8duyY6f8kAACwrsaNGy9YsKDYp+rU8vPzS7ryj/mdl9qtW7d0Bj1+/Hipe0tOTi71kwdqzzzzjPWeAPD19TXxEYqKisaNG2fsvaVYCunjjz9W9/DNN9+UtAeLyM3NLeP3BgAAAACohNRPAFikQKJ+AsDE4ywAzFFFdACgwnrttde++OILna14TMjIyOjWrdsPP/xg1VSlUFBQoHPE9AOVxmRkZGzatKl+/fpKGb8sqlWr5uBglWeYQkJCTE+EDwwM/PXXX42dVR6TNNPnn3/+9ddfq4+Y2NrXqqpVq1aKRTkBAAAAAJXcE088oVwLa0u+s7S+GjVqKK/l6f8ASo0CAGAty5cvHzNmjInF4tVu3LhRp06dwMBAa6eyiGIfqNRx69atr7/+uk6dOiYmzltQGQsD9+/fN3E2Pz9/9uzZJhqYPzchKytrwoQJixcv1jmekJBgZg8WN3DgQFFDAwAAAADKqapVqypX4o6OjmXv0NnZWXnt5uZW9g4BALCWTz75xPS6KxqNZv369aXu33oLwigiIiL0x1W2jTLh0aNHJ06csNKy8u3bt1e2k9Kxdu3aMnb+wQcfGFvJx/Rf1ujRo838ViMjI5Vdf3W0bds2NTXVzH7MER8fHxERERgY+PPPP48bN65Dhw4JCQnGGhvbHgoAAAAAAEX16tW3bdv2xRdfSJK0atUq5aLy9u3bkiR16dJl165dU6dONb/D8ePHb926deTIkZIkXb16VelQfgT/X//617Zt20zs1QcAgDAbNmwwdrM1IiJi1KhRZencUveITTBYANixY4fBxjk5OXfv3t23b5+1J/t37do1JSXFYAZlN92yGDVqlH6BISQkxPS7Fi1aVOz3mZmZuXHjRtP93L59u6R/TRqN5vHjx7Gxsbdv3w4LC9uzZ89XX301fvz4gQMH6k+XMLjJQVFR0eXLl19++eUyfXEAAAAAgErg3Llz8rVkdnZ2YWGh+uoyOzs7Ly9Pq9UmJiZ26NDBzA5zc3O1Wm1BQUF2drbOtWp2drZGo9FqtWfOnLHqhwIAoJTCwsJ0bramp6evWrWq7D2X9DZxKURHR+uPO27cuKKiIrlBZmbmw4cP/fz85s2b5+3tXfYPZY6BAwcqWwzp2LBhg0WGGD58eFpamtLtw4cPW7VqVey7/vjjD2PfZEZGxrFjx/r06VNsJ/r/wWi12vz8/LS0tMTExIcPH8bGxoaEhBw5cuTnn39esGDBRx999Pbbb/fq1cvMj9a/f391zxqNJigoaNKkSWa+HQAAAABQyV2+fLnY+wlZWVl9+/Y1s0OdKoJBxU7LA6DPSXQAoFL49NNPd+/e7eLiIklSfn6+r6/vnDlzrl+/Xvaef/jhh9zc3JycHPlfyrJ3KHNwcHB0dKxWrZqLi0tKSop+g19//fXLL78MDQ29fv36hQsXDhw4YKmhzdSoUSP1pkBq1apVs8gQ+/fvnzFjxqZNmyRJKigo+PTTTyMjI4t914gRI06dOtW7d2/1wcePHx8+fHjdunVnz541Z+iUlJSkpKSoqKgHDx4kJydnZWWlp6fHx8ffunUrNDQ0MTGxVB/o//n6+sbFxbm5uRUVFYWHh//nP/9ZvXp1GfsEAAAAAFQeH3/88bp16xo1anT//v2bN2+qNwFu2LChu7u7Vqvdt2/fyZMnzexw6dKlU6ZMcXR0DA4OTktLUzYV0Gg0L7zwQoMGDTIyMsqyhDIAANa1Z88erVZ77ty5IUOGiM5SEUydOjU1NTVOT3JysnzL3lLmzp2r1Wo/+eSTEr3rwoULWq02Ly8vICBgwYIFFsxjKf7+/tHR0TNmzBAdBAAAAAAAAADKudatW48ePVp0CpRG6fbF3bp1a/v27S0exlKeeuop0REAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/DHhwIAAAAAAD5vzaCqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqrjIpXXAAAJj0lEQVSqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqSntwQAAAAAAg5P/rhgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOYCriA6Y/RX2KEAAAAASUVORK5CYII=
```
I am getting success stanza after long time. Approximetly 4 to 5 seconds.
Help!!",
685,https://api.github.com/repos/processone/ejabberd/issues/3026,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3026/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3026/comments,https://api.github.com/repos/processone/ejabberd/issues/3026/events,https://github.com/processone/ejabberd/issues/3026,494788883,MDU6SXNzdWU0OTQ3ODg4ODM=,3026,Mac OSX Binary-Install of 19.08 won't start due to libexpat / fxml_stream.so shared library version/misconfigure,"{'login': 'scottcc', 'id': 225380, 'node_id': 'MDQ6VXNlcjIyNTM4MA==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/225380?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/scottcc', 'html_url': 'https://github.com/scottcc', 'followers_url': 'https://api.github.com/users/scottcc/followers', 'following_url': 'https://api.github.com/users/scottcc/following{/other_user}', 'gists_url': 'https://api.github.com/users/scottcc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/scottcc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/scottcc/subscriptions', 'organizations_url': 'https://api.github.com/users/scottcc/orgs', 'repos_url': 'https://api.github.com/users/scottcc/repos', 'events_url': 'https://api.github.com/users/scottcc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/scottcc/received_events', 'type': 'User', 'site_admin': False}","[{'id': 231569227, 'node_id': 'MDU6TGFiZWwyMzE1NjkyMjc=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Installers', 'name': 'Component:Installers', 'color': 'fef2c0', 'default': False, 'description': None}, {'id': 179040989, 'node_id': 'MDU6TGFiZWwxNzkwNDA5ODk=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Bug', 'name': 'Kind:Bug', 'color': 'e11d21', 'default': False, 'description': None}]",closed,False,"{'login': 'jsautret', 'id': 568898, 'node_id': 'MDQ6VXNlcjU2ODg5OA==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/568898?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jsautret', 'html_url': 'https://github.com/jsautret', 'followers_url': 'https://api.github.com/users/jsautret/followers', 'following_url': 'https://api.github.com/users/jsautret/following{/other_user}', 'gists_url': 'https://api.github.com/users/jsautret/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jsautret/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jsautret/subscriptions', 'organizations_url': 'https://api.github.com/users/jsautret/orgs', 'repos_url': 'https://api.github.com/users/jsautret/repos', 'events_url': 'https://api.github.com/users/jsautret/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jsautret/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'jsautret', 'id': 568898, 'node_id': 'MDQ6VXNlcjU2ODg5OA==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/568898?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jsautret', 'html_url': 'https://github.com/jsautret', 'followers_url': 'https://api.github.com/users/jsautret/followers', 'following_url': 'https://api.github.com/users/jsautret/following{/other_user}', 'gists_url': 'https://api.github.com/users/jsautret/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jsautret/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jsautret/subscriptions', 'organizations_url': 'https://api.github.com/users/jsautret/orgs', 'repos_url': 'https://api.github.com/users/jsautret/repos', 'events_url': 'https://api.github.com/users/jsautret/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jsautret/received_events', 'type': 'User', 'site_admin': False}]",,9,2019-09-17T18:42:17Z,2020-03-19T14:15:40Z,2020-02-20T15:29:36Z,NONE,,,"## Environment
- ejabberd version: 19.08
- Erlang version: `erl +V`
-- Binary/distribution: ==> `Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.3.4`
-- OS/homebrew: ==> `Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.3.5`
- OS: Mac OSX (High Sierra, 10.12.6)
- Installed from: official binary installer
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
I won't paste the whole config here unless needed - let me know.
```yaml
loglevel: 5
...
```
## Errors from error.log/crash.log
```
2019-09-17 16:29:42.554 [error] <0.177.0> failed to load NIF /Applications/ejabberd-19.08/lib/fast_xml-1.1.37/priv/lib/fxml_stream: Failed to load NIF library: 'dlopen(/Applications/ejabberd-19.08/lib/fast_xml-1.1.37/priv/lib/fxml_stream.so, 2): Library not loaded: /opt/local/lib/libexpat.1.dylib
Referenced from: /Applications/ejabberd-19.08/lib/fast_xml-1.1.37/priv/lib/fxml_stream.so
Reason: Incompatible library version: fxml_stream.so requires version 8.0.0 or later, but libexpat.1.dylib provides version 7.0.0'
2019-09-17 16:29:42.554 [error] <0.176.0> CRASH REPORT Process <0.176.0> with 0 neighbours exited with reason: {unable_to_load_nif,{fast_xml,start,[normal,[]]}} in application_master:init/4 line 138
2019-09-17 16:29:42.555 [error] <0.173.0> CRASH REPORT Process <0.173.0> with 0 neighbours exited with reason: {{fast_xml,{unable_to_load_nif,{fast_xml,start,[normal,[]]}}},{xmpp,start,[normal,[]]}} in application_master:init/4 line 138
2019-09-17 16:29:42.588 [error] <0.189.0> External eimp process (pid=84847) has terminated unexpectedly, restarting in a few seconds
2019-09-17 16:29:42.588 [error] <0.191.0> External eimp process (pid=84848) has terminated unexpectedly, restarting in a few seconds
2019-09-17 16:29:42.589 [error] <0.193.0> External eimp process (pid=84849) has terminated unexpectedly, restarting in a few seconds
2019-09-17 16:29:42.592 [error] <0.195.0> External eimp process (pid=84851) has terminated unexpectedly, restarting in a few seconds
2019-09-17 16:29:42.672 [critical] <0.106.0>@ejabberd_app:start:71 Failed to start ejabberd application: Exception occurred during configuration processing. This is most likely due to faulty/incompatible validator in third-party code. If you are not running any third-party code, please report the bug with ejabberd configuration file attached and the following stacktrace included:
** exception error: nif_not_loaded
in function erlang:nif_error/1
called as erlang:nif_error(nif_not_loaded)
in call from jid:string_to_usr/1 (src/jid.erl, line 121)
in call from jid:decode/1 (src/jid.erl, line 136)
in call from econf:'-domain/0-fun-0-'/1 (src/econf.erl, line 458)
in call from yconf:'-list/2-fun-0-'/3 (src/yconf.erl, line 541)
in call from lists:mapfoldl/3 (lists.erl, line 1354)
in call from yconf:'-list/2-fun-1-'/3 (src/yconf.erl, line 537)
in call from yconf:'-non_empty/1-fun-0-'/2 (src/yconf.erl, line 522)
```
## Bug description
It appears that compared to 19.05, the Mac Installer has changed the minimum requirement of libexpat to now need version 8.0.0, whereas the prior version was ok with version 7.0.0.
Here's an example of the 19.05 otool output:
```shell
> otool -L /Applications/ejabberd-19.05/lib/fast_xml-1.1.36/priv/lib/fxml_stream.so
/Applications/ejabberd-19.05/lib/fast_xml-1.1.36/priv/lib/fxml_stream.so:
/usr/lib/libexpat.1.dylib (compatibility version 7.0.0, current version 8.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1252.50.4)
```
When we look into the path expected for 19.08, it looks like it is searching in `/opt/local/lib/` which typically doesn't exist on Macs:
```shell
> otool -L /Applications/ejabberd-19.08/lib/fast_xml-1.1.37/priv/lib/fxml_stream.so
/Applications/ejabberd-19.08/lib/fast_xml-1.1.37/priv/lib/fxml_stream.so:
/opt/local/lib/libexpat.1.dylib (compatibility version 8.0.0, current version 8.8.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1252.250.1)
```
I've tried using the homebrew version (has a current version of 8.10.0 and which lives in `/usr/local/opt/expat/lib/libexpat.1.dylib` but is keg-only so it's not a part of the path) but then I get a rolling pile of errors like `External eimp process (pid=18390) has terminated unexpectedly, restarting in a few seconds`, and /var/log/system.out is yelling about `no path for address 0x10e807000` so I suspect hacking in the library won't suffice. ",
686,https://api.github.com/repos/processone/ejabberd/issues/3025,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3025/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3025/comments,https://api.github.com/repos/processone/ejabberd/issues/3025/events,https://github.com/processone/ejabberd/issues/3025,494123201,MDU6SXNzdWU0OTQxMjMyMDE=,3025,Support extension fields in vcards,"{'login': 'wichert', 'id': 199657, 'node_id': 'MDQ6VXNlcjE5OTY1Nw==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/199657?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/wichert', 'html_url': 'https://github.com/wichert', 'followers_url': 'https://api.github.com/users/wichert/followers', 'following_url': 'https://api.github.com/users/wichert/following{/other_user}', 'gists_url': 'https://api.github.com/users/wichert/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/wichert/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/wichert/subscriptions', 'organizations_url': 'https://api.github.com/users/wichert/orgs', 'repos_url': 'https://api.github.com/users/wichert/repos', 'events_url': 'https://api.github.com/users/wichert/events{/privacy}', 'received_events_url': 'https://api.github.com/users/wichert/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179398196, 'node_id': 'MDU6TGFiZWwxNzkzOTgxOTY=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Feature', 'name': 'Kind:Feature', 'color': '207de5', 'default': False, 'description': None}]",open,False,"{'login': 'zinid', 'id': 1095902, 'node_id': 'MDQ6VXNlcjEwOTU5MDI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1095902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/zinid', 'html_url': 'https://github.com/zinid', 'followers_url': 'https://api.github.com/users/zinid/followers', 'following_url': 'https://api.github.com/users/zinid/following{/other_user}', 'gists_url': 'https://api.github.com/users/zinid/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/zinid/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/zinid/subscriptions', 'organizations_url': 'https://api.github.com/users/zinid/orgs', 'repos_url': 'https://api.github.com/users/zinid/repos', 'events_url': 'https://api.github.com/users/zinid/events{/privacy}', 'received_events_url': 'https://api.github.com/users/zinid/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'zinid', 'id': 1095902, 'node_id': 'MDQ6VXNlcjEwOTU5MDI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1095902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/zinid', 'html_url': 'https://github.com/zinid', 'followers_url': 'https://api.github.com/users/zinid/followers', 'following_url': 'https://api.github.com/users/zinid/following{/other_user}', 'gists_url': 'https://api.github.com/users/zinid/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/zinid/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/zinid/subscriptions', 'organizations_url': 'https://api.github.com/users/zinid/orgs', 'repos_url': 'https://api.github.com/users/zinid/repos', 'events_url': 'https://api.github.com/users/zinid/events{/privacy}', 'received_events_url': 'https://api.github.com/users/zinid/received_events', 'type': 'User', 'site_admin': False}]",,8,2019-09-16T15:30:02Z,2019-09-19T14:41:39Z,,NONE,,,"We have some extra data that we want to include in a vcard. Currently ejabberd strips away any fields it does not recognise. This used to be accepted a long time ago (ejabberd 16.06), but was changed when moving to a standard XML parser.
As far as I can see the standards say that this should be possible: [XEP-0054](https://xmpp.org/extensions/xep-0054.html) states that the XMPP vcards are based on RFC 2426. The RFC states that you can include private fields [if you use an X-prefix](https://tools.ietf.org/html/rfc2426#section-3.8).
**Describe the solution you'd like**
I would like ejabberd to preserve X- fields in vcards.
",
687,https://api.github.com/repos/processone/ejabberd/issues/3024,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3024/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3024/comments,https://api.github.com/repos/processone/ejabberd/issues/3024/events,https://github.com/processone/ejabberd/issues/3024,493986834,MDU6SXNzdWU0OTM5ODY4MzQ=,3024,Error in installing from SOURCE,"{'login': 'shaggi7', 'id': 54536845, 'node_id': 'MDQ6VXNlcjU0NTM2ODQ1', 'avatar_url': 'https://avatars1.githubusercontent.com/u/54536845?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/shaggi7', 'html_url': 'https://github.com/shaggi7', 'followers_url': 'https://api.github.com/users/shaggi7/followers', 'following_url': 'https://api.github.com/users/shaggi7/following{/other_user}', 'gists_url': 'https://api.github.com/users/shaggi7/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/shaggi7/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/shaggi7/subscriptions', 'organizations_url': 'https://api.github.com/users/shaggi7/orgs', 'repos_url': 'https://api.github.com/users/shaggi7/repos', 'events_url': 'https://api.github.com/users/shaggi7/events{/privacy}', 'received_events_url': 'https://api.github.com/users/shaggi7/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-09-16T11:15:43Z,2019-09-16T11:33:48Z,2019-09-16T11:33:48Z,NONE,,,"Hi,
I was using Ejabberd-19.05 with binaries .
I want to Implement MIX on my app. So again building from source. I am getting this error from source .
```
checking for GNU libc compatible malloc... yes
checking for ANSI C header files... (cached) yes
checking for erl... /usr/lib/erlang/erts-10.4.4/bin/erl
checking for erlc... /usr/lib/erlang/erts-10.4.4/bin/erlc
checking expat.h usability... no
checking expat.h presence... no
checking for expat.h... no
configure: error: libexpat header file expat.h was not found
ERROR: Command ['configure-deps'] failed!
Makefile:108: recipe for target 'deps/.built' failed
make: *** [deps/.built] Error 1
```
",
688,https://api.github.com/repos/processone/ejabberd/issues/3023,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3023/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3023/comments,https://api.github.com/repos/processone/ejabberd/issues/3023/events,https://github.com/processone/ejabberd/issues/3023,493776818,MDU6SXNzdWU0OTM3NzY4MTg=,3023,MUC: Apply default role after revoking admin affiliation,"{'login': 'lovetox', 'id': 8661218, 'node_id': 'MDQ6VXNlcjg2NjEyMTg=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/8661218?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/lovetox', 'html_url': 'https://github.com/lovetox', 'followers_url': 'https://api.github.com/users/lovetox/followers', 'following_url': 'https://api.github.com/users/lovetox/following{/other_user}', 'gists_url': 'https://api.github.com/users/lovetox/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/lovetox/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/lovetox/subscriptions', 'organizations_url': 'https://api.github.com/users/lovetox/orgs', 'repos_url': 'https://api.github.com/users/lovetox/repos', 'events_url': 'https://api.github.com/users/lovetox/events{/privacy}', 'received_events_url': 'https://api.github.com/users/lovetox/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179040838, 'node_id': 'MDU6TGFiZWwxNzkwNDA4Mzg=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:MUC', 'name': 'Component:MUC', 'color': 'fad8c7', 'default': False, 'description': None}, {'id': 179040989, 'node_id': 'MDU6TGFiZWwxNzkwNDA5ODk=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Bug', 'name': 'Kind:Bug', 'color': 'e11d21', 'default': False, 'description': None}]",closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]",,1,2019-09-15T19:33:05Z,2019-09-17T10:32:25Z,2019-09-17T10:32:25Z,NONE,,,"## Environment
- ejabberd version: 19.05
- OS: Linux (Debian)
- Installed from: distro package
## Bug description
If a owner revokes admin status of an occupant with setting `affiliation=none`, ejabberd does not apply the default role ""visitor"" ( or at least participant for unmoderated MUCs).
The role of the occupant stays at `moderator` with an affiliation of `none`.
This is in contrast to revoking admin status with setting affiliation to `member`, this applies the default role `participant`.
```
```
",
689,https://api.github.com/repos/processone/ejabberd/issues/3022,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3022/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3022/comments,https://api.github.com/repos/processone/ejabberd/issues/3022/events,https://github.com/processone/ejabberd/issues/3022,493725098,MDU6SXNzdWU0OTM3MjUwOTg=,3022,Message to offline users gets 503 error when using JWT auth method,"{'login': 'sha256', 'id': 1493554, 'node_id': 'MDQ6VXNlcjE0OTM1NTQ=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1493554?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/sha256', 'html_url': 'https://github.com/sha256', 'followers_url': 'https://api.github.com/users/sha256/followers', 'following_url': 'https://api.github.com/users/sha256/following{/other_user}', 'gists_url': 'https://api.github.com/users/sha256/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/sha256/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/sha256/subscriptions', 'organizations_url': 'https://api.github.com/users/sha256/orgs', 'repos_url': 'https://api.github.com/users/sha256/repos', 'events_url': 'https://api.github.com/users/sha256/events{/privacy}', 'received_events_url': 'https://api.github.com/users/sha256/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179040989, 'node_id': 'MDU6TGFiZWwxNzkwNDA5ODk=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Bug', 'name': 'Kind:Bug', 'color': 'e11d21', 'default': False, 'description': None}]",closed,False,"{'login': 'alexeyshch', 'id': 1354311, 'node_id': 'MDQ6VXNlcjEzNTQzMTE=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1354311?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/alexeyshch', 'html_url': 'https://github.com/alexeyshch', 'followers_url': 'https://api.github.com/users/alexeyshch/followers', 'following_url': 'https://api.github.com/users/alexeyshch/following{/other_user}', 'gists_url': 'https://api.github.com/users/alexeyshch/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/alexeyshch/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/alexeyshch/subscriptions', 'organizations_url': 'https://api.github.com/users/alexeyshch/orgs', 'repos_url': 'https://api.github.com/users/alexeyshch/repos', 'events_url': 'https://api.github.com/users/alexeyshch/events{/privacy}', 'received_events_url': 'https://api.github.com/users/alexeyshch/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'alexeyshch', 'id': 1354311, 'node_id': 'MDQ6VXNlcjEzNTQzMTE=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1354311?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/alexeyshch', 'html_url': 'https://github.com/alexeyshch', 'followers_url': 'https://api.github.com/users/alexeyshch/followers', 'following_url': 'https://api.github.com/users/alexeyshch/following{/other_user}', 'gists_url': 'https://api.github.com/users/alexeyshch/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/alexeyshch/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/alexeyshch/subscriptions', 'organizations_url': 'https://api.github.com/users/alexeyshch/orgs', 'repos_url': 'https://api.github.com/users/alexeyshch/repos', 'events_url': 'https://api.github.com/users/alexeyshch/events{/privacy}', 'received_events_url': 'https://api.github.com/users/alexeyshch/received_events', 'type': 'User', 'site_admin': False}]",,7,2019-09-15T11:15:08Z,2019-12-04T01:54:33Z,2019-12-04T01:54:33Z,NONE,,,"## Environment
- ejabberd version: 18.09
- Erlang version: Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.3.4
- OS: Linux (Debian)
- Installed from: official binary installer
## Errors from error.log/crash.log
No errors
## Bug description
When sending a message to a user who's offline, I get a 503 service unavailable response when using `jwt` as `auth_method`. It works fine when I set `sql` as `auth_method`. There's no other error message shown in the console (ejabberdctl live)
",
690,https://api.github.com/repos/processone/ejabberd/issues/3021,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3021/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3021/comments,https://api.github.com/repos/processone/ejabberd/issues/3021/events,https://github.com/processone/ejabberd/issues/3021,493221648,MDU6SXNzdWU0OTMyMjE2NDg=,3021,See admins in MUC/Sub rooms .,"{'login': 'shaggi7', 'id': 54536845, 'node_id': 'MDQ6VXNlcjU0NTM2ODQ1', 'avatar_url': 'https://avatars1.githubusercontent.com/u/54536845?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/shaggi7', 'html_url': 'https://github.com/shaggi7', 'followers_url': 'https://api.github.com/users/shaggi7/followers', 'following_url': 'https://api.github.com/users/shaggi7/following{/other_user}', 'gists_url': 'https://api.github.com/users/shaggi7/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/shaggi7/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/shaggi7/subscriptions', 'organizations_url': 'https://api.github.com/users/shaggi7/orgs', 'repos_url': 'https://api.github.com/users/shaggi7/repos', 'events_url': 'https://api.github.com/users/shaggi7/events{/privacy}', 'received_events_url': 'https://api.github.com/users/shaggi7/received_events', 'type': 'User', 'site_admin': False}","[{'id': 352233730, 'node_id': 'MDU6TGFiZWwzNTIyMzM3MzA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Question', 'name': 'Kind:Question', 'color': 'fef2c0', 'default': False, 'description': None}]",closed,False,,[],,11,2019-09-13T09:19:54Z,2019-09-16T13:45:11Z,2019-09-16T13:45:11Z,NONE,,,"Hi,
I am making a chat applications for which i have to show admins to the group members Just like in Whatsapp everybody can see the group admins .
I am using MUC/SUB technique for the group chat system .
Is there a way to achieve this.
Please Help! ",
691,https://api.github.com/repos/processone/ejabberd/issues/3020,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3020/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3020/comments,https://api.github.com/repos/processone/ejabberd/issues/3020/events,https://github.com/processone/ejabberd/issues/3020,492868766,MDU6SXNzdWU0OTI4Njg3NjY=,3020,Embedded Ejabberd in Elixir app - logger error,"{'login': 'sarsonj', 'id': 925756, 'node_id': 'MDQ6VXNlcjkyNTc1Ng==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/925756?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/sarsonj', 'html_url': 'https://github.com/sarsonj', 'followers_url': 'https://api.github.com/users/sarsonj/followers', 'following_url': 'https://api.github.com/users/sarsonj/following{/other_user}', 'gists_url': 'https://api.github.com/users/sarsonj/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/sarsonj/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/sarsonj/subscriptions', 'organizations_url': 'https://api.github.com/users/sarsonj/orgs', 'repos_url': 'https://api.github.com/users/sarsonj/repos', 'events_url': 'https://api.github.com/users/sarsonj/events{/privacy}', 'received_events_url': 'https://api.github.com/users/sarsonj/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179040924, 'node_id': 'MDU6TGFiZWwxNzkwNDA5MjQ=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:Elixir', 'name': 'Component:Elixir', 'color': 'bfe5bf', 'default': False, 'description': None}, {'id': 179040989, 'node_id': 'MDU6TGFiZWwxNzkwNDA5ODk=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Bug', 'name': 'Kind:Bug', 'color': 'e11d21', 'default': False, 'description': None}]",open,False,,[],,3,2019-09-12T15:11:06Z,2020-06-06T08:48:04Z,,NONE,,,"## Environment
- ejabberd version: 19.8.0
- Erlang version: Erlang/OTP 22
- Elixir version: Elixir 1.9.1 (compiled with Erlang/OTP 22)
- OS: Linux (Debian)
- Installed from: elixir mix
## Bug description
I followed tutorial on https://docs.ejabberd.im/developer/extending-ejabberd/elixir/.
ejabber writes, that it will use elixir logger:
14:43:24.485 [info] Ignoring ejabberd logger options, using Elixir Logger.
However, then I got many errors like:
```
14:43:25.987 [error] :gen_event handler :elixir_logger_backend installed in :lager_event terminating
** (UndefinedFunctionError) function Logger.Config.__data__/0 is undefined or private
(logger) Logger.Config.__data__()
(ejabberd) src/elixir_logger_backend.erl:43: :elixir_logger_backend.handle_event/2
(stdlib) gen_event.erl:577: :gen_event.server_update/4
(stdlib) gen_event.erl:559: :gen_event.server_notify/4
(stdlib) gen_event.erl:300: :gen_event.handle_msg/6
(stdlib) proc_lib.erl:249: :proc_lib.init_p_do_apply/3
```
I have configured logger in confix.exs:
```
config :logger,
backends: [:console]
```
And also tried to start logger in mix.exs:
```
def application do
[
extra_applications: [:logger]
]
end
```
",
692,https://api.github.com/repos/processone/ejabberd/issues/3019,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3019/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3019/comments,https://api.github.com/repos/processone/ejabberd/issues/3019/events,https://github.com/processone/ejabberd/issues/3019,492724499,MDU6SXNzdWU0OTI3MjQ0OTk=,3019, Invalid value of option modules: unknown ejabberd module,"{'login': 'Nawarix', 'id': 4215518, 'node_id': 'MDQ6VXNlcjQyMTU1MTg=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/4215518?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Nawarix', 'html_url': 'https://github.com/Nawarix', 'followers_url': 'https://api.github.com/users/Nawarix/followers', 'following_url': 'https://api.github.com/users/Nawarix/following{/other_user}', 'gists_url': 'https://api.github.com/users/Nawarix/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Nawarix/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Nawarix/subscriptions', 'organizations_url': 'https://api.github.com/users/Nawarix/orgs', 'repos_url': 'https://api.github.com/users/Nawarix/repos', 'events_url': 'https://api.github.com/users/Nawarix/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Nawarix/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179040989, 'node_id': 'MDU6TGFiZWwxNzkwNDA5ODk=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Bug', 'name': 'Kind:Bug', 'color': 'e11d21', 'default': False, 'description': None}, {'id': 179053760, 'node_id': 'MDU6TGFiZWwxNzkwNTM3NjA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Note:Needs%20more%20info', 'name': 'Note:Needs more info', 'color': 'c7def8', 'default': False, 'description': None}]",closed,False,,[],,9,2019-09-12T10:36:58Z,2020-01-03T17:17:24Z,2019-11-07T07:47:57Z,NONE,,,"## Environment
- ejabberd version: 19.8.0
- Erlang version: `Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.2.1`
- OS: Linux (centos 7)
- Installed from: docker image ejabberd/ecs:latest
## Errors from error.log/crash.log
10:24:33.360 [critical] Failed to start ejabberd application: Invalid value of option modules: unknown ejabberd module: mod_statsdx. Did you mean mod_statsdx?
10:23:04.997 [error] Configuration reload aborted: Configuration error: duplicated option: modules
## Bug description
I'm trying to run docker image and append custom modules located under .ejabberd-modules
I used the command:
podman run -d --network=host --name ejabberd -v $(pwd)/conf/ejabberd.yml:/home/ejabberd/conf/ejabberd.yml -v $(pwd)/.ejabberd-modules:/home/ejabberd/.ejabberd-modules ejabberd/ecs:latest
I'm facing to bugs:
1- if there is a conf directory in custom module I'm getting
10:23:04.997 [error] Configuration reload aborted: Configuration error: duplicated option: modules
2- if I put the module name under the modules option in yaml file I'm getting
10:24:33.360 [critical] Failed to start ejabberd application: Invalid value of option modules: unknown ejabberd module: mod_statsdx. Did you mean mod_statsdx?
Thank you for your help
",
693,https://api.github.com/repos/processone/ejabberd/issues/3018,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3018/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3018/comments,https://api.github.com/repos/processone/ejabberd/issues/3018/events,https://github.com/processone/ejabberd/issues/3018,491770903,MDU6SXNzdWU0OTE3NzA5MDM=,3018,New configuration validator vs. additional-configuration-files,"{'login': 'stefansieg', 'id': 8237336, 'node_id': 'MDQ6VXNlcjgyMzczMzY=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/8237336?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/stefansieg', 'html_url': 'https://github.com/stefansieg', 'followers_url': 'https://api.github.com/users/stefansieg/followers', 'following_url': 'https://api.github.com/users/stefansieg/following{/other_user}', 'gists_url': 'https://api.github.com/users/stefansieg/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/stefansieg/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/stefansieg/subscriptions', 'organizations_url': 'https://api.github.com/users/stefansieg/orgs', 'repos_url': 'https://api.github.com/users/stefansieg/repos', 'events_url': 'https://api.github.com/users/stefansieg/events{/privacy}', 'received_events_url': 'https://api.github.com/users/stefansieg/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179053080, 'node_id': 'MDU6TGFiZWwxNzkwNTMwODA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Documentation', 'name': 'Kind:Documentation', 'color': '006b75', 'default': False, 'description': None}]",closed,False,"{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'badlop', 'id': 96807, 'node_id': 'MDQ6VXNlcjk2ODA3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/96807?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/badlop', 'html_url': 'https://github.com/badlop', 'followers_url': 'https://api.github.com/users/badlop/followers', 'following_url': 'https://api.github.com/users/badlop/following{/other_user}', 'gists_url': 'https://api.github.com/users/badlop/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/badlop/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/badlop/subscriptions', 'organizations_url': 'https://api.github.com/users/badlop/orgs', 'repos_url': 'https://api.github.com/users/badlop/repos', 'events_url': 'https://api.github.com/users/badlop/events{/privacy}', 'received_events_url': 'https://api.github.com/users/badlop/received_events', 'type': 'User', 'site_admin': False}]",,7,2019-09-10T16:14:20Z,2019-09-19T14:28:39Z,2019-09-19T14:28:39Z,NONE,,,"Hi,
with the new configuration validator the ACL example at: https://docs.ejabberd.im/admin/configuration/#include-additional-configuration-files
will result in the following error message:
""Failed to start ejabberd application: Configuration error: duplicated option: acl""
So, either the config checker, the documentation, or I'm wrong :)",
694,https://api.github.com/repos/processone/ejabberd/issues/3017,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3017/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3017/comments,https://api.github.com/repos/processone/ejabberd/issues/3017/events,https://github.com/processone/ejabberd/issues/3017,491634982,MDU6SXNzdWU0OTE2MzQ5ODI=,3017,Custom Field in vCard .,"{'login': 'shaggi7', 'id': 54536845, 'node_id': 'MDQ6VXNlcjU0NTM2ODQ1', 'avatar_url': 'https://avatars1.githubusercontent.com/u/54536845?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/shaggi7', 'html_url': 'https://github.com/shaggi7', 'followers_url': 'https://api.github.com/users/shaggi7/followers', 'following_url': 'https://api.github.com/users/shaggi7/following{/other_user}', 'gists_url': 'https://api.github.com/users/shaggi7/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/shaggi7/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/shaggi7/subscriptions', 'organizations_url': 'https://api.github.com/users/shaggi7/orgs', 'repos_url': 'https://api.github.com/users/shaggi7/repos', 'events_url': 'https://api.github.com/users/shaggi7/events{/privacy}', 'received_events_url': 'https://api.github.com/users/shaggi7/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,4,2019-09-10T12:15:16Z,2019-09-12T05:04:18Z,2019-09-10T13:31:31Z,NONE,,,"Hi,
I am using ejabberd 19.05 from binaries. Server is configured to mySQL .
I want to store additional data in vCard.
I have made an additional column in the table ""vCard_search"" in the ejabberd database.
![image](https://user-images.githubusercontent.com/54536845/64612334-29994380-d3f1-11e9-901a-6aefcf6e4f25.png)
and I am sending the This IQ stanza:
![image](https://user-images.githubusercontent.com/54536845/64612790-471add00-d3f2-11e9-8596-265676b26524.png)
It is returning success stanza. but When i get th stanza i am only getting two field like this:
![image](https://user-images.githubusercontent.com/54536845/64612963-a5e05680-d3f2-11e9-95ed-2e43825f67d1.png)
Please suggest any changes i have to do if i want to have any additional data stored as vcard in my Database .
Thank you
",
695,https://api.github.com/repos/processone/ejabberd/issues/3016,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3016/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3016/comments,https://api.github.com/repos/processone/ejabberd/issues/3016/events,https://github.com/processone/ejabberd/issues/3016,491117749,MDU6SXNzdWU0OTExMTc3NDk=,3016,SQL pool frequently marked as overloaded,"{'login': 'wichert', 'id': 199657, 'node_id': 'MDQ6VXNlcjE5OTY1Nw==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/199657?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/wichert', 'html_url': 'https://github.com/wichert', 'followers_url': 'https://api.github.com/users/wichert/followers', 'following_url': 'https://api.github.com/users/wichert/following{/other_user}', 'gists_url': 'https://api.github.com/users/wichert/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/wichert/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/wichert/subscriptions', 'organizations_url': 'https://api.github.com/users/wichert/orgs', 'repos_url': 'https://api.github.com/users/wichert/repos', 'events_url': 'https://api.github.com/users/wichert/events{/privacy}', 'received_events_url': 'https://api.github.com/users/wichert/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179040989, 'node_id': 'MDU6TGFiZWwxNzkwNDA5ODk=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Bug', 'name': 'Kind:Bug', 'color': 'e11d21', 'default': False, 'description': None}, {'id': 179053760, 'node_id': 'MDU6TGFiZWwxNzkwNTM3NjA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Note:Needs%20more%20info', 'name': 'Note:Needs more info', 'color': 'c7def8', 'default': False, 'description': None}]",closed,False,"{'login': 'zinid', 'id': 1095902, 'node_id': 'MDQ6VXNlcjEwOTU5MDI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1095902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/zinid', 'html_url': 'https://github.com/zinid', 'followers_url': 'https://api.github.com/users/zinid/followers', 'following_url': 'https://api.github.com/users/zinid/following{/other_user}', 'gists_url': 'https://api.github.com/users/zinid/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/zinid/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/zinid/subscriptions', 'organizations_url': 'https://api.github.com/users/zinid/orgs', 'repos_url': 'https://api.github.com/users/zinid/repos', 'events_url': 'https://api.github.com/users/zinid/events{/privacy}', 'received_events_url': 'https://api.github.com/users/zinid/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'zinid', 'id': 1095902, 'node_id': 'MDQ6VXNlcjEwOTU5MDI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1095902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/zinid', 'html_url': 'https://github.com/zinid', 'followers_url': 'https://api.github.com/users/zinid/followers', 'following_url': 'https://api.github.com/users/zinid/following{/other_user}', 'gists_url': 'https://api.github.com/users/zinid/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/zinid/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/zinid/subscriptions', 'organizations_url': 'https://api.github.com/users/zinid/orgs', 'repos_url': 'https://api.github.com/users/zinid/repos', 'events_url': 'https://api.github.com/users/zinid/events{/privacy}', 'received_events_url': 'https://api.github.com/users/zinid/received_events', 'type': 'User', 'site_admin': False}]",,7,2019-09-09T14:05:28Z,2020-02-26T14:15:32Z,2020-02-26T14:15:32Z,NONE,,,"## Environment
SQL connection pool is overloaded, discarding stale requests
- ejabberd version: 19.08
- Erlang version: `Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.2.1`
- OS: ?
- Installed from: `ejabberd/ecs:19.08` docker image
## Configuration (only if needed): grep -Ev '^$|^\s*#' ejabberd.yml
```yaml
hosts:
- ""company.com""
loglevel: 4
log_rotate_size: 10485760
log_rotate_date: """"
log_rotate_count: 3
log_rate_limit: 100
listen:
-
port: 5222
ip: ""::""
module: ejabberd_c2s
max_stanza_size: 65536
shaper: c2s_shaper
access: c2s
-
port: 5223
module: ejabberd_c2s
starttls: true
starttls_required: true
dhfile: /home/ejabberd/dhparam/dhparam.pem
protocol_options:
- ""no_sslv3""
- ""no_tlsv1""
- ""no_tlsv1_1""
- ""cipher_server_preference""
- ""no_compression""
max_stanza_size: 65536
shaper: c2s_shaper
access: c2s
-
port: 5269
ip: ""::""
module: ejabberd_s2s_in
max_stanza_size: 524288
-
port: 5280
ip: ""::""
module: ejabberd_http
request_handlers:
""/"": ejabberd_http_ws
-
port: 5347
module: ejabberd_service
access: all
shaper: fast
ip: ""::""
hosts: {}
-
port: 5281
ip: ""::""
module: ejabberd_http
request_handlers:
""/admin"": ejabberd_web_admin
""/api"": mod_http_api
sql_type: pgsql
sql_server: ""postgresql""
sql_database: ""XXX""
sql_username: ""XXX""
sql_password: ""XXX""
sql_port: 5432
default_db: sql
acl:
admin:
user:
- ""admin"": ""company.com""
local:
user_regexp: """"
loopback:
ip:
- ""127.0.0.0/8""
- ""::1/128""
- ::FFFF:127.0.0.1/128
access_rules:
local:
allow: local
c2s:
deny: blocked
allow: all
announce:
allow: admin
configure:
allow: admin
muc_admin:
allow: admin
muc_create:
allow: local
muc:
allow: all
pubsub_createnode:
allow: admin
api_permissions:
""console commands"":
from:
- ejabberd_ctl
who: all
what: ""*""
""admin access"":
who:
access:
allow:
acl: loopback
acl: admin
oauth:
scope: ""ejabberd:admin""
access:
allow:
acl: loopback
acl: admin
what:
- ""*""
- ""!stop""
- ""!start""
shaper:
normal: 5000
fast: 50000
shaper_rules:
max_user_sessions: 10
max_user_offline_messages:
5000: admin
100: all
c2s_shaper:
none: admin
normal: all
s2s_shaper: fast
max_fsm_queue: 10000
acme:
contact: ""mailto:me@example.com""
ca_url: ""https://acme-v01.api.letsencrypt.org""
modules:
mod_adhoc: {}
mod_announce:
access: announce
mod_blocking: {}
mod_caps: {}
mod_carboncopy: {}
mod_client_state:
queue_presence: false
mod_configure: {}
mod_disco: {}
mod_http_api: {}
mod_last:
db_type: sql
mod_muc:
access: muc
access_create: muc_create
access_persistent: muc_create
access_admin: muc_admin
mod_offline:
db_type: sql
access_max_user_messages: max_user_offline_messages
mod_ping: {}
mod_privacy:
db_type: sql
mod_private:
db_type: sql
mod_pubsub:
access_createnode: pubsub_createnode
db_type: sql
last_item_cache: false
plugins:
- ""flat""
- ""pep"" # pep requires mod_caps
max_items_node: 1000
mod_push: {}
mod_roster:
db_type: sql
versioning: true
store_current_id: false
use_cache: false
mod_shared_roster: {}
mod_stats: {}
mod_time: {}
mod_vcard:
search: false
db_type: sql
mod_version:
show_os: false
allow_contrib_modules: true
```
## Errors from error.log/crash.log
```
13:58:12.639 [error] SQL connection pool is overloaded, discarding stale requests
```
## Bug description
We are testing switching to Ejabberd 19.08 (upgrading from 16.06). On a server with only a few people (2 - 60) with very little traffic, I still frequently see `SQL connection pool is overloaded` errors appear. When that happens ejabberd stops responding to everything, until it hits some internal timeout and suddenly starts working again.
When this happens PostgreSQL does not show any connections actually being in use:
```
11393 ? Ss 0:28 postgres: ejabberd crypho 192.168.61.93(40497) idle
11394 ? Ss 0:15 postgres: ejabberd crypho 192.168.61.93(44817) idle
11395 ? Ss 0:02 postgres: ejabberd crypho 192.168.61.93(38277) idle
11396 ? Ss 0:15 postgres: ejabberd crypho 192.168.61.93(52091) idle
11397 ? Ss 0:15 postgres: ejabberd crypho 192.168.61.93(36909) idle
11398 ? Ss 0:15 postgres: ejabberd crypho 192.168.61.93(41171) idle
11399 ? Ss 0:09 postgres: ejabberd crypho 192.168.61.93(48049) idle
11400 ? Ss 0:01 postgres: ejabberd crypho 192.168.61.93(57539) idle
11401 ? Ss 0:15 postgres: ejabberd crypho 192.168.61.93(58679) idle
11402 ? Ss 0:15 postgres: ejabberd crypho 192.168.61.93(34879) idle
```",
696,https://api.github.com/repos/processone/ejabberd/issues/3015,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3015/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3015/comments,https://api.github.com/repos/processone/ejabberd/issues/3015/events,https://github.com/processone/ejabberd/issues/3015,490431526,MDU6SXNzdWU0OTA0MzE1MjY=,3015,Providing wrong certificate,"{'login': 'jugendhacker', 'id': 12773748, 'node_id': 'MDQ6VXNlcjEyNzczNzQ4', 'avatar_url': 'https://avatars0.githubusercontent.com/u/12773748?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jugendhacker', 'html_url': 'https://github.com/jugendhacker', 'followers_url': 'https://api.github.com/users/jugendhacker/followers', 'following_url': 'https://api.github.com/users/jugendhacker/following{/other_user}', 'gists_url': 'https://api.github.com/users/jugendhacker/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jugendhacker/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jugendhacker/subscriptions', 'organizations_url': 'https://api.github.com/users/jugendhacker/orgs', 'repos_url': 'https://api.github.com/users/jugendhacker/repos', 'events_url': 'https://api.github.com/users/jugendhacker/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jugendhacker/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179682417, 'node_id': 'MDU6TGFiZWwxNzk2ODI0MTc=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Component:S2S', 'name': 'Component:S2S', 'color': 'd4c5f9', 'default': False, 'description': None}, {'id': 179040989, 'node_id': 'MDU6TGFiZWwxNzkwNDA5ODk=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Bug', 'name': 'Kind:Bug', 'color': 'e11d21', 'default': False, 'description': None}, {'id': 1007354081, 'node_id': 'MDU6TGFiZWwxMDA3MzU0MDgx', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Kind:Regression', 'name': 'Kind:Regression', 'color': 'd93f0b', 'default': False, 'description': ''}]",closed,False,"{'login': 'zinid', 'id': 1095902, 'node_id': 'MDQ6VXNlcjEwOTU5MDI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1095902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/zinid', 'html_url': 'https://github.com/zinid', 'followers_url': 'https://api.github.com/users/zinid/followers', 'following_url': 'https://api.github.com/users/zinid/following{/other_user}', 'gists_url': 'https://api.github.com/users/zinid/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/zinid/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/zinid/subscriptions', 'organizations_url': 'https://api.github.com/users/zinid/orgs', 'repos_url': 'https://api.github.com/users/zinid/repos', 'events_url': 'https://api.github.com/users/zinid/events{/privacy}', 'received_events_url': 'https://api.github.com/users/zinid/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'zinid', 'id': 1095902, 'node_id': 'MDQ6VXNlcjEwOTU5MDI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1095902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/zinid', 'html_url': 'https://github.com/zinid', 'followers_url': 'https://api.github.com/users/zinid/followers', 'following_url': 'https://api.github.com/users/zinid/following{/other_user}', 'gists_url': 'https://api.github.com/users/zinid/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/zinid/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/zinid/subscriptions', 'organizations_url': 'https://api.github.com/users/zinid/orgs', 'repos_url': 'https://api.github.com/users/zinid/repos', 'events_url': 'https://api.github.com/users/zinid/events{/privacy}', 'received_events_url': 'https://api.github.com/users/zinid/received_events', 'type': 'User', 'site_admin': False}]",,26,2019-09-06T17:09:17Z,2019-09-06T19:28:17Z,2019-09-06T19:20:46Z,NONE,,,I serve my website from another server under my main domain (let's call it example.com) and then I copy the certificate to the server ejabberd is running on (xmpp.example.com). conference.example.com is also pointing to the server ejabberd is running on so the cert of it is generated on this machine. Now I put both of these in ejabberds config and when I try to do s2s on conference.example.com it offers the cert for example.com and so hardened servers do not want to connect to my MUC Service anymore.,
697,https://api.github.com/repos/processone/ejabberd/issues/3014,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3014/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3014/comments,https://api.github.com/repos/processone/ejabberd/issues/3014/events,https://github.com/processone/ejabberd/issues/3014,490253319,MDU6SXNzdWU0OTAyNTMzMTk=,3014,Users are not allowed to register so quickly.,"{'login': 'shaggi7', 'id': 54536845, 'node_id': 'MDQ6VXNlcjU0NTM2ODQ1', 'avatar_url': 'https://avatars1.githubusercontent.com/u/54536845?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/shaggi7', 'html_url': 'https://github.com/shaggi7', 'followers_url': 'https://api.github.com/users/shaggi7/followers', 'following_url': 'https://api.github.com/users/shaggi7/following{/other_user}', 'gists_url': 'https://api.github.com/users/shaggi7/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/shaggi7/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/shaggi7/subscriptions', 'organizations_url': 'https://api.github.com/users/shaggi7/orgs', 'repos_url': 'https://api.github.com/users/shaggi7/repos', 'events_url': 'https://api.github.com/users/shaggi7/events{/privacy}', 'received_events_url': 'https://api.github.com/users/shaggi7/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2019-09-06T10:28:36Z,2019-09-06T10:31:35Z,2019-09-06T10:31:35Z,NONE,,,"Hello,
I want to register users from my web client .
here is my configurations.
```yaml
###
###' ejabberd configuration file
###
### The parameters used in this configuration file are explained at
###
### https://docs.ejabberd.im/admin/configuration
###
### The configuration file is written in YAML.
### *******************************************************
### ******* !!! WARNING !!! *******
### ******* YAML IS INDENTATION SENSITIVE *******
### ******* MAKE SURE YOU INDENT SECTIONS CORRECTLY *******
### *******************************************************
### Refer to http://en.wikipedia.org/wiki/YAML for the brief description.
### However, ejabberd treats different literals as different types:
###
### - unquoted or single-quoted strings. They are called ""atoms"".
### Example: dog, 'Jupiter', '3.14159', YELLOW
###
### - numeric literals. Example: 3, -45.0, .0
###
### - quoted or folded strings.
### Examples of quoted string: ""Lizzard"", ""orange"".
### Example of folded string:
### > Art thou not Romeo,
### and a Montague?
###
language: ""en""
hosts:
- ""XXX.XXX.X.XXX""
loglevel: 4
log_rotate_size: 10485760
log_rotate_date: """"
log_rotate_count: 1
log_rate_limit: 100
certfiles:
- ""/home/sagar-pc/Desktop/TXT.App/server/ejabberd_LAN/conf/server.pem""
## - ""/etc/letsencrypt/live/localhost/fullchain.pem""
## - ""/etc/letsencrypt/live/localhost/privkey.pem""
ca_file: ""/home/sagar-pc/Desktop/TXT.App/server/ejabberd_LAN/conf/cacert.pem""
listen:
-
port: 5222
ip: ""::""
module: ejabberd_c2s
max_stanza_size: 262144
shaper: c2s_shaper
access: c2s
starttls_required: true
-
port: 5269
ip: ""::""
module: ejabberd_s2s_in
max_stanza_size: 524288
-
port: 5443
ip: ""::""
module: ejabberd_http
tls: true
request_handlers:
""/admin"": ejabberd_web_admin
""/api"": mod_http_api
""/bosh"": mod_bosh
""/captcha"": ejabberd_captcha
""/upload"": mod_http_upload
""/ws"": ejabberd_http_ws
""/oauth"": ejabberd_oauth
custom_headers:
""Access-Control-Allow-Origin"": ""*""
""Access-Control-Allow-Methods"": ""OPTIONS, HEAD, GET, PUT""
""Access-Control-Allow-Headers"": ""Authorization, Content-Type""
""Access-Control-Allow-Credentials"": ""true""
-
port: 5280
ip: ""::""
module: ejabberd_http
request_handlers:
""/admin"": ejabberd_web_admin
""/http-bind"": mod_bosh
""/upload"": mod_http_upload
custom_headers:
# ""Access-Control-Allow-Origin"": ""*""
""Access-Control-Allow-Methods"": ""OPTIONS, HEAD, GET, PUT""
""Access-Control-Allow-Headers"": ""Authorization, Content-Type""
""Access-Control-Allow-Credentials"": ""true""
-
port: 1883
ip: ""::""
module: mod_mqtt
backlog: 1000
s2s_use_starttls: optional
acl:
local:
user_regexp: """"
loopback:
ip:
- ""127.0.0.0/8""
- ""::1/128""
- ""::FFFF:127.0.0.1/128""
- ""::FFFF:XXX.XXX.X.XXX""
admin:
user:
- ""admin@192.168.3.145""
access_rules:
local:
- allow: local
c2s:
- deny: blocked
- allow
announce:
- allow: admin
configure:
- allow: admin
muc_create:
- allow: local
pubsub_createnode:
- allow: local
trusted_network:
- allow: loopback
api_permissions:
""console commands"":
from:
- ejabberd_ctl
who: all
what: ""*""
""admin access"":
who:
- access:
- allow:
- acl: loopback
- acl: admin
- oauth:
- scope: ""ejabberd:admin""
- access:
- allow:
- acl: loopback
- acl: admin
what:
- ""*""
- ""!stop""
- ""!start""
""public commands"":
who:
- ip: ""127.0.0.1/8""
what:
- ""status""
- ""connected_users_number""
shaper:
normal: 1000
fast: 50000
shaper_rules:
max_user_sessions: 10
max_user_offline_messages:
- 5000: admin
- 100
c2s_shaper:
- none: admin
- normal
s2s_shaper: fast
soft_upload_quota:
- 1000: all # MiB
hard_upload_quota:
- 1100: all # MiB
max_fsm_queue: 10000
acme:
contact: ""mailto:admin@192.168.3.145""
ca_url: ""https://acme-v01.api.letsencrypt.org""
modules:
mod_adhoc: {}
mod_admin_extra: {}
mod_announce:
access: announce
mod_avatar: {}
mod_blocking: {}
mod_bosh: {}
mod_caps: {}
mod_carboncopy: {}
mod_client_state: {}
mod_configure: {}
mod_disco: {}
mod_fail2ban: {}
mod_http_api: {}
mod_http_upload:
docroot: ""@HOST@/uploads""
put_url: ""http://192.168.3.145:4000/uploads""
max_size: 500000000 #500 MByte
thumbnail: false
mod_last: {}
## mod_mam:
## Mnesia is limited to 2GB, better to use an SQL backend
## For small servers SQLite is a good fit and is very easy
## to configure. Uncomment this when you have SQL configured:
## db_type: sql
## assume_mam_usage: true
## default: always
mod_mqtt: {}
mod_muc:
access:
- allow
access_admin:
- allow: admin
access_create: muc_create
access_persistent: muc_create
default_room_options:
allow_subscription: true # enable MucSub
## mam: true
mod_muc_admin: {}
mod_offline:
access_max_user_messages: max_user_offline_messages
mod_ping: {}
mod_privacy: {}
mod_private: {}
mod_proxy65:
access: local
max_connections: 5
mod_pubsub:
access_createnode: pubsub_createnode
plugins:
- ""flat""
- ""pep""
force_node_config:
## Avoid buggy clients to make their bookmarks public
""storage:bookmarks"":
access_model: whitelist
mod_push: {}
mod_push_keepalive: {}
mod_register:
## Only accept registration requests from the ""trusted""
## network (see access_rules section above).
## Think twice before enabling registration from any
## address. See the Jabber SPAM Manifesto for details:
## https://github.com/ge0rg/jabber-spam-fighting-manifesto
ip_access: trusted_network
mod_roster:
versioning: true
mod_s2s_dialback: {}
mod_shared_roster: {}
mod_stream_mgmt:
resend_on_timeout: if_offline
mod_vcard: {}
mod_vcard_xupdate: {}
mod_version:
show_os: false
### Local Variables:
### mode: yaml
### End:
### vim: set filetype=yaml tabstop=8
```
I am able to register when i restart the server only for the time but next time i get error stanza saying ""Users are not allowed to register so quickly"" .
Also when enter
mod_register:
- registration_timeout: infinity
server gives error while starting:
15:37:09.913 [error] Unknown option 'registration_timeout' of module 'mod_register', did you mean 'registration_watchers'? Available options are: access, access_from, access_remove, captcha_protected, ip_access, password_strength, redirect_url, registration_watchers, welcome_message
Is there any work around so that i can register accounts quickly .",
698,https://api.github.com/repos/processone/ejabberd/issues/3013,https://api.github.com/repos/processone/ejabberd,https://api.github.com/repos/processone/ejabberd/issues/3013/labels{/name},https://api.github.com/repos/processone/ejabberd/issues/3013/comments,https://api.github.com/repos/processone/ejabberd/issues/3013/events,https://github.com/processone/ejabberd/issues/3013,489757930,MDU6SXNzdWU0ODk3NTc5MzA=,3013,"when using ejabberd 19.05 with MySQL I always see empty sql tables, except ejabberd.sm","{'login': 'mbelchin', 'id': 3673907, 'node_id': 'MDQ6VXNlcjM2NzM5MDc=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/3673907?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mbelchin', 'html_url': 'https://github.com/mbelchin', 'followers_url': 'https://api.github.com/users/mbelchin/followers', 'following_url': 'https://api.github.com/users/mbelchin/following{/other_user}', 'gists_url': 'https://api.github.com/users/mbelchin/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mbelchin/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mbelchin/subscriptions', 'organizations_url': 'https://api.github.com/users/mbelchin/orgs', 'repos_url': 'https://api.github.com/users/mbelchin/repos', 'events_url': 'https://api.github.com/users/mbelchin/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mbelchin/received_events', 'type': 'User', 'site_admin': False}","[{'id': 179053760, 'node_id': 'MDU6TGFiZWwxNzkwNTM3NjA=', 'url': 'https://api.github.com/repos/processone/ejabberd/labels/Note:Needs%20more%20info', 'name': 'Note:Needs more info', 'color': 'c7def8', 'default': False, 'description': None}]",closed,False,"{'login': 'zinid', 'id': 1095902, 'node_id': 'MDQ6VXNlcjEwOTU5MDI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1095902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/zinid', 'html_url': 'https://github.com/zinid', 'followers_url': 'https://api.github.com/users/zinid/followers', 'following_url': 'https://api.github.com/users/zinid/following{/other_user}', 'gists_url': 'https://api.github.com/users/zinid/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/zinid/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/zinid/subscriptions', 'organizations_url': 'https://api.github.com/users/zinid/orgs', 'repos_url': 'https://api.github.com/users/zinid/repos', 'events_url': 'https://api.github.com/users/zinid/events{/privacy}', 'received_events_url': 'https://api.github.com/users/zinid/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'zinid', 'id': 1095902, 'node_id': 'MDQ6VXNlcjEwOTU5MDI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1095902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/zinid', 'html_url': 'https://github.com/zinid', 'followers_url': 'https://api.github.com/users/zinid/followers', 'following_url': 'https://api.github.com/users/zinid/following{/other_user}', 'gists_url': 'https://api.github.com/users/zinid/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/zinid/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/zinid/subscriptions', 'organizations_url': 'https://api.github.com/users/zinid/orgs', 'repos_url': 'https://api.github.com/users/zinid/repos', 'events_url': 'https://api.github.com/users/zinid/events{/privacy}', 'received_events_url': 'https://api.github.com/users/zinid/received_events', 'type': 'User', 'site_admin': False}]",,14,2019-09-05T13:31:30Z,2020-08-26T11:10:37Z,2020-08-26T11:10:37Z,NONE,,,"I'm trying to enforce ejabberd to not use Mnesia db but use Mysql.
I have followed all the docs about how to configure this. And looks like it's working.
This is my `ejabberd.yml` configuration file. As you can see I even tried with old/new db schema:
```
###
###' ejabberd configuration file
###
### The parameters used in this configuration file are explained at
###
### https://docs.ejabberd.im/admin/configuration
###
language: ""en""
default_db: sql
#new_sql_schema: true
sm_db_type: sql
### ====================
### ODBC DATABASE CONFIG
sql_type: mysql
sql_server: ""localhost""
sql_port: 3306
sql_database: ""ejabberd""
sql_username: ""ejabberd""
sql_password: ""password""
hosts:
- ""localhost""
certfiles:
- ""/opt/ejabberd/conf/server.pem""
ca_file: ""/opt/ejabberd/conf/cacert.pem""
loglevel: 5
log_rotate_size: 10485760
log_rotate_date: """"
log_rotate_count: 1
log_rate_limit: 100
auth_method: external
extauth_program: ""auth.py --config /etc/auth.ini""
auth_use_cache: false
listen:
-
port: 5222
ip: ""0.0.0.0""
access: c2s
module: ejabberd_c2s
max_stanza_size: 262144
shaper: c2s_shaper
starttls_required: true
-
port: 5225
ip: ""0.0.0.0""
module: ejabberd_service
access: all
check_from: false
shaper: fast
hosts:
""jaxlecho.localhost"":
password: ""pass""
-
port: 5280
ip: ""0.0.0.0""
module: ejabberd_http
request_handlers:
""/http-bind"": mod_bosh
s2s_use_starttls: optional
acl:
local:
user_regexp: """"
loopback:
ip:
- ""127.0.0.0/8""
- ""::1/128""
- ""::FFFF:127.0.0.1/128""
access_rules:
local:
- allow: local
c2s:
- deny: blocked
- allow
trusted_network:
- allow
api_permissions:
""console commands"":
from:
- ejabberd_ctl
who: all
what: ""*""
""admin access"":
who:
- access:
- allow:
- acl: loopback
- acl: admin
- oauth:
- scope: ""ejabberd:admin""
- access:
- allow:
- acl: loopback
- acl: admin
what:
- ""*""
- ""!stop""
- ""!start""
""public commands"":
who:
- ip: ""127.0.0.1/8""
what:
- ""status""
- ""connected_users_number""
shaper:
normal: 1000
fast: 50000
shaper_rules:
max_user_sessions: 10
c2s_shaper:
- none: admin
- fast
s2s_shaper: fast
max_fsm_queue: 10000
acme:
contact: ""mailto:admin@debian9.localdomain""
ca_url: ""https://acme-v01.api.letsencrypt.org""
modules:
mod_cobrowser: {}
mod_blocking: {}
mod_bosh: {}
mod_carboncopy: {}
mod_ping:
send_pings: true
ping_interval: 15
ping_ack_timeout: 32
timeout_action: none
mod_privacy: {}
```
When I start ejabberd, this is what I can see in the logs:
```
2019-09-05 14:44:18.724 [notice] <0.123.0>@lager_file_backend:152 Changed loghwm of /opt/ejabberd/logs/error.log to 100
2019-09-05 14:44:18.724 [notice] <0.123.0>@lager_file_backend:152 Changed loghwm of /opt/ejabberd/logs/ejabberd.log to 100
2019-09-05 14:44:18.849 [info] <0.106.0>@ejabberd_config:start:70 Loading configuration from /opt/ejabberd/conf/ejabberd.yml
2019-09-05 14:44:19.611 [notice] <0.123.0>@lager_file_backend:141 Changed loglevel of /opt/ejabberd/logs/ejabberd.log to debug
2019-09-05 14:44:19.736 [debug] <0.221.0>@ejabberd_mnesia:init:72 Waiting for Mnesia tables synchronization...
2019-09-05 14:44:19.777 [debug] <0.221.0>@ejabberd_mnesia:read_schema_file:227 No custom Mnesia schema file found
2019-09-05 14:44:19.808 [debug] <0.221.0>@ejabberd_mnesia:schema:204 No custom Mnesia schema for table 'ejabberd_commands' found
2019-09-05 14:44:19.816 [debug] <0.221.0>@ejabberd_mnesia:schema:204 No custom Mnesia schema for table 's2s' found
2019-09-05 14:44:19.816 [debug] <0.221.0>@ejabberd_mnesia:schema:204 No custom Mnesia schema for table 'temporarily_blocked' found
2019-09-05 14:44:19.817 [debug] <0.221.0>@ejabberd_mnesia:schema:204 No custom Mnesia schema for table 'acl' found
2019-09-05 14:44:19.817 [debug] <0.221.0>@ejabberd_mnesia:schema:204 No custom Mnesia schema for table 'access' found
2019-09-05 14:44:19.820 [debug] <0.221.0>@ejabberd_mnesia:schema:204 No custom Mnesia schema for table 'shaper' found
2019-09-05 14:44:19.825 [debug] <0.221.0>@ejabberd_mnesia:schema:204 No custom Mnesia schema for table 'sql_pool' found
2019-09-05 14:44:19.855 [debug] <0.456.0>@ejabberd_sql:log:991 p1_mysql_conn: greeting version ""5.5.5-10.1.38-MariaDB-0+deb9u1"" (protocol 10) salt ""w!;E*??_Clw4:fq)q%\\$"" caps 2688546815 serverchar 45 auth_plug: ""mysql_native_password""
2019-09-05 14:44:19.855 [debug] <0.452.0>@ejabberd_sql:log:991 p1_mysql_conn: greeting version ""5.5.5-10.1.38-MariaDB-0+deb9u1"" (protocol 10) salt ""H<1#Ywl:xrPx0~OO~OMu"" caps 2688546815 serverchar 45 auth_plug: ""mysql_native_password""
2019-09-05 14:44:19.855 [debug] <0.459.0>@ejabberd_sql:log:991 p1_mysql_conn: greeting version ""5.5.5-10.1.38-MariaDB-0+deb9u1"" (protocol 10) salt ""LF[tY?n0>*WV,u+s'b@ejabberd_sql:log:991 p1_mysql_conn: greeting version ""5.5.5-10.1.38-MariaDB-0+deb9u1"" (protocol 10) salt ""wF4sf',G_)K~\\0z9HAJ4"" caps 2688546815 serverchar 45 auth_plug: ""mysql_native_password""
2019-09-05 14:44:19.855 [debug] <0.460.0>@ejabberd_sql:log:991 p1_mysql_conn: greeting version ""5.5.5-10.1.38-MariaDB-0+deb9u1"" (protocol 10) salt ""mERJ[k*-CI'%$$(<6;b^"" caps 2688546815 serverchar 45 auth_plug: ""mysql_native_password""
2019-09-05 14:44:19.855 [debug] <0.453.0>@ejabberd_sql:log:991 p1_mysql_conn: greeting version ""5.5.5-10.1.38-MariaDB-0+deb9u1"" (protocol 10) salt ""Nh?@dVbjlb'6|0t|1|@h"" caps 2688546815 serverchar 45 auth_plug: ""mysql_native_password""
2019-09-05 14:44:19.855 [debug] <0.463.0>@ejabberd_sql:log:991 p1_mysql_conn: greeting version ""5.5.5-10.1.38-MariaDB-0+deb9u1"" (protocol 10) salt ""Jk^sJVQrkABga3w\"">Rbs"" caps 2688546815 serverchar 45 auth_plug: ""mysql_native_password""
2019-09-05 14:44:19.855 [debug] <0.465.0>@ejabberd_sql:log:991 p1_mysql_conn: greeting version ""5.5.5-10.1.38-MariaDB-0+deb9u1"" (protocol 10) salt ""OjJpw'V]P[W\""@]4+zF/X"" caps 2688546815 serverchar 45 auth_plug: ""mysql_native_password""
2019-09-05 14:44:19.855 [debug] <0.454.0>@ejabberd_sql:log:991 p1_mysql_conn: greeting version ""5.5.5-10.1.38-MariaDB-0+deb9u1"" (protocol 10) salt ""/t}78Sx%J&}gmkQ5R|@ejabberd_sql:log:991 p1_mysql_conn: greeting version ""5.5.5-10.1.38-MariaDB-0+deb9u1"" (protocol 10) salt ""vSz0z@ejabberd_sql:log:991 p1_mysql_conn: greeting version ""5.5.5-10.1.38-MariaDB-0+deb9u1"" (protocol 10) salt ""!zhxF0^gnod);/u&Ym8p"" caps 2688546815 serverchar 45 auth_plug: ""mysql_native_password""
2019-09-05 14:44:19.855 [debug] <0.469.0>@ejabberd_sql:log:991 p1_mysql_conn: greeting version ""5.5.5-10.1.38-MariaDB-0+deb9u1"" (protocol 10) salt ""k>3#S\\TnMv+mhBNA:?k!"" caps 2688546815 serverchar 45 auth_plug: ""mysql_native_password""
2019-09-05 14:44:19.855 [debug] <0.457.0>@ejabberd_sql:log:991 p1_mysql_conn: greeting version ""5.5.5-10.1.38-MariaDB-0+deb9u1"" (protocol 10) salt ""fp\""RV;deO<{wg|\\66L^p"" caps 2688546815 serverchar 45 auth_plug: ""mysql_native_password""
2019-09-05 14:44:19.855 [debug] <0.470.0>@ejabberd_sql:log:991 p1_mysql_conn: greeting version ""5.5.5-10.1.38-MariaDB-0+deb9u1"" (protocol 10) salt ""!zhyJE[wfwE1e*@Cm~PT"" caps 2688546815 serverchar 45 auth_plug: ""mysql_native_password""
2019-09-05 14:44:19.855 [debug] <0.461.0>@ejabberd_sql:log:991 p1_mysql_conn: greeting version ""5.5.5-10.1.38-MariaDB-0+deb9u1"" (protocol 10) salt ""^4*q|@dWh&~m)#o+'!k|"" caps 2688546815 serverchar 45 auth_plug: ""mysql_native_password""
2019-09-05 14:44:19.855 [debug] <0.458.0>@ejabberd_sql:log:991 p1_mysql_conn: greeting version ""5.5.5-10.1.38-MariaDB-0+deb9u1"" (protocol 10) salt ""Emy9KN's4E?K<)X_Tg,B"" caps 2688546815 serverchar 45 auth_plug: ""mysql_native_password""
2019-09-05 14:44:19.855 [debug] <0.464.0>@ejabberd_sql:log:991 p1_mysql_conn: greeting version ""5.5.5-10.1.38-MariaDB-0+deb9u1"" (protocol 10) salt ""tQu|0w)a1mR5Ppe+CPJa"" caps 2688546815 serverchar 45 auth_plug: ""mysql_native_password""
2019-09-05 14:44:19.855 [debug] <0.468.0>@ejabberd_sql:log:991 p1_mysql_conn: greeting version ""5.5.5-10.1.38-MariaDB-0+deb9u1"" (protocol 10) salt ""4YD(9(\\uX9T{1|@fc@Uk"" caps 2688546815 serverchar 45 auth_plug: ""mysql_native_password""
2019-09-05 14:44:19.859 [debug] <0.462.0>@ejabberd_sql:log:991 p1_mysql_conn: greeting version ""5.5.5-10.1.38-MariaDB-0+deb9u1"" (protocol 10) salt ""_m)|[1#Zzxm9rV5GFi_\"""" caps 2688546815 serverchar 45 auth_plug: ""mysql_native_password""
2019-09-05 14:44:19.860 [debug] <0.467.0>@ejabberd_sql:log:991 p1_mysql_conn: greeting version ""5.5.5-10.1.38-MariaDB-0+deb9u1"" (protocol 10) salt ""Es6NiE[ztX=goy2,$lw4"" caps 2688546815 serverchar 45 auth_plug: ""mysql_native_password""
2019-09-05 14:44:19.860 [debug] <0.456.0>@ejabberd_sql:log:991 p1_mysql_auth send packet 1: <<7,162,8,0,64,66,15,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,101,106,97,98,98,101,114,100,0,20,171,53,210,169,212,231,142,1,57,220,193,8,197,151,251,188,70,0,223,38,109,121,115,113,108,95,110,97,116,105,118,101,95,112,97,115,115,119,111,114,100,0>>
2019-09-05 14:44:19.860 [debug] <0.462.0>@ejabberd_sql:log:991 p1_mysql_auth send packet 1: <<7,162,8,0,64,66,15,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,101,106,97,98,98,101,114,100,0,20,107,186,157,190,74,38,250,80,46,141,3,100,228,9,36,109,4,249,123,193,109,121,115,113,108,95,110,97,116,105,118,101,95,112,97,115,115,119,111,114,100,0>>
2019-09-05 14:44:19.860 [debug] <0.451.0>@ejabberd_sql:log:991 p1_mysql_auth send packet 1: <<7,162,8,0,64,66,15,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,101,106,97,98,98,101,114,100,0,20,1,148,40,101,46,165,16,16,77,128,225,70,199,114,205,219,144,90,243,180,109,121,115,113,108,95,110,97,116,105,118,101,95,112,97,115,115,119,111,114,100,0>>
2019-09-05 14:44:19.860 [debug] <0.453.0>@ejabberd_sql:log:991 p1_mysql_auth send packet 1: <<7,162,8,0,64,66,15,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,101,106,97,98,98,101,114,100,0,20,224,232,129,199,219,253,14,226,216,86,26,183,240,31,216,176,122,4,21,107,109,121,115,113,108,95,110,97,116,105,118,101,95,112,97,115,115,119,111,114,100,0>>
2019-09-05 14:44:19.860 [debug] <0.452.0>@ejabberd_sql:log:991 p1_mysql_auth send packet 1: <<7,162,8,0,64,66,15,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,101,106,97,98,98,101,114,100,0,20,100,174,122,193,97,72,78,143,38,179,150,148,60,112,251,18,49,192,217,103,109,121,115,113,108,95,110,97,116,105,118,101,95,112,97,115,115,119,111,114,100,0>>
2019-09-05 14:44:19.860 [debug] <0.454.0>@ejabberd_sql:log:991 p1_mysql_auth send packet 1: <<7,162,8,0,64,66,15,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,101,106,97,98,98,101,114,100,0,20,173,67,127,140,203,49,157,123,85,6,97,123,213,22,243,49,232,96,206,96,109,121,115,113,108,95,110,97,116,105,118,101,95,112,97,115,115,119,111,114,100,0>>
2019-09-05 14:44:19.860 [debug] <0.455.0>@ejabberd_sql:log:991 p1_mysql_auth send packet 1: <<7,162,8,0,64,66,15,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,101,106,97,98,98,101,114,100,0,20,41,90,195,84,140,57,220,176,51,232,237,90,50,203,88,249,45,177,10,77,109,121,115,113,108,95,110,97,116,105,118,101,95,112,97,115,115,119,111,114,100,0>>
2019-09-05 14:44:19.860 [debug] <0.459.0>@ejabberd_sql:log:991 p1_mysql_auth send packet 1: <<7,162,8,0,64,66,15,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,101,106,97,98,98,101,114,100,0,20,214,6,180,81,45,178,254,203,123,240,88,147,227,121,141,61,234,96,178,216,109,121,115,113,108,95,110,97,116,105,118,101,95,112,97,115,115,119,111,114,100,0>>
2019-09-05 14:44:19.860 [debug] <0.457.0>@ejabberd_sql:log:991 p1_mysql_auth send packet 1: <<7,162,8,0,64,66,15,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,101,106,97,98,98,101,114,100,0,20,143,32,122,15,96,36,237,0,59,138,132,7,98,109,17,198,12,122,144,30,109,121,115,113,108,95,110,97,116,105,118,101,95,112,97,115,115,119,111,114,100,0>>
2019-09-05 14:44:19.860 [debug] <0.460.0>@ejabberd_sql:log:991 p1_mysql_auth send packet 1: <<7,162,8,0,64,66,15,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,101,106,97,98,98,101,114,100,0,20,217,25,190,99,180,133,75,225,234,169,54,235,212,73,186,21,138,9,191,224,109,121,115,113,108,95,110,97,116,105,118,101,95,112,97,115,115,119,111,114,100,0>>
2019-09-05 14:44:19.861 [debug] <0.458.0>@ejabberd_sql:log:991 p1_mysql_auth send packet 1: <<7,162,8,0,64,66,15,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,101,106,97,98,98,101,114,100,0,20,206,132,227,228,90,61,233,142,159,41,108,202,18,128,219,120,70,99,151,180,109,121,115,113,108,95,110,97,116,105,118,101,95,112,97,115,115,119,111,114,100,0>>
2019-09-05 14:44:19.861 [debug] <0.468.0>@ejabberd_sql:log:991 p1_mysql_auth send packet 1: <<7,162,8,0,64,66,15,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,101,106,97,98,98,101,114,100,0,20,134,52,30,224,115,143,248,249,24,228,93,124,56,236,165,123,239,71,157,230,109,121,115,113,108,95,110,97,116,105,118,101,95,112,97,115,115,119,111,114,100,0>>
2019-09-05 14:44:19.861 [debug] <0.463.0>@ejabberd_sql:log:991 p1_mysql_auth send packet 1: <<7,162,8,0,64,66,15,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,101,106,97,98,98,101,114,100,0,20,211,202,124,120,130,207,114,21,49,192,227,182,76,157,177,233,112,144,200,87,109,121,115,113,108,95,110,97,116,105,118,101,95,112,97,115,115,119,111,114,100,0>>
2019-09-05 14:44:19.861 [debug] <0.465.0>@ejabberd_sql:log:991 p1_mysql_auth send packet 1: <<7,162,8,0,64,66,15,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,101,106,97,98,98,101,114,100,0,20,223,226,28,107,37,108,110,159,31,213,103,218,35,205,162,53,184,120,244,88,109,121,115,113,108,95,110,97,116,105,118,101,95,112,97,115,115,119,111,114,100,0>>
2019-09-05 14:44:19.861 [debug] <0.466.0>@ejabberd_sql:log:991 p1_mysql_auth send packet 1: <<7,162,8,0,64,66,15,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,101,106,97,98,98,101,114,100,0,20,75,148,231,246,70,171,24,158,211,30,245,151,169,81,218,56,82,236,17,145,109,121,115,113,108,95,110,97,116,105,118,101,95,112,97,115,115,119,111,114,100,0>>
2019-09-05 14:44:19.861 [debug] <0.469.0>@ejabberd_sql:log:991 p1_mysql_auth send packet 1: <<7,162,8,0,64,66,15,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,101,106,97,98,98,101,114,100,0,20,100,225,238,172,132,188,46,242,126,10,137,210,84,0,13,206,201,238,132,144,109,121,115,113,108,95,110,97,116,105,118,101,95,112,97,115,115,119,111,114,100,0>>
2019-09-05 14:44:19.861 [debug] <0.470.0>@ejabberd_sql:log:991 p1_mysql_auth send packet 1: <<7,162,8,0,64,66,15,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,101,106,97,98,98,101,114,100,0,20,117,194,92,10,219,73,102,34,110,67,106,21,240,150,29,226,110,43,1,230,109,121,115,113,108,95,110,97,116,105,118,101,95,112,97,115,115,119,111,114,100,0>>
2019-09-05 14:44:19.861 [debug] <0.461.0>@ejabberd_sql:log:991 p1_mysql_auth send packet 1: <<7,162,8,0,64,66,15,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,101,106,97,98,98,101,114,100,0,20,224,125,29,165,224,63,237,60,15,213,146,252,122,57,175,193,191,6,40,157,109,121,115,113,108,95,110,97,116,105,118,101,95,112,97,115,115,119,111,114,100,0>>
2019-09-05 14:44:19.861 [debug] <0.464.0>@ejabberd_sql:log:991 p1_mysql_auth send packet 1: <<7,162,8,0,64,66,15,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,101,106,97,98,98,101,114,100,0,20,208,154,125,246,250,53,190,159,139,219,195,217,71,52,167,65,106,134,44,214,109,121,115,113,108,95,110,97,116,105,118,101,95,112,97,115,115,119,111,114,100,0>>
2019-09-05 14:44:19.862 [debug] <0.467.0>@ejabberd_sql:log:991 p1_mysql_auth send packet 1: <<7,162,8,0,64,66,15,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,101,106,97,98,98,101,114,100,0,20,236,52,244,227,35,5,222,166,120,38,247,79,215,192,88,85,221,128,123,69,109,121,115,113,108,95,110,97,116,105,118,101,95,112,97,115,115,119,111,114,100,0>>
2019-09-05 14:44:19.890 [debug] <0.221.0>@ejabberd_mnesia:schema:204 No custom Mnesia schema for table 'route' found
2019-09-05 14:44:19.890 [debug] <0.221.0>@ejabberd_mnesia:schema:204 No custom Mnesia schema for table 'route_multicast' found
2019-09-05 14:44:19.891 [debug] <0.508.0>@ejabberd_router:register_route:179 Route registered: localhost
2019-09-05 14:44:19.891 [debug] <0.508.0>@ejabberd_router:register_route:179 Route registered: vagrant.cobrowser.io
2019-09-05 14:44:19.896 [debug] <0.510.0>@ejabberd_sm_sql:init:49 Cleaning SQL SM table...
2019-09-05 14:44:19.899 [debug] <0.427.0>@ejabberd_sql:sql_query_internal:639 SQL: ""delete from sm where node='ejabberd@localhost'""
2019-09-05 14:44:19.902 [debug] <0.439.0>@ejabberd_sql:sql_query_internal:639 SQL: ""delete from sm where node='ejabberd@localhost'""
2019-09-05 14:44:19.903 [debug] <0.514.0>@ejabberd_captcha:get_prog_name:421 The option captcha_cmd is not configured, but some module wants to use the CAPTCHA feature.
2019-09-05 14:44:19.912 [info] <0.362.0>@gen_mod:start_modules:131 Loading modules for localhost and vagrant.cobrowser.io
2019-09-05 14:44:19.917 [debug] <0.362.0>@gen_mod:start_module:207 Loading mod_ping at localhost
2019-09-05 14:44:19.917 [debug] <0.362.0>@gen_mod:start_module:207 Loading mod_privacy at localhost
2019-09-05 14:44:19.929 [debug] <0.362.0>@gen_mod:start_module:207 Loading mod_blocking at localhost
2019-09-05 14:44:19.929 [debug] <0.362.0>@gen_mod:start_module:207 Loading mod_bosh at localhost
2019-09-05 14:44:19.929 [debug] <0.221.0>@ejabberd_mnesia:schema:204 No custom Mnesia schema for table 'bosh' found
2019-09-05 14:44:19.930 [debug] <0.362.0>@gen_mod:start_module:207 Loading mod_cobrowser at localhost
2019-09-05 14:44:19.930 [info] <0.362.0>@mod_cobrowser:start:25 Loading mod_cobrowser: hooks attached successfully
2019-09-05 14:44:19.930 [debug] <0.362.0>@gen_mod:start_module:207 Loading mod_carboncopy at localhost
2019-09-05 14:44:19.935 [debug] <0.362.0>@gen_mod:start_module:207 Loading mod_ping at vagrant.cobrowser.io
2019-09-05 14:44:19.935 [debug] <0.362.0>@gen_mod:start_module:207 Loading mod_privacy at vagrant.cobrowser.io
2019-09-05 14:44:19.936 [debug] <0.362.0>@gen_mod:start_module:207 Loading mod_blocking at vagrant.cobrowser.io
2019-09-05 14:44:19.936 [debug] <0.362.0>@gen_mod:start_module:207 Loading mod_bosh at vagrant.cobrowser.io
2019-09-05 14:44:19.936 [debug] <0.362.0>@gen_mod:start_module:207 Loading mod_cobrowser at vagrant.cobrowser.io
2019-09-05 14:44:19.936 [info] <0.362.0>@mod_cobrowser:start:25 Loading mod_cobrowser: hooks attached successfully
2019-09-05 14:44:19.936 [debug] <0.362.0>@gen_mod:start_module:207 Loading mod_carboncopy at vagrant.cobrowser.io
2019-09-05 14:44:20.015 [info] <0.106.0>@ejabberd_cluster_mnesia:wait_for_sync:123 Waiting for Mnesia synchronization to complete
2019-09-05 14:44:20.095 [warning] <0.386.0>@ejabberd_pkix:log_warnings:397 Invalid certificate in /opt/ejabberd/conf/server.pem: at line 53: self-signed certificate
2019-09-05 14:44:20.097 [info] <0.106.0>@ejabberd_app:start:60 ejabberd 19.05 is started in the node ejabberd@localhost in 1.57s
2019-09-05 14:44:20.101 [info] <0.385.0>@ejabberd_listener:init:140 Start accepting TCP connections at 0.0.0.0:5280 for ejabberd_http
2019-09-05 14:44:20.102 [info] <0.384.0>@ejabberd_listener:init:140 Start accepting TCP connections at 0.0.0.0:5225 for ejabberd_service
2019-09-05 14:44:20.102 [info] <0.383.0>@ejabberd_listener:init:140 Start accepting TCP connections at 0.0.0.0:5222 for ejabberd_c2s
2019-09-05 14:44:23.285 [info] <0.384.0>@ejabberd_listener:accept:245 (<0.553.0>) Accepted connection 127.0.0.1:37386 -> 127.0.0.1:5225
2019-09-05 14:44:23.297 [info] <0.553.0> (tcp|<0.553.0>) Received XML on stream = <<"""">>
2019-09-05 14:44:23.313 [info] <0.553.0> (tcp|<0.553.0>) Send XML on stream = <<"""">>
2019-09-05 14:44:23.314 [info] <0.553.0> (tcp|<0.553.0>) Received XML on stream = <<""d74479b7110a80b3dcfd8960efbf83b1db5e5cc6"">>
2019-09-05 14:44:23.326 [info] <0.553.0>@ejabberd_service:handle_auth_success:161 (tcp|<0.553.0>) Accepted external component handshake authentication for jaxlecho.localhost from 127.0.0.1
2019-09-05 14:44:23.326 [debug] <0.553.0>@ejabberd_router:register_route:179 Route registered: jaxlecho.localhost
2019-09-05 14:44:23.326 [info] <0.553.0> (tcp|<0.553.0>) Send XML on stream = <<"""">>
```
As you can see in the logs, ejabberd is able to communicate with MySQL properly. However there're several logs about mnesia schemas not found, like:
@ejabberd_mnesia:schema:204 No custom Mnesia schema for table 'bosh' found
I've checked all the tables inside MySQL and all of them except ejabberd.sm table are always empty.
Most important for our case is bosh, we're using it and we can see Session ID Mismatch in the logs when we start several ejabberd instances.
My questions are:
- even configuring ejabberd 19.05 to use MySQL, is it still using mnesia under the hoods ? We'd like to use only MySQL DB and share it across multiple ejabberd instances.
- any clue about why we still see @ejabberd_mnesia:schema:204 No custom Mnesia schema for table 'bosh' found in the logs ? Perhaps related with my previous question.
- why all tables are empty except ejabberd.sm, but specially ejabberd.bosh table ? we're using bosh so I guess we should see there sid, node, pid values, right? or am I wrong ?
Thanks in advance!",
699,https://api.github.com/repos/twisted/twisted/issues/1378,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1378/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1378/comments,https://api.github.com/repos/twisted/twisted/issues/1378/events,https://github.com/twisted/twisted/pull/1378,688582923,MDExOlB1bGxSZXF1ZXN0NDc1ODEzMDUw,1378,Fix typo in docs/core/howto/defer-intro.rst,"{'login': 'paul-wilkinson', 'id': 7225429, 'node_id': 'MDQ6VXNlcjcyMjU0Mjk=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/7225429?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/paul-wilkinson', 'html_url': 'https://github.com/paul-wilkinson', 'followers_url': 'https://api.github.com/users/paul-wilkinson/followers', 'following_url': 'https://api.github.com/users/paul-wilkinson/following{/other_user}', 'gists_url': 'https://api.github.com/users/paul-wilkinson/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/paul-wilkinson/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/paul-wilkinson/subscriptions', 'organizations_url': 'https://api.github.com/users/paul-wilkinson/orgs', 'repos_url': 'https://api.github.com/users/paul-wilkinson/repos', 'events_url': 'https://api.github.com/users/paul-wilkinson/events{/privacy}', 'received_events_url': 'https://api.github.com/users/paul-wilkinson/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-29T18:29:33Z,2020-08-29T22:27:36Z,2020-08-29T22:27:36Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1378', 'html_url': 'https://github.com/twisted/twisted/pull/1378', 'diff_url': 'https://github.com/twisted/twisted/pull/1378.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1378.patch'}","""expect"" -> ""except""
## Remove this section
Please have a look at [our developer documentation](https://twistedmatrix.com/trac/wiki/TwistedDevelopment#SubmittingaPatch) before submitting your Pull Request.
Please note that the trac ticket, news fragment, and review submission portions of this process apply to *all* pull requests, no matter how small; if you don't do them, it's likely that nobody will even notice your PR needs a review.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9948
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
700,https://api.github.com/repos/twisted/twisted/issues/1377,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1377/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1377/comments,https://api.github.com/repos/twisted/twisted/issues/1377/events,https://github.com/twisted/twisted/pull/1377,684060134,MDExOlB1bGxSZXF1ZXN0NDcyMDM0NDIw,1377,[9509] Move PyHamcrest dependency to [dev] extra,"{'login': 'twm', 'id': 43662, 'node_id': 'MDQ6VXNlcjQzNjYy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/43662?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/twm', 'html_url': 'https://github.com/twm', 'followers_url': 'https://api.github.com/users/twm/followers', 'following_url': 'https://api.github.com/users/twm/following{/other_user}', 'gists_url': 'https://api.github.com/users/twm/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/twm/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/twm/subscriptions', 'organizations_url': 'https://api.github.com/users/twm/orgs', 'repos_url': 'https://api.github.com/users/twm/repos', 'events_url': 'https://api.github.com/users/twm/events{/privacy}', 'received_events_url': 'https://api.github.com/users/twm/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,0,2020-08-22T20:06:42Z,2020-08-24T04:57:45Z,,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1377', 'html_url': 'https://github.com/twisted/twisted/pull/1377', 'diff_url': 'https://github.com/twisted/twisted/pull/1377.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1377.patch'}","I'm not 100% sure of this approach, since the `dev` extra contains quite a few packages that are now installed into the `nodeps` Tox environments. Consider this a proposal for discussion. Other possible solutions:
1. Drop the linting and build tools from the ``dev`` extra. They are redundant with specifications in `tox.ini` anyway.
2. Add a new extra, e.g. ``test``, and put PyHamcrest there instead of `dev`.
3. Rewrite the tests that use PyHamcrest without it; drop the dependency entirely.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9509
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
701,https://api.github.com/repos/twisted/twisted/issues/1376,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1376/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1376/comments,https://api.github.com/repos/twisted/twisted/issues/1376/events,https://github.com/twisted/twisted/pull/1376,680691445,MDExOlB1bGxSZXF1ZXN0NDY5MjAyMTYx,1376,Added HTTP 308 support,"{'login': 'ryanc-me', 'id': 762418, 'node_id': 'MDQ6VXNlcjc2MjQxOA==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/762418?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ryanc-me', 'html_url': 'https://github.com/ryanc-me', 'followers_url': 'https://api.github.com/users/ryanc-me/followers', 'following_url': 'https://api.github.com/users/ryanc-me/following{/other_user}', 'gists_url': 'https://api.github.com/users/ryanc-me/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ryanc-me/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ryanc-me/subscriptions', 'organizations_url': 'https://api.github.com/users/ryanc-me/orgs', 'repos_url': 'https://api.github.com/users/ryanc-me/repos', 'events_url': 'https://api.github.com/users/ryanc-me/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ryanc-me/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-08-18T05:01:25Z,2020-08-23T07:12:12Z,2020-08-23T07:12:12Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1376', 'html_url': 'https://github.com/twisted/twisted/pull/1376', 'diff_url': 'https://github.com/twisted/twisted/pull/1376.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1376.patch'}","Added support for `308 Permanent Redirects` on the `RedirectAgent`.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9940
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
702,https://api.github.com/repos/twisted/twisted/issues/1375,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1375/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1375/comments,https://api.github.com/repos/twisted/twisted/issues/1375/events,https://github.com/twisted/twisted/pull/1375,680603056,MDExOlB1bGxSZXF1ZXN0NDY5MTMyMTIz,1375,Expose PySerial dsrdtr parameter in constructor,"{'login': 'matthew-turnaroundfactor', 'id': 64492753, 'node_id': 'MDQ6VXNlcjY0NDkyNzUz', 'avatar_url': 'https://avatars3.githubusercontent.com/u/64492753?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/matthew-turnaroundfactor', 'html_url': 'https://github.com/matthew-turnaroundfactor', 'followers_url': 'https://api.github.com/users/matthew-turnaroundfactor/followers', 'following_url': 'https://api.github.com/users/matthew-turnaroundfactor/following{/other_user}', 'gists_url': 'https://api.github.com/users/matthew-turnaroundfactor/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/matthew-turnaroundfactor/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/matthew-turnaroundfactor/subscriptions', 'organizations_url': 'https://api.github.com/users/matthew-turnaroundfactor/orgs', 'repos_url': 'https://api.github.com/users/matthew-turnaroundfactor/repos', 'events_url': 'https://api.github.com/users/matthew-turnaroundfactor/events{/privacy}', 'received_events_url': 'https://api.github.com/users/matthew-turnaroundfactor/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,2,2020-08-18T00:26:06Z,2020-08-22T04:39:27Z,,NONE,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1375', 'html_url': 'https://github.com/twisted/twisted/pull/1375', 'diff_url': 'https://github.com/twisted/twisted/pull/1375.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1375.patch'}",The PySerial ``dsrdtr`` parameter is needed to test Twisted's ``SerialPort`` against linux PTY devices. This PR exposes the ``dsrdtr`` parameter along with the ``rtscts`` parameter that is already exposed. A compatible default is provided which should make this change backwards-compatible with existing code.,
703,https://api.github.com/repos/twisted/twisted/issues/1374,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1374/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1374/comments,https://api.github.com/repos/twisted/twisted/issues/1374/events,https://github.com/twisted/twisted/pull/1374,680128817,MDExOlB1bGxSZXF1ZXN0NDY4NzQ0NDk3,1374,deprecate inlineCallbacks,"{'login': 'graingert', 'id': 413772, 'node_id': 'MDQ6VXNlcjQxMzc3Mg==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/413772?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/graingert', 'html_url': 'https://github.com/graingert', 'followers_url': 'https://api.github.com/users/graingert/followers', 'following_url': 'https://api.github.com/users/graingert/following{/other_user}', 'gists_url': 'https://api.github.com/users/graingert/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/graingert/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/graingert/subscriptions', 'organizations_url': 'https://api.github.com/users/graingert/orgs', 'repos_url': 'https://api.github.com/users/graingert/repos', 'events_url': 'https://api.github.com/users/graingert/events{/privacy}', 'received_events_url': 'https://api.github.com/users/graingert/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,0,2020-08-17T10:32:17Z,2020-08-28T09:56:36Z,,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1374', 'html_url': 'https://github.com/twisted/twisted/pull/1374', 'diff_url': 'https://github.com/twisted/twisted/pull/1374.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1374.patch'}","## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9939
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
704,https://api.github.com/repos/twisted/twisted/issues/1373,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1373/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1373/comments,https://api.github.com/repos/twisted/twisted/issues/1373/events,https://github.com/twisted/twisted/pull/1373,679660631,MDExOlB1bGxSZXF1ZXN0NDY4Mzc3MTEz,1373,add from __future__ import generator_stop to defer.py,"{'login': 'graingert', 'id': 413772, 'node_id': 'MDQ6VXNlcjQxMzc3Mg==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/413772?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/graingert', 'html_url': 'https://github.com/graingert', 'followers_url': 'https://api.github.com/users/graingert/followers', 'following_url': 'https://api.github.com/users/graingert/following{/other_user}', 'gists_url': 'https://api.github.com/users/graingert/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/graingert/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/graingert/subscriptions', 'organizations_url': 'https://api.github.com/users/graingert/orgs', 'repos_url': 'https://api.github.com/users/graingert/repos', 'events_url': 'https://api.github.com/users/graingert/events{/privacy}', 'received_events_url': 'https://api.github.com/users/graingert/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,0,2020-08-15T23:52:25Z,2020-08-16T00:09:23Z,,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1373', 'html_url': 'https://github.com/twisted/twisted/pull/1373', 'diff_url': 'https://github.com/twisted/twisted/pull/1373.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1373.patch'}","probably the most important file to get this change
refs: https://tm.tl/#9937
## Remove this section
Please have a look at [our developer documentation](https://twistedmatrix.com/trac/wiki/TwistedDevelopment#SubmittingaPatch) before submitting your Pull Request.
Please note that the trac ticket, news fragment, and review submission portions of this process apply to *all* pull requests, no matter how small; if you don't do them, it's likely that nobody will even notice your PR needs a review.
## Contributor Checklist:
* [x] The associated ticket in Trac is here:https://tm.tl/#9937
* [ ] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [ ] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [ ] I have updated the automated tests.
* [ ] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
705,https://api.github.com/repos/twisted/twisted/issues/1372,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1372/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1372/comments,https://api.github.com/repos/twisted/twisted/issues/1372/events,https://github.com/twisted/twisted/pull/1372,675602456,MDExOlB1bGxSZXF1ZXN0NDY1MDg0MTgy,1372,Remove code that only runs on unsupported Python versions,"{'login': 'mthuurne', 'id': 246676, 'node_id': 'MDQ6VXNlcjI0NjY3Ng==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/246676?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mthuurne', 'html_url': 'https://github.com/mthuurne', 'followers_url': 'https://api.github.com/users/mthuurne/followers', 'following_url': 'https://api.github.com/users/mthuurne/following{/other_user}', 'gists_url': 'https://api.github.com/users/mthuurne/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mthuurne/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mthuurne/subscriptions', 'organizations_url': 'https://api.github.com/users/mthuurne/orgs', 'repos_url': 'https://api.github.com/users/mthuurne/repos', 'events_url': 'https://api.github.com/users/mthuurne/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mthuurne/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-08T23:12:17Z,2020-08-16T00:07:34Z,2020-08-16T00:07:28Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1372', 'html_url': 'https://github.com/twisted/twisted/pull/1372', 'diff_url': 'https://github.com/twisted/twisted/pull/1372.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1372.patch'}","## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9936
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
706,https://api.github.com/repos/twisted/twisted/issues/1371,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1371/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1371/comments,https://api.github.com/repos/twisted/twisted/issues/1371/events,https://github.com/twisted/twisted/pull/1371,672686437,MDExOlB1bGxSZXF1ZXN0NDYyNjc3ODQ1,1371,[9932] rename amp.String to amp.Binary with alias,"{'login': 'graingert', 'id': 413772, 'node_id': 'MDQ6VXNlcjQxMzc3Mg==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/413772?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/graingert', 'html_url': 'https://github.com/graingert', 'followers_url': 'https://api.github.com/users/graingert/followers', 'following_url': 'https://api.github.com/users/graingert/following{/other_user}', 'gists_url': 'https://api.github.com/users/graingert/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/graingert/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/graingert/subscriptions', 'organizations_url': 'https://api.github.com/users/graingert/orgs', 'repos_url': 'https://api.github.com/users/graingert/repos', 'events_url': 'https://api.github.com/users/graingert/events{/privacy}', 'received_events_url': 'https://api.github.com/users/graingert/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,2,2020-08-04T10:30:38Z,2020-08-24T05:40:27Z,,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1371', 'html_url': 'https://github.com/twisted/twisted/pull/1371', 'diff_url': 'https://github.com/twisted/twisted/pull/1371.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1371.patch'}","## Remove this section
Please have a look at [our developer documentation](https://twistedmatrix.com/trac/wiki/TwistedDevelopment#SubmittingaPatch) before submitting your Pull Request.
Please note that the trac ticket, news fragment, and review submission portions of this process apply to *all* pull requests, no matter how small; if you don't do them, it's likely that nobody will even notice your PR needs a review.
## Contributor Checklist:
* [ ] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/
* [ ] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [ ] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [ ] I have updated the automated tests.
* [ ] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
707,https://api.github.com/repos/twisted/twisted/issues/1370,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1370/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1370/comments,https://api.github.com/repos/twisted/twisted/issues/1370/events,https://github.com/twisted/twisted/pull/1370,672649526,MDExOlB1bGxSZXF1ZXN0NDYyNjQ2OTg2,1370,defer reactor import in twisted.web.xmlrpc,"{'login': 'graingert', 'id': 413772, 'node_id': 'MDQ6VXNlcjQxMzc3Mg==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/413772?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/graingert', 'html_url': 'https://github.com/graingert', 'followers_url': 'https://api.github.com/users/graingert/followers', 'following_url': 'https://api.github.com/users/graingert/following{/other_user}', 'gists_url': 'https://api.github.com/users/graingert/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/graingert/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/graingert/subscriptions', 'organizations_url': 'https://api.github.com/users/graingert/orgs', 'repos_url': 'https://api.github.com/users/graingert/repos', 'events_url': 'https://api.github.com/users/graingert/events{/privacy}', 'received_events_url': 'https://api.github.com/users/graingert/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,0,2020-08-04T09:31:04Z,2020-08-27T22:50:50Z,,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1370', 'html_url': 'https://github.com/twisted/twisted/pull/1370', 'diff_url': 'https://github.com/twisted/twisted/pull/1370.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1370.patch'}","## Remove this section
Please have a look at [our developer documentation](https://twistedmatrix.com/trac/wiki/TwistedDevelopment#SubmittingaPatch) before submitting your Pull Request.
Please note that the trac ticket, news fragment, and review submission portions of this process apply to *all* pull requests, no matter how small; if you don't do them, it's likely that nobody will even notice your PR needs a review.
## Contributor Checklist:
* [ ] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/
* [ ] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [ ] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [ ] I have updated the automated tests.
* [ ] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
708,https://api.github.com/repos/twisted/twisted/issues/1369,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1369/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1369/comments,https://api.github.com/repos/twisted/twisted/issues/1369/events,https://github.com/twisted/twisted/pull/1369,672429982,MDExOlB1bGxSZXF1ZXN0NDYyNDY4NDU4,1369,Make the twisted tests work when pyOpenSSL deletes NPN,"{'login': 'alex', 'id': 772, 'node_id': 'MDQ6VXNlcjc3Mg==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/772?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/alex', 'html_url': 'https://github.com/alex', 'followers_url': 'https://api.github.com/users/alex/followers', 'following_url': 'https://api.github.com/users/alex/following{/other_user}', 'gists_url': 'https://api.github.com/users/alex/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/alex/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/alex/subscriptions', 'organizations_url': 'https://api.github.com/users/alex/orgs', 'repos_url': 'https://api.github.com/users/alex/repos', 'events_url': 'https://api.github.com/users/alex/events{/privacy}', 'received_events_url': 'https://api.github.com/users/alex/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-04T01:01:03Z,2020-08-04T03:25:26Z,2020-08-04T03:24:37Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1369', 'html_url': 'https://github.com/twisted/twisted/pull/1369', 'diff_url': 'https://github.com/twisted/twisted/pull/1369.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1369.patch'}","## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
709,https://api.github.com/repos/twisted/twisted/issues/1368,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1368/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1368/comments,https://api.github.com/repos/twisted/twisted/issues/1368/events,https://github.com/twisted/twisted/pull/1368,672381945,MDExOlB1bGxSZXF1ZXN0NDYyNDI5MTk2,1368,Drop explicit inheritance from 'object' class,"{'login': 'mthuurne', 'id': 246676, 'node_id': 'MDQ6VXNlcjI0NjY3Ng==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/246676?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mthuurne', 'html_url': 'https://github.com/mthuurne', 'followers_url': 'https://api.github.com/users/mthuurne/followers', 'following_url': 'https://api.github.com/users/mthuurne/following{/other_user}', 'gists_url': 'https://api.github.com/users/mthuurne/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mthuurne/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mthuurne/subscriptions', 'organizations_url': 'https://api.github.com/users/mthuurne/orgs', 'repos_url': 'https://api.github.com/users/mthuurne/repos', 'events_url': 'https://api.github.com/users/mthuurne/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mthuurne/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-03T22:33:30Z,2020-08-15T23:45:13Z,2020-08-15T23:45:07Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1368', 'html_url': 'https://github.com/twisted/twisted/pull/1368', 'diff_url': 'https://github.com/twisted/twisted/pull/1368.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1368.patch'}","Inheriting from `object` was necessary in Python 2 to force new-style classes. In Python 3, it's just noise.
Substitutions were done automatically with `sed`, except:
- `twisted/words/xish/xpathparser.g` was done by hand and `xpathparser.py` was re-generated from that
- `twisted/test/test_plugin.py` was done by hand
I also had to update the definitions for `check-manifest` in `tox.ini`, since the old ignore pattern no longer works with the latest release of `check-manifest`.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9927
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
710,https://api.github.com/repos/twisted/twisted/issues/1367,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1367/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1367/comments,https://api.github.com/repos/twisted/twisted/issues/1367/events,https://github.com/twisted/twisted/pull/1367,665553091,MDExOlB1bGxSZXF1ZXN0NDU2NTkyNzk0,1367,Drop obsolete private definitions from twisted.python.compat,"{'login': 'mthuurne', 'id': 246676, 'node_id': 'MDQ6VXNlcjI0NjY3Ng==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/246676?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mthuurne', 'html_url': 'https://github.com/mthuurne', 'followers_url': 'https://api.github.com/users/mthuurne/followers', 'following_url': 'https://api.github.com/users/mthuurne/following{/other_user}', 'gists_url': 'https://api.github.com/users/mthuurne/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mthuurne/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mthuurne/subscriptions', 'organizations_url': 'https://api.github.com/users/mthuurne/orgs', 'repos_url': 'https://api.github.com/users/mthuurne/repos', 'events_url': 'https://api.github.com/users/mthuurne/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mthuurne/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,4,2020-07-25T09:32:03Z,2020-08-03T03:43:48Z,2020-08-03T03:43:36Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1367', 'html_url': 'https://github.com/twisted/twisted/pull/1367', 'diff_url': 'https://github.com/twisted/twisted/pull/1367.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1367.patch'}","Many of the definitions in `twisted.python.compat` have become obsolete now that Python 2.7 support has been dropped. For private definitions, that means we can drop them as soon as Twisted itself no longer needs them.
I merged #1363 when I thought all review comments had been addressed in #1364, but later learned that the reviewer didn't agree. I am sorry for not asking explicitly whether it was OK to merge.
I do still think that this PR in its current form contains all the changes needed for its scope, which is to drop obsolete private definitions. Removing the uses of public definitions from `compat` belongs in #1364 instead.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9921
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
711,https://api.github.com/repos/twisted/twisted/issues/1366,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1366/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1366/comments,https://api.github.com/repos/twisted/twisted/issues/1366/events,https://github.com/twisted/twisted/pull/1366,665546630,MDExOlB1bGxSZXF1ZXN0NDU2NTg4Nzg2,1366,Revert #1363,"{'login': 'mthuurne', 'id': 246676, 'node_id': 'MDQ6VXNlcjI0NjY3Ng==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/246676?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mthuurne', 'html_url': 'https://github.com/mthuurne', 'followers_url': 'https://api.github.com/users/mthuurne/followers', 'following_url': 'https://api.github.com/users/mthuurne/following{/other_user}', 'gists_url': 'https://api.github.com/users/mthuurne/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mthuurne/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mthuurne/subscriptions', 'organizations_url': 'https://api.github.com/users/mthuurne/orgs', 'repos_url': 'https://api.github.com/users/mthuurne/repos', 'events_url': 'https://api.github.com/users/mthuurne/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mthuurne/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-25T08:50:00Z,2020-07-25T09:11:27Z,2020-07-25T09:11:27Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1366', 'html_url': 'https://github.com/twisted/twisted/pull/1366', 'diff_url': 'https://github.com/twisted/twisted/pull/1366.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1366.patch'}","I merged #1363 prematurely, apologies for that.",
712,https://api.github.com/repos/twisted/twisted/issues/1365,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1365/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1365/comments,https://api.github.com/repos/twisted/twisted/issues/1365/events,https://github.com/twisted/twisted/pull/1365,664864475,MDExOlB1bGxSZXF1ZXN0NDU2MDMzMTc2,1365,Disable pycodestyle for now,"{'login': 'mthuurne', 'id': 246676, 'node_id': 'MDQ6VXNlcjI0NjY3Ng==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/246676?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mthuurne', 'html_url': 'https://github.com/mthuurne', 'followers_url': 'https://api.github.com/users/mthuurne/followers', 'following_url': 'https://api.github.com/users/mthuurne/following{/other_user}', 'gists_url': 'https://api.github.com/users/mthuurne/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mthuurne/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mthuurne/subscriptions', 'organizations_url': 'https://api.github.com/users/mthuurne/orgs', 'repos_url': 'https://api.github.com/users/mthuurne/repos', 'events_url': 'https://api.github.com/users/mthuurne/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mthuurne/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-24T01:47:24Z,2020-07-25T08:58:18Z,2020-07-25T08:16:39Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1365', 'html_url': 'https://github.com/twisted/twisted/pull/1365', 'diff_url': 'https://github.com/twisted/twisted/pull/1365.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1365.patch'}","The incremental code style checking is blocking automated substitutions on the source tree (like #1360 and #1361, but touching more files), since any change close to a piece of pre-existing code that is not style compliant will make pycodestyle complain. This happens so many times that correcting these manually is too much work.
After adopting Black (see #1134), there will either be no need for style checking or it can be done with a much smaller ruleset.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9924
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests. (N/A)
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
713,https://api.github.com/repos/twisted/twisted/issues/1364,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1364/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1364/comments,https://api.github.com/repos/twisted/twisted/issues/1364/events,https://github.com/twisted/twisted/pull/1364,664186573,MDExOlB1bGxSZXF1ZXN0NDU1NDY3MzE1,1364,Deprecate obsolete public definitions from twisted.python.compat,"{'login': 'mthuurne', 'id': 246676, 'node_id': 'MDQ6VXNlcjI0NjY3Ng==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/246676?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mthuurne', 'html_url': 'https://github.com/mthuurne', 'followers_url': 'https://api.github.com/users/mthuurne/followers', 'following_url': 'https://api.github.com/users/mthuurne/following{/other_user}', 'gists_url': 'https://api.github.com/users/mthuurne/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mthuurne/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mthuurne/subscriptions', 'organizations_url': 'https://api.github.com/users/mthuurne/orgs', 'repos_url': 'https://api.github.com/users/mthuurne/repos', 'events_url': 'https://api.github.com/users/mthuurne/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mthuurne/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-07-23T03:59:24Z,2020-08-27T23:18:44Z,2020-08-27T23:18:34Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1364', 'html_url': 'https://github.com/twisted/twisted/pull/1364', 'diff_url': 'https://github.com/twisted/twisted/pull/1364.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1364.patch'}","This is the public counterpart to #1363. There are a lot of definitions that were useful in the transition to Python 3 but no longer serve a purpose.
Twisted can stop using these internally right now. In case there are external users, we should deprecate them, so we can remove the obsolete definitions at some point in the future.
For another PR:
- clean up uses of `str` and `unicode` in docstrings: there are still a lot of docstrings that use `str` where they mean `bytes`
- `networkString()` and `nativeString()` are probably obsolete, but having them in the code could help when adding type annotations, so I'd rather remove them at a later stage
# Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9922
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
714,https://api.github.com/repos/twisted/twisted/issues/1363,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1363/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1363/comments,https://api.github.com/repos/twisted/twisted/issues/1363/events,https://github.com/twisted/twisted/pull/1363,663401090,MDExOlB1bGxSZXF1ZXN0NDU0ODIyMzI0,1363, Drop obsolete private definitions from twisted.python.compat,"{'login': 'mthuurne', 'id': 246676, 'node_id': 'MDQ6VXNlcjI0NjY3Ng==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/246676?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mthuurne', 'html_url': 'https://github.com/mthuurne', 'followers_url': 'https://api.github.com/users/mthuurne/followers', 'following_url': 'https://api.github.com/users/mthuurne/following{/other_user}', 'gists_url': 'https://api.github.com/users/mthuurne/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mthuurne/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mthuurne/subscriptions', 'organizations_url': 'https://api.github.com/users/mthuurne/orgs', 'repos_url': 'https://api.github.com/users/mthuurne/repos', 'events_url': 'https://api.github.com/users/mthuurne/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mthuurne/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,17,2020-07-22T01:10:27Z,2020-07-30T06:13:32Z,2020-07-24T12:44:54Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1363', 'html_url': 'https://github.com/twisted/twisted/pull/1363', 'diff_url': 'https://github.com/twisted/twisted/pull/1363.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1363.patch'}","Many of the definitions in `twisted.python.compat` have become obsolete now that Python 2.7 support has been dropped. For private definitions, that means we can drop them as soon as Twisted itself no longer needs them.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9921
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
715,https://api.github.com/repos/twisted/twisted/issues/1362,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1362/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1362/comments,https://api.github.com/repos/twisted/twisted/issues/1362/events,https://github.com/twisted/twisted/pull/1362,663019531,MDExOlB1bGxSZXF1ZXN0NDU0NTA5NTMw,1362,Make twisted.names.dns more annotation-friendly,"{'login': 'mthuurne', 'id': 246676, 'node_id': 'MDQ6VXNlcjI0NjY3Ng==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/246676?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mthuurne', 'html_url': 'https://github.com/mthuurne', 'followers_url': 'https://api.github.com/users/mthuurne/followers', 'following_url': 'https://api.github.com/users/mthuurne/following{/other_user}', 'gists_url': 'https://api.github.com/users/mthuurne/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mthuurne/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mthuurne/subscriptions', 'organizations_url': 'https://api.github.com/users/mthuurne/orgs', 'repos_url': 'https://api.github.com/users/mthuurne/repos', 'events_url': 'https://api.github.com/users/mthuurne/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mthuurne/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-07-21T13:34:46Z,2020-07-21T19:00:52Z,2020-07-21T18:56:28Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1362', 'html_url': 'https://github.com/twisted/twisted/pull/1362', 'diff_url': 'https://github.com/twisted/twisted/pull/1362.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1362.patch'}","This splits off a number of non-trivial changes from #1360.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9920
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
716,https://api.github.com/repos/twisted/twisted/issues/1361,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1361/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1361/comments,https://api.github.com/repos/twisted/twisted/issues/1361/events,https://github.com/twisted/twisted/pull/1361,662375388,MDExOlB1bGxSZXF1ZXN0NDUzOTM4MzY2,1361, Add type annotations to __eq__() et al,"{'login': 'mthuurne', 'id': 246676, 'node_id': 'MDQ6VXNlcjI0NjY3Ng==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/246676?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mthuurne', 'html_url': 'https://github.com/mthuurne', 'followers_url': 'https://api.github.com/users/mthuurne/followers', 'following_url': 'https://api.github.com/users/mthuurne/following{/other_user}', 'gists_url': 'https://api.github.com/users/mthuurne/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mthuurne/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mthuurne/subscriptions', 'organizations_url': 'https://api.github.com/users/mthuurne/orgs', 'repos_url': 'https://api.github.com/users/mthuurne/repos', 'events_url': 'https://api.github.com/users/mthuurne/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mthuurne/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-20T23:31:51Z,2020-07-21T18:56:48Z,2020-07-21T18:27:08Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1361', 'html_url': 'https://github.com/twisted/twisted/pull/1361', 'diff_url': 'https://github.com/twisted/twisted/pull/1361.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1361.patch'}","Some of the existing code was incorrect or outdated when passed an uncomparable value: they would return `False` or raise `TypeError`. I updated those to return `NotImplemented` instead.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9919
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
717,https://api.github.com/repos/twisted/twisted/issues/1360,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1360/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1360/comments,https://api.github.com/repos/twisted/twisted/issues/1360/events,https://github.com/twisted/twisted/pull/1360,661081821,MDExOlB1bGxSZXF1ZXN0NDUyNzg1ODQz,1360,Add type annotations to __repr__() and __str__(),"{'login': 'mthuurne', 'id': 246676, 'node_id': 'MDQ6VXNlcjI0NjY3Ng==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/246676?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mthuurne', 'html_url': 'https://github.com/mthuurne', 'followers_url': 'https://api.github.com/users/mthuurne/followers', 'following_url': 'https://api.github.com/users/mthuurne/following{/other_user}', 'gists_url': 'https://api.github.com/users/mthuurne/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mthuurne/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mthuurne/subscriptions', 'organizations_url': 'https://api.github.com/users/mthuurne/orgs', 'repos_url': 'https://api.github.com/users/mthuurne/repos', 'events_url': 'https://api.github.com/users/mthuurne/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mthuurne/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-07-19T21:29:29Z,2020-07-22T18:32:48Z,2020-07-22T18:32:43Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1360', 'html_url': 'https://github.com/twisted/twisted/pull/1360', 'diff_url': 'https://github.com/twisted/twisted/pull/1360.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1360.patch'}","The first two commits are scripted replacements that annotate all `__repr__()` and `__str__()` methods in the source tree. Since an annotated method has its body checked by mypy, this triggers a few error messages for those bodies that need to be fixed manually, which is what the remainder of the commits are for. Please read the individual commit comments for details.
There are two significant behavioral changes:
- `twisted.names.dns.RRHeader` now raises `ValueError` instead of `AssertionError` if the payload type does not match
- descriptive error messages from `twisted.internet.error` are now present when running with `python -OO`
I added a news fragment for each of them.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9918
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
718,https://api.github.com/repos/twisted/twisted/issues/1359,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1359/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1359/comments,https://api.github.com/repos/twisted/twisted/issues/1359/events,https://github.com/twisted/twisted/pull/1359,661043354,MDExOlB1bGxSZXF1ZXN0NDUyNzUxMTM1,1359,[9776] Clean up tap.rst style,"{'login': 'twm', 'id': 43662, 'node_id': 'MDQ6VXNlcjQzNjYy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/43662?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/twm', 'html_url': 'https://github.com/twm', 'followers_url': 'https://api.github.com/users/twm/followers', 'following_url': 'https://api.github.com/users/twm/following{/other_user}', 'gists_url': 'https://api.github.com/users/twm/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/twm/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/twm/subscriptions', 'organizations_url': 'https://api.github.com/users/twm/orgs', 'repos_url': 'https://api.github.com/users/twm/repos', 'events_url': 'https://api.github.com/users/twm/events{/privacy}', 'received_events_url': 'https://api.github.com/users/twm/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-19T20:13:47Z,2020-07-24T09:39:44Z,2020-07-24T09:39:23Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1359', 'html_url': 'https://github.com/twisted/twisted/pull/1359', 'diff_url': 'https://github.com/twisted/twisted/pull/1359.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1359.patch'}","This is a follow-up to #852. I've tried to avoid semantic changes here.
* The first commit cleans up the whitespace and re-wraps lines in `tap.rst` semantically.
* The second commit fixes the formatting of directory hierarchies.
* The third tweaks the name of a file to be consistent throughout the document.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9776
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests. (N/A)
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
719,https://api.github.com/repos/twisted/twisted/issues/1358,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1358/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1358/comments,https://api.github.com/repos/twisted/twisted/issues/1358/events,https://github.com/twisted/twisted/pull/1358,660622331,MDExOlB1bGxSZXF1ZXN0NDUyMzY1ODQw,1358,[9076] HTTP CONNECT chunked Content-Length suppression,"{'login': 'twm', 'id': 43662, 'node_id': 'MDQ6VXNlcjQzNjYy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/43662?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/twm', 'html_url': 'https://github.com/twm', 'followers_url': 'https://api.github.com/users/twm/followers', 'following_url': 'https://api.github.com/users/twm/following{/other_user}', 'gists_url': 'https://api.github.com/users/twm/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/twm/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/twm/subscriptions', 'organizations_url': 'https://api.github.com/users/twm/orgs', 'repos_url': 'https://api.github.com/users/twm/repos', 'events_url': 'https://api.github.com/users/twm/events{/privacy}', 'received_events_url': 'https://api.github.com/users/twm/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,2,2020-07-19T05:59:40Z,2020-07-31T06:57:32Z,,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1358', 'html_url': 'https://github.com/twisted/twisted/pull/1358', 'diff_url': 'https://github.com/twisted/twisted/pull/1358.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1358.patch'}","This is #741 merged forward. I couldn't resolve the conflicts on that PR directly, perhaps because the original author has deleted their fork.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9076
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
720,https://api.github.com/repos/twisted/twisted/issues/1357,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1357/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1357/comments,https://api.github.com/repos/twisted/twisted/issues/1357/events,https://github.com/twisted/twisted/pull/1357,660437208,MDExOlB1bGxSZXF1ZXN0NDUyMTk0MDk5,1357,[9916] Contributing documentation,"{'login': 'twm', 'id': 43662, 'node_id': 'MDQ6VXNlcjQzNjYy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/43662?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/twm', 'html_url': 'https://github.com/twm', 'followers_url': 'https://api.github.com/users/twm/followers', 'following_url': 'https://api.github.com/users/twm/following{/other_user}', 'gists_url': 'https://api.github.com/users/twm/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/twm/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/twm/subscriptions', 'organizations_url': 'https://api.github.com/users/twm/orgs', 'repos_url': 'https://api.github.com/users/twm/repos', 'events_url': 'https://api.github.com/users/twm/events{/privacy}', 'received_events_url': 'https://api.github.com/users/twm/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-18T23:06:30Z,2020-07-18T23:57:22Z,2020-07-18T23:57:19Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1357', 'html_url': 'https://github.com/twisted/twisted/pull/1357', 'diff_url': 'https://github.com/twisted/twisted/pull/1357.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1357.patch'}","* Rename the file so that GitHub renders it with clickable links.
* Update it a bit to remove mentions of Buildbot and codecov.io
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9916
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests. (N/A)
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
721,https://api.github.com/repos/twisted/twisted/issues/1356,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1356/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1356/comments,https://api.github.com/repos/twisted/twisted/issues/1356/events,https://github.com/twisted/twisted/pull/1356,660415332,MDExOlB1bGxSZXF1ZXN0NDUyMTczNzc0,1356,[9917] Add .git-blame-ignore-revs placeholder,"{'login': 'twm', 'id': 43662, 'node_id': 'MDQ6VXNlcjQzNjYy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/43662?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/twm', 'html_url': 'https://github.com/twm', 'followers_url': 'https://api.github.com/users/twm/followers', 'following_url': 'https://api.github.com/users/twm/following{/other_user}', 'gists_url': 'https://api.github.com/users/twm/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/twm/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/twm/subscriptions', 'organizations_url': 'https://api.github.com/users/twm/orgs', 'repos_url': 'https://api.github.com/users/twm/repos', 'events_url': 'https://api.github.com/users/twm/events{/privacy}', 'received_events_url': 'https://api.github.com/users/twm/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-07-18T22:18:13Z,2020-07-25T22:13:23Z,2020-07-25T22:13:18Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1356', 'html_url': 'https://github.com/twisted/twisted/pull/1356', 'diff_url': 'https://github.com/twisted/twisted/pull/1356.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1356.patch'}","This is about documenting this file which will be used to preserve `git blame` [when running Black](https://github.com/twisted/twisted/pull/1134#pullrequestreview-448709641).
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9917
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests. (N/A)
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
722,https://api.github.com/repos/twisted/twisted/issues/1355,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1355/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1355/comments,https://api.github.com/repos/twisted/twisted/issues/1355/events,https://github.com/twisted/twisted/pull/1355,660334592,MDExOlB1bGxSZXF1ZXN0NDUyMTAwMzcz,1355,fixed corrupted iqmp value in test RSA key,"{'login': 'alex', 'id': 772, 'node_id': 'MDQ6VXNlcjc3Mg==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/772?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/alex', 'html_url': 'https://github.com/alex', 'followers_url': 'https://api.github.com/users/alex/followers', 'following_url': 'https://api.github.com/users/alex/following{/other_user}', 'gists_url': 'https://api.github.com/users/alex/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/alex/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/alex/subscriptions', 'organizations_url': 'https://api.github.com/users/alex/orgs', 'repos_url': 'https://api.github.com/users/alex/repos', 'events_url': 'https://api.github.com/users/alex/events{/privacy}', 'received_events_url': 'https://api.github.com/users/alex/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-18T19:31:26Z,2020-07-18T20:28:08Z,2020-07-18T20:26:51Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1355', 'html_url': 'https://github.com/twisted/twisted/pull/1355', 'diff_url': 'https://github.com/twisted/twisted/pull/1355.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1355.patch'}","## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9913
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
723,https://api.github.com/repos/twisted/twisted/issues/1354,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1354/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1354/comments,https://api.github.com/repos/twisted/twisted/issues/1354/events,https://github.com/twisted/twisted/pull/1354,659335120,MDExOlB1bGxSZXF1ZXN0NDUxMTkxMzc4,1354,Include 'py.typed' marker to signal PEP 561 compliance,"{'login': 'mthuurne', 'id': 246676, 'node_id': 'MDQ6VXNlcjI0NjY3Ng==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/246676?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mthuurne', 'html_url': 'https://github.com/mthuurne', 'followers_url': 'https://api.github.com/users/mthuurne/followers', 'following_url': 'https://api.github.com/users/mthuurne/following{/other_user}', 'gists_url': 'https://api.github.com/users/mthuurne/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mthuurne/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mthuurne/subscriptions', 'organizations_url': 'https://api.github.com/users/mthuurne/orgs', 'repos_url': 'https://api.github.com/users/mthuurne/repos', 'events_url': 'https://api.github.com/users/mthuurne/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mthuurne/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-17T15:10:30Z,2020-07-17T22:02:25Z,2020-07-17T21:38:20Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1354', 'html_url': 'https://github.com/twisted/twisted/pull/1354', 'diff_url': 'https://github.com/twisted/twisted/pull/1354.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1354.patch'}","This marker is necessary to make mypy use the annotations in the Twisted sources when type checking other projects that are importing from Twisted.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9908
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] ~~I have updated the automated tests.~~ No code is changed.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
724,https://api.github.com/repos/twisted/twisted/issues/1353,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1353/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1353/comments,https://api.github.com/repos/twisted/twisted/issues/1353/events,https://github.com/twisted/twisted/pull/1353,657663124,MDExOlB1bGxSZXF1ZXN0NDQ5NzQyOTU5,1353,imapserver: fix copy operation,"{'login': 'devkral', 'id': 658768, 'node_id': 'MDQ6VXNlcjY1ODc2OA==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/658768?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/devkral', 'html_url': 'https://github.com/devkral', 'followers_url': 'https://api.github.com/users/devkral/followers', 'following_url': 'https://api.github.com/users/devkral/following{/other_user}', 'gists_url': 'https://api.github.com/users/devkral/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/devkral/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/devkral/subscriptions', 'organizations_url': 'https://api.github.com/users/devkral/orgs', 'repos_url': 'https://api.github.com/users/devkral/repos', 'events_url': 'https://api.github.com/users/devkral/events{/privacy}', 'received_events_url': 'https://api.github.com/users/devkral/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-07-15T21:13:08Z,2020-07-20T21:11:17Z,2020-07-17T20:02:10Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1353', 'html_url': 'https://github.com/twisted/twisted/pull/1353', 'diff_url': 'https://github.com/twisted/twisted/pull/1353.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1353.patch'}","## Contributor Checklist:
* [X] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9910
* [X] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [ ] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [ ] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
_parseMbox is not an attribute. This fixes the copy operation.",
725,https://api.github.com/repos/twisted/twisted/issues/1352,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1352/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1352/comments,https://api.github.com/repos/twisted/twisted/issues/1352/events,https://github.com/twisted/twisted/pull/1352,656976376,MDExOlB1bGxSZXF1ZXN0NDQ5MTc3NjMx,1352,9773: Use twisted.logger in conch instead of legacy logger,"{'login': 'ryban', 'id': 1617326, 'node_id': 'MDQ6VXNlcjE2MTczMjY=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/1617326?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ryban', 'html_url': 'https://github.com/ryban', 'followers_url': 'https://api.github.com/users/ryban/followers', 'following_url': 'https://api.github.com/users/ryban/following{/other_user}', 'gists_url': 'https://api.github.com/users/ryban/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ryban/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ryban/subscriptions', 'organizations_url': 'https://api.github.com/users/ryban/orgs', 'repos_url': 'https://api.github.com/users/ryban/repos', 'events_url': 'https://api.github.com/users/ryban/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ryban/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-07-15T00:27:55Z,2020-08-11T02:58:20Z,2020-08-11T01:10:46Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1352', 'html_url': 'https://github.com/twisted/twisted/pull/1352', 'diff_url': 'https://github.com/twisted/twisted/pull/1352.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1352.patch'}","Most of the logs I set to debug or error with a few to info depending on how important to the user I felt they were, but I think some of the debug logs might make sense as info.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9773
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
726,https://api.github.com/repos/twisted/twisted/issues/1351,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1351/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1351/comments,https://api.github.com/repos/twisted/twisted/issues/1351/events,https://github.com/twisted/twisted/pull/1351,655232590,MDExOlB1bGxSZXF1ZXN0NDQ3Nzg0NTAz,1351,Run mypy on GitHub actions. - part 2,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-11T15:54:13Z,2020-07-11T20:13:58Z,2020-07-11T20:13:41Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1351', 'html_url': 'https://github.com/twisted/twisted/pull/1351', 'diff_url': 'https://github.com/twisted/twisted/pull/1351.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1351.patch'}",Update to https://github.com/twisted/twisted/pull/1349,
727,https://api.github.com/repos/twisted/twisted/issues/1350,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1350/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1350/comments,https://api.github.com/repos/twisted/twisted/issues/1350/events,https://github.com/twisted/twisted/pull/1350,655163518,MDExOlB1bGxSZXF1ZXN0NDQ3NzM5MjAx,1350,#1191 take 2,"{'login': 'glyph', 'id': 716529, 'node_id': 'MDQ6VXNlcjcxNjUyOQ==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/716529?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/glyph', 'html_url': 'https://github.com/glyph', 'followers_url': 'https://api.github.com/users/glyph/followers', 'following_url': 'https://api.github.com/users/glyph/following{/other_user}', 'gists_url': 'https://api.github.com/users/glyph/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/glyph/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/glyph/subscriptions', 'organizations_url': 'https://api.github.com/users/glyph/orgs', 'repos_url': 'https://api.github.com/users/glyph/repos', 'events_url': 'https://api.github.com/users/glyph/events{/privacy}', 'received_events_url': 'https://api.github.com/users/glyph/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-11T08:25:06Z,2020-07-11T19:28:41Z,2020-07-11T19:28:38Z,MEMBER,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1350', 'html_url': 'https://github.com/twisted/twisted/pull/1350', 'diff_url': 'https://github.com/twisted/twisted/pull/1350.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1350.patch'}","Supersedes #1191 .
## Commit Message
```
Author: mathieui, glyph
Reviewer:
Fixes: ticket:9716
Fixed serialization of timedelta, date, and time objects in twisted.spread.
```
Unicode strings cannot be sent as is in Banana, and need to be
byte-encoded. In python 3, this would fail for the date, time and
timedelta objects as the jellyfication would use a unicode string and
not a byte string.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9716
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
728,https://api.github.com/repos/twisted/twisted/issues/1349,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1349/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1349/comments,https://api.github.com/repos/twisted/twisted/issues/1349/events,https://github.com/twisted/twisted/pull/1349,655160702,MDExOlB1bGxSZXF1ZXN0NDQ3NzM3MzI3,1349,Run mypy on GitHub actions.,"{'login': 'adiroiban', 'id': 204609, 'node_id': 'MDQ6VXNlcjIwNDYwOQ==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/204609?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/adiroiban', 'html_url': 'https://github.com/adiroiban', 'followers_url': 'https://api.github.com/users/adiroiban/followers', 'following_url': 'https://api.github.com/users/adiroiban/following{/other_user}', 'gists_url': 'https://api.github.com/users/adiroiban/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/adiroiban/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/adiroiban/subscriptions', 'organizations_url': 'https://api.github.com/users/adiroiban/orgs', 'repos_url': 'https://api.github.com/users/adiroiban/repos', 'events_url': 'https://api.github.com/users/adiroiban/events{/privacy}', 'received_events_url': 'https://api.github.com/users/adiroiban/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,9,2020-07-11T08:04:43Z,2020-07-17T18:06:03Z,2020-07-17T16:56:26Z,MEMBER,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1349', 'html_url': 'https://github.com/twisted/twisted/pull/1349', 'diff_url': 'https://github.com/twisted/twisted/pull/1349.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1349.patch'}","https://twistedmatrix.com/trac/ticket/9903
Scope
=====
This moves the mypy check from Azure Pipelines to GitHub Actions.
GitHub actions provides better integration with PR and at the same time can be managed without extra access to Azure DevOps admin portal.
Changes
=======
Remove mypy from Azure Pipelines and moves it to GitHub Actions
It tries to run all the setup code in separate steps so that mypy step will have minimal noise and we can see how long it takes to run only the mypy test, without installing deps and creating the virtualenv
How to test
=========
I have no idea how to test this.
The problem is that GitHub actions will run an action only if it is first merged in master.
",
729,https://api.github.com/repos/twisted/twisted/issues/1378,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1378/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1378/comments,https://api.github.com/repos/twisted/twisted/issues/1378/events,https://github.com/twisted/twisted/pull/1378,688582923,MDExOlB1bGxSZXF1ZXN0NDc1ODEzMDUw,1378,Fix typo in docs/core/howto/defer-intro.rst,"{'login': 'paul-wilkinson', 'id': 7225429, 'node_id': 'MDQ6VXNlcjcyMjU0Mjk=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/7225429?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/paul-wilkinson', 'html_url': 'https://github.com/paul-wilkinson', 'followers_url': 'https://api.github.com/users/paul-wilkinson/followers', 'following_url': 'https://api.github.com/users/paul-wilkinson/following{/other_user}', 'gists_url': 'https://api.github.com/users/paul-wilkinson/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/paul-wilkinson/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/paul-wilkinson/subscriptions', 'organizations_url': 'https://api.github.com/users/paul-wilkinson/orgs', 'repos_url': 'https://api.github.com/users/paul-wilkinson/repos', 'events_url': 'https://api.github.com/users/paul-wilkinson/events{/privacy}', 'received_events_url': 'https://api.github.com/users/paul-wilkinson/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-29T18:29:33Z,2020-08-29T22:27:36Z,2020-08-29T22:27:36Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1378', 'html_url': 'https://github.com/twisted/twisted/pull/1378', 'diff_url': 'https://github.com/twisted/twisted/pull/1378.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1378.patch'}","""expect"" -> ""except""
## Remove this section
Please have a look at [our developer documentation](https://twistedmatrix.com/trac/wiki/TwistedDevelopment#SubmittingaPatch) before submitting your Pull Request.
Please note that the trac ticket, news fragment, and review submission portions of this process apply to *all* pull requests, no matter how small; if you don't do them, it's likely that nobody will even notice your PR needs a review.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9948
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
730,https://api.github.com/repos/twisted/twisted/issues/1377,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1377/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1377/comments,https://api.github.com/repos/twisted/twisted/issues/1377/events,https://github.com/twisted/twisted/pull/1377,684060134,MDExOlB1bGxSZXF1ZXN0NDcyMDM0NDIw,1377,[9509] Move PyHamcrest dependency to [dev] extra,"{'login': 'twm', 'id': 43662, 'node_id': 'MDQ6VXNlcjQzNjYy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/43662?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/twm', 'html_url': 'https://github.com/twm', 'followers_url': 'https://api.github.com/users/twm/followers', 'following_url': 'https://api.github.com/users/twm/following{/other_user}', 'gists_url': 'https://api.github.com/users/twm/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/twm/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/twm/subscriptions', 'organizations_url': 'https://api.github.com/users/twm/orgs', 'repos_url': 'https://api.github.com/users/twm/repos', 'events_url': 'https://api.github.com/users/twm/events{/privacy}', 'received_events_url': 'https://api.github.com/users/twm/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,0,2020-08-22T20:06:42Z,2020-08-24T04:57:45Z,,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1377', 'html_url': 'https://github.com/twisted/twisted/pull/1377', 'diff_url': 'https://github.com/twisted/twisted/pull/1377.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1377.patch'}","I'm not 100% sure of this approach, since the `dev` extra contains quite a few packages that are now installed into the `nodeps` Tox environments. Consider this a proposal for discussion. Other possible solutions:
1. Drop the linting and build tools from the ``dev`` extra. They are redundant with specifications in `tox.ini` anyway.
2. Add a new extra, e.g. ``test``, and put PyHamcrest there instead of `dev`.
3. Rewrite the tests that use PyHamcrest without it; drop the dependency entirely.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9509
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
731,https://api.github.com/repos/twisted/twisted/issues/1376,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1376/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1376/comments,https://api.github.com/repos/twisted/twisted/issues/1376/events,https://github.com/twisted/twisted/pull/1376,680691445,MDExOlB1bGxSZXF1ZXN0NDY5MjAyMTYx,1376,Added HTTP 308 support,"{'login': 'ryanc-me', 'id': 762418, 'node_id': 'MDQ6VXNlcjc2MjQxOA==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/762418?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ryanc-me', 'html_url': 'https://github.com/ryanc-me', 'followers_url': 'https://api.github.com/users/ryanc-me/followers', 'following_url': 'https://api.github.com/users/ryanc-me/following{/other_user}', 'gists_url': 'https://api.github.com/users/ryanc-me/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ryanc-me/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ryanc-me/subscriptions', 'organizations_url': 'https://api.github.com/users/ryanc-me/orgs', 'repos_url': 'https://api.github.com/users/ryanc-me/repos', 'events_url': 'https://api.github.com/users/ryanc-me/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ryanc-me/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-08-18T05:01:25Z,2020-08-23T07:12:12Z,2020-08-23T07:12:12Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1376', 'html_url': 'https://github.com/twisted/twisted/pull/1376', 'diff_url': 'https://github.com/twisted/twisted/pull/1376.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1376.patch'}","Added support for `308 Permanent Redirects` on the `RedirectAgent`.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9940
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
732,https://api.github.com/repos/twisted/twisted/issues/1375,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1375/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1375/comments,https://api.github.com/repos/twisted/twisted/issues/1375/events,https://github.com/twisted/twisted/pull/1375,680603056,MDExOlB1bGxSZXF1ZXN0NDY5MTMyMTIz,1375,Expose PySerial dsrdtr parameter in constructor,"{'login': 'matthew-turnaroundfactor', 'id': 64492753, 'node_id': 'MDQ6VXNlcjY0NDkyNzUz', 'avatar_url': 'https://avatars3.githubusercontent.com/u/64492753?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/matthew-turnaroundfactor', 'html_url': 'https://github.com/matthew-turnaroundfactor', 'followers_url': 'https://api.github.com/users/matthew-turnaroundfactor/followers', 'following_url': 'https://api.github.com/users/matthew-turnaroundfactor/following{/other_user}', 'gists_url': 'https://api.github.com/users/matthew-turnaroundfactor/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/matthew-turnaroundfactor/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/matthew-turnaroundfactor/subscriptions', 'organizations_url': 'https://api.github.com/users/matthew-turnaroundfactor/orgs', 'repos_url': 'https://api.github.com/users/matthew-turnaroundfactor/repos', 'events_url': 'https://api.github.com/users/matthew-turnaroundfactor/events{/privacy}', 'received_events_url': 'https://api.github.com/users/matthew-turnaroundfactor/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,2,2020-08-18T00:26:06Z,2020-08-22T04:39:27Z,,NONE,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1375', 'html_url': 'https://github.com/twisted/twisted/pull/1375', 'diff_url': 'https://github.com/twisted/twisted/pull/1375.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1375.patch'}",The PySerial ``dsrdtr`` parameter is needed to test Twisted's ``SerialPort`` against linux PTY devices. This PR exposes the ``dsrdtr`` parameter along with the ``rtscts`` parameter that is already exposed. A compatible default is provided which should make this change backwards-compatible with existing code.,
733,https://api.github.com/repos/twisted/twisted/issues/1374,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1374/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1374/comments,https://api.github.com/repos/twisted/twisted/issues/1374/events,https://github.com/twisted/twisted/pull/1374,680128817,MDExOlB1bGxSZXF1ZXN0NDY4NzQ0NDk3,1374,deprecate inlineCallbacks,"{'login': 'graingert', 'id': 413772, 'node_id': 'MDQ6VXNlcjQxMzc3Mg==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/413772?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/graingert', 'html_url': 'https://github.com/graingert', 'followers_url': 'https://api.github.com/users/graingert/followers', 'following_url': 'https://api.github.com/users/graingert/following{/other_user}', 'gists_url': 'https://api.github.com/users/graingert/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/graingert/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/graingert/subscriptions', 'organizations_url': 'https://api.github.com/users/graingert/orgs', 'repos_url': 'https://api.github.com/users/graingert/repos', 'events_url': 'https://api.github.com/users/graingert/events{/privacy}', 'received_events_url': 'https://api.github.com/users/graingert/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,0,2020-08-17T10:32:17Z,2020-08-28T09:56:36Z,,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1374', 'html_url': 'https://github.com/twisted/twisted/pull/1374', 'diff_url': 'https://github.com/twisted/twisted/pull/1374.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1374.patch'}","## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9939
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
734,https://api.github.com/repos/twisted/twisted/issues/1373,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1373/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1373/comments,https://api.github.com/repos/twisted/twisted/issues/1373/events,https://github.com/twisted/twisted/pull/1373,679660631,MDExOlB1bGxSZXF1ZXN0NDY4Mzc3MTEz,1373,add from __future__ import generator_stop to defer.py,"{'login': 'graingert', 'id': 413772, 'node_id': 'MDQ6VXNlcjQxMzc3Mg==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/413772?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/graingert', 'html_url': 'https://github.com/graingert', 'followers_url': 'https://api.github.com/users/graingert/followers', 'following_url': 'https://api.github.com/users/graingert/following{/other_user}', 'gists_url': 'https://api.github.com/users/graingert/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/graingert/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/graingert/subscriptions', 'organizations_url': 'https://api.github.com/users/graingert/orgs', 'repos_url': 'https://api.github.com/users/graingert/repos', 'events_url': 'https://api.github.com/users/graingert/events{/privacy}', 'received_events_url': 'https://api.github.com/users/graingert/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,0,2020-08-15T23:52:25Z,2020-08-16T00:09:23Z,,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1373', 'html_url': 'https://github.com/twisted/twisted/pull/1373', 'diff_url': 'https://github.com/twisted/twisted/pull/1373.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1373.patch'}","probably the most important file to get this change
refs: https://tm.tl/#9937
## Remove this section
Please have a look at [our developer documentation](https://twistedmatrix.com/trac/wiki/TwistedDevelopment#SubmittingaPatch) before submitting your Pull Request.
Please note that the trac ticket, news fragment, and review submission portions of this process apply to *all* pull requests, no matter how small; if you don't do them, it's likely that nobody will even notice your PR needs a review.
## Contributor Checklist:
* [x] The associated ticket in Trac is here:https://tm.tl/#9937
* [ ] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [ ] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [ ] I have updated the automated tests.
* [ ] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
735,https://api.github.com/repos/twisted/twisted/issues/1372,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1372/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1372/comments,https://api.github.com/repos/twisted/twisted/issues/1372/events,https://github.com/twisted/twisted/pull/1372,675602456,MDExOlB1bGxSZXF1ZXN0NDY1MDg0MTgy,1372,Remove code that only runs on unsupported Python versions,"{'login': 'mthuurne', 'id': 246676, 'node_id': 'MDQ6VXNlcjI0NjY3Ng==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/246676?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mthuurne', 'html_url': 'https://github.com/mthuurne', 'followers_url': 'https://api.github.com/users/mthuurne/followers', 'following_url': 'https://api.github.com/users/mthuurne/following{/other_user}', 'gists_url': 'https://api.github.com/users/mthuurne/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mthuurne/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mthuurne/subscriptions', 'organizations_url': 'https://api.github.com/users/mthuurne/orgs', 'repos_url': 'https://api.github.com/users/mthuurne/repos', 'events_url': 'https://api.github.com/users/mthuurne/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mthuurne/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-08T23:12:17Z,2020-08-16T00:07:34Z,2020-08-16T00:07:28Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1372', 'html_url': 'https://github.com/twisted/twisted/pull/1372', 'diff_url': 'https://github.com/twisted/twisted/pull/1372.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1372.patch'}","## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9936
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
736,https://api.github.com/repos/twisted/twisted/issues/1371,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1371/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1371/comments,https://api.github.com/repos/twisted/twisted/issues/1371/events,https://github.com/twisted/twisted/pull/1371,672686437,MDExOlB1bGxSZXF1ZXN0NDYyNjc3ODQ1,1371,[9932] rename amp.String to amp.Binary with alias,"{'login': 'graingert', 'id': 413772, 'node_id': 'MDQ6VXNlcjQxMzc3Mg==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/413772?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/graingert', 'html_url': 'https://github.com/graingert', 'followers_url': 'https://api.github.com/users/graingert/followers', 'following_url': 'https://api.github.com/users/graingert/following{/other_user}', 'gists_url': 'https://api.github.com/users/graingert/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/graingert/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/graingert/subscriptions', 'organizations_url': 'https://api.github.com/users/graingert/orgs', 'repos_url': 'https://api.github.com/users/graingert/repos', 'events_url': 'https://api.github.com/users/graingert/events{/privacy}', 'received_events_url': 'https://api.github.com/users/graingert/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,2,2020-08-04T10:30:38Z,2020-08-24T05:40:27Z,,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1371', 'html_url': 'https://github.com/twisted/twisted/pull/1371', 'diff_url': 'https://github.com/twisted/twisted/pull/1371.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1371.patch'}","## Remove this section
Please have a look at [our developer documentation](https://twistedmatrix.com/trac/wiki/TwistedDevelopment#SubmittingaPatch) before submitting your Pull Request.
Please note that the trac ticket, news fragment, and review submission portions of this process apply to *all* pull requests, no matter how small; if you don't do them, it's likely that nobody will even notice your PR needs a review.
## Contributor Checklist:
* [ ] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/
* [ ] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [ ] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [ ] I have updated the automated tests.
* [ ] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
737,https://api.github.com/repos/twisted/twisted/issues/1370,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1370/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1370/comments,https://api.github.com/repos/twisted/twisted/issues/1370/events,https://github.com/twisted/twisted/pull/1370,672649526,MDExOlB1bGxSZXF1ZXN0NDYyNjQ2OTg2,1370,defer reactor import in twisted.web.xmlrpc,"{'login': 'graingert', 'id': 413772, 'node_id': 'MDQ6VXNlcjQxMzc3Mg==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/413772?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/graingert', 'html_url': 'https://github.com/graingert', 'followers_url': 'https://api.github.com/users/graingert/followers', 'following_url': 'https://api.github.com/users/graingert/following{/other_user}', 'gists_url': 'https://api.github.com/users/graingert/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/graingert/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/graingert/subscriptions', 'organizations_url': 'https://api.github.com/users/graingert/orgs', 'repos_url': 'https://api.github.com/users/graingert/repos', 'events_url': 'https://api.github.com/users/graingert/events{/privacy}', 'received_events_url': 'https://api.github.com/users/graingert/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,0,2020-08-04T09:31:04Z,2020-08-27T22:50:50Z,,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1370', 'html_url': 'https://github.com/twisted/twisted/pull/1370', 'diff_url': 'https://github.com/twisted/twisted/pull/1370.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1370.patch'}","## Remove this section
Please have a look at [our developer documentation](https://twistedmatrix.com/trac/wiki/TwistedDevelopment#SubmittingaPatch) before submitting your Pull Request.
Please note that the trac ticket, news fragment, and review submission portions of this process apply to *all* pull requests, no matter how small; if you don't do them, it's likely that nobody will even notice your PR needs a review.
## Contributor Checklist:
* [ ] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/
* [ ] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [ ] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [ ] I have updated the automated tests.
* [ ] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
738,https://api.github.com/repos/twisted/twisted/issues/1369,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1369/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1369/comments,https://api.github.com/repos/twisted/twisted/issues/1369/events,https://github.com/twisted/twisted/pull/1369,672429982,MDExOlB1bGxSZXF1ZXN0NDYyNDY4NDU4,1369,Make the twisted tests work when pyOpenSSL deletes NPN,"{'login': 'alex', 'id': 772, 'node_id': 'MDQ6VXNlcjc3Mg==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/772?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/alex', 'html_url': 'https://github.com/alex', 'followers_url': 'https://api.github.com/users/alex/followers', 'following_url': 'https://api.github.com/users/alex/following{/other_user}', 'gists_url': 'https://api.github.com/users/alex/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/alex/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/alex/subscriptions', 'organizations_url': 'https://api.github.com/users/alex/orgs', 'repos_url': 'https://api.github.com/users/alex/repos', 'events_url': 'https://api.github.com/users/alex/events{/privacy}', 'received_events_url': 'https://api.github.com/users/alex/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-04T01:01:03Z,2020-08-04T03:25:26Z,2020-08-04T03:24:37Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1369', 'html_url': 'https://github.com/twisted/twisted/pull/1369', 'diff_url': 'https://github.com/twisted/twisted/pull/1369.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1369.patch'}","## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
739,https://api.github.com/repos/twisted/twisted/issues/1368,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1368/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1368/comments,https://api.github.com/repos/twisted/twisted/issues/1368/events,https://github.com/twisted/twisted/pull/1368,672381945,MDExOlB1bGxSZXF1ZXN0NDYyNDI5MTk2,1368,Drop explicit inheritance from 'object' class,"{'login': 'mthuurne', 'id': 246676, 'node_id': 'MDQ6VXNlcjI0NjY3Ng==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/246676?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mthuurne', 'html_url': 'https://github.com/mthuurne', 'followers_url': 'https://api.github.com/users/mthuurne/followers', 'following_url': 'https://api.github.com/users/mthuurne/following{/other_user}', 'gists_url': 'https://api.github.com/users/mthuurne/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mthuurne/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mthuurne/subscriptions', 'organizations_url': 'https://api.github.com/users/mthuurne/orgs', 'repos_url': 'https://api.github.com/users/mthuurne/repos', 'events_url': 'https://api.github.com/users/mthuurne/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mthuurne/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-08-03T22:33:30Z,2020-08-15T23:45:13Z,2020-08-15T23:45:07Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1368', 'html_url': 'https://github.com/twisted/twisted/pull/1368', 'diff_url': 'https://github.com/twisted/twisted/pull/1368.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1368.patch'}","Inheriting from `object` was necessary in Python 2 to force new-style classes. In Python 3, it's just noise.
Substitutions were done automatically with `sed`, except:
- `twisted/words/xish/xpathparser.g` was done by hand and `xpathparser.py` was re-generated from that
- `twisted/test/test_plugin.py` was done by hand
I also had to update the definitions for `check-manifest` in `tox.ini`, since the old ignore pattern no longer works with the latest release of `check-manifest`.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9927
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
740,https://api.github.com/repos/twisted/twisted/issues/1367,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1367/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1367/comments,https://api.github.com/repos/twisted/twisted/issues/1367/events,https://github.com/twisted/twisted/pull/1367,665553091,MDExOlB1bGxSZXF1ZXN0NDU2NTkyNzk0,1367,Drop obsolete private definitions from twisted.python.compat,"{'login': 'mthuurne', 'id': 246676, 'node_id': 'MDQ6VXNlcjI0NjY3Ng==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/246676?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mthuurne', 'html_url': 'https://github.com/mthuurne', 'followers_url': 'https://api.github.com/users/mthuurne/followers', 'following_url': 'https://api.github.com/users/mthuurne/following{/other_user}', 'gists_url': 'https://api.github.com/users/mthuurne/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mthuurne/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mthuurne/subscriptions', 'organizations_url': 'https://api.github.com/users/mthuurne/orgs', 'repos_url': 'https://api.github.com/users/mthuurne/repos', 'events_url': 'https://api.github.com/users/mthuurne/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mthuurne/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,4,2020-07-25T09:32:03Z,2020-08-03T03:43:48Z,2020-08-03T03:43:36Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1367', 'html_url': 'https://github.com/twisted/twisted/pull/1367', 'diff_url': 'https://github.com/twisted/twisted/pull/1367.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1367.patch'}","Many of the definitions in `twisted.python.compat` have become obsolete now that Python 2.7 support has been dropped. For private definitions, that means we can drop them as soon as Twisted itself no longer needs them.
I merged #1363 when I thought all review comments had been addressed in #1364, but later learned that the reviewer didn't agree. I am sorry for not asking explicitly whether it was OK to merge.
I do still think that this PR in its current form contains all the changes needed for its scope, which is to drop obsolete private definitions. Removing the uses of public definitions from `compat` belongs in #1364 instead.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9921
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
741,https://api.github.com/repos/twisted/twisted/issues/1366,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1366/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1366/comments,https://api.github.com/repos/twisted/twisted/issues/1366/events,https://github.com/twisted/twisted/pull/1366,665546630,MDExOlB1bGxSZXF1ZXN0NDU2NTg4Nzg2,1366,Revert #1363,"{'login': 'mthuurne', 'id': 246676, 'node_id': 'MDQ6VXNlcjI0NjY3Ng==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/246676?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mthuurne', 'html_url': 'https://github.com/mthuurne', 'followers_url': 'https://api.github.com/users/mthuurne/followers', 'following_url': 'https://api.github.com/users/mthuurne/following{/other_user}', 'gists_url': 'https://api.github.com/users/mthuurne/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mthuurne/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mthuurne/subscriptions', 'organizations_url': 'https://api.github.com/users/mthuurne/orgs', 'repos_url': 'https://api.github.com/users/mthuurne/repos', 'events_url': 'https://api.github.com/users/mthuurne/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mthuurne/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-25T08:50:00Z,2020-07-25T09:11:27Z,2020-07-25T09:11:27Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1366', 'html_url': 'https://github.com/twisted/twisted/pull/1366', 'diff_url': 'https://github.com/twisted/twisted/pull/1366.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1366.patch'}","I merged #1363 prematurely, apologies for that.",
742,https://api.github.com/repos/twisted/twisted/issues/1365,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1365/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1365/comments,https://api.github.com/repos/twisted/twisted/issues/1365/events,https://github.com/twisted/twisted/pull/1365,664864475,MDExOlB1bGxSZXF1ZXN0NDU2MDMzMTc2,1365,Disable pycodestyle for now,"{'login': 'mthuurne', 'id': 246676, 'node_id': 'MDQ6VXNlcjI0NjY3Ng==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/246676?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mthuurne', 'html_url': 'https://github.com/mthuurne', 'followers_url': 'https://api.github.com/users/mthuurne/followers', 'following_url': 'https://api.github.com/users/mthuurne/following{/other_user}', 'gists_url': 'https://api.github.com/users/mthuurne/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mthuurne/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mthuurne/subscriptions', 'organizations_url': 'https://api.github.com/users/mthuurne/orgs', 'repos_url': 'https://api.github.com/users/mthuurne/repos', 'events_url': 'https://api.github.com/users/mthuurne/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mthuurne/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-24T01:47:24Z,2020-07-25T08:58:18Z,2020-07-25T08:16:39Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1365', 'html_url': 'https://github.com/twisted/twisted/pull/1365', 'diff_url': 'https://github.com/twisted/twisted/pull/1365.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1365.patch'}","The incremental code style checking is blocking automated substitutions on the source tree (like #1360 and #1361, but touching more files), since any change close to a piece of pre-existing code that is not style compliant will make pycodestyle complain. This happens so many times that correcting these manually is too much work.
After adopting Black (see #1134), there will either be no need for style checking or it can be done with a much smaller ruleset.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9924
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests. (N/A)
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
743,https://api.github.com/repos/twisted/twisted/issues/1364,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1364/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1364/comments,https://api.github.com/repos/twisted/twisted/issues/1364/events,https://github.com/twisted/twisted/pull/1364,664186573,MDExOlB1bGxSZXF1ZXN0NDU1NDY3MzE1,1364,Deprecate obsolete public definitions from twisted.python.compat,"{'login': 'mthuurne', 'id': 246676, 'node_id': 'MDQ6VXNlcjI0NjY3Ng==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/246676?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mthuurne', 'html_url': 'https://github.com/mthuurne', 'followers_url': 'https://api.github.com/users/mthuurne/followers', 'following_url': 'https://api.github.com/users/mthuurne/following{/other_user}', 'gists_url': 'https://api.github.com/users/mthuurne/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mthuurne/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mthuurne/subscriptions', 'organizations_url': 'https://api.github.com/users/mthuurne/orgs', 'repos_url': 'https://api.github.com/users/mthuurne/repos', 'events_url': 'https://api.github.com/users/mthuurne/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mthuurne/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-07-23T03:59:24Z,2020-08-27T23:18:44Z,2020-08-27T23:18:34Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1364', 'html_url': 'https://github.com/twisted/twisted/pull/1364', 'diff_url': 'https://github.com/twisted/twisted/pull/1364.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1364.patch'}","This is the public counterpart to #1363. There are a lot of definitions that were useful in the transition to Python 3 but no longer serve a purpose.
Twisted can stop using these internally right now. In case there are external users, we should deprecate them, so we can remove the obsolete definitions at some point in the future.
For another PR:
- clean up uses of `str` and `unicode` in docstrings: there are still a lot of docstrings that use `str` where they mean `bytes`
- `networkString()` and `nativeString()` are probably obsolete, but having them in the code could help when adding type annotations, so I'd rather remove them at a later stage
# Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9922
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
744,https://api.github.com/repos/twisted/twisted/issues/1363,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1363/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1363/comments,https://api.github.com/repos/twisted/twisted/issues/1363/events,https://github.com/twisted/twisted/pull/1363,663401090,MDExOlB1bGxSZXF1ZXN0NDU0ODIyMzI0,1363, Drop obsolete private definitions from twisted.python.compat,"{'login': 'mthuurne', 'id': 246676, 'node_id': 'MDQ6VXNlcjI0NjY3Ng==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/246676?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mthuurne', 'html_url': 'https://github.com/mthuurne', 'followers_url': 'https://api.github.com/users/mthuurne/followers', 'following_url': 'https://api.github.com/users/mthuurne/following{/other_user}', 'gists_url': 'https://api.github.com/users/mthuurne/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mthuurne/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mthuurne/subscriptions', 'organizations_url': 'https://api.github.com/users/mthuurne/orgs', 'repos_url': 'https://api.github.com/users/mthuurne/repos', 'events_url': 'https://api.github.com/users/mthuurne/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mthuurne/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,17,2020-07-22T01:10:27Z,2020-07-30T06:13:32Z,2020-07-24T12:44:54Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1363', 'html_url': 'https://github.com/twisted/twisted/pull/1363', 'diff_url': 'https://github.com/twisted/twisted/pull/1363.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1363.patch'}","Many of the definitions in `twisted.python.compat` have become obsolete now that Python 2.7 support has been dropped. For private definitions, that means we can drop them as soon as Twisted itself no longer needs them.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9921
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
745,https://api.github.com/repos/twisted/twisted/issues/1362,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1362/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1362/comments,https://api.github.com/repos/twisted/twisted/issues/1362/events,https://github.com/twisted/twisted/pull/1362,663019531,MDExOlB1bGxSZXF1ZXN0NDU0NTA5NTMw,1362,Make twisted.names.dns more annotation-friendly,"{'login': 'mthuurne', 'id': 246676, 'node_id': 'MDQ6VXNlcjI0NjY3Ng==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/246676?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mthuurne', 'html_url': 'https://github.com/mthuurne', 'followers_url': 'https://api.github.com/users/mthuurne/followers', 'following_url': 'https://api.github.com/users/mthuurne/following{/other_user}', 'gists_url': 'https://api.github.com/users/mthuurne/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mthuurne/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mthuurne/subscriptions', 'organizations_url': 'https://api.github.com/users/mthuurne/orgs', 'repos_url': 'https://api.github.com/users/mthuurne/repos', 'events_url': 'https://api.github.com/users/mthuurne/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mthuurne/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-07-21T13:34:46Z,2020-07-21T19:00:52Z,2020-07-21T18:56:28Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1362', 'html_url': 'https://github.com/twisted/twisted/pull/1362', 'diff_url': 'https://github.com/twisted/twisted/pull/1362.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1362.patch'}","This splits off a number of non-trivial changes from #1360.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9920
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
746,https://api.github.com/repos/twisted/twisted/issues/1361,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1361/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1361/comments,https://api.github.com/repos/twisted/twisted/issues/1361/events,https://github.com/twisted/twisted/pull/1361,662375388,MDExOlB1bGxSZXF1ZXN0NDUzOTM4MzY2,1361, Add type annotations to __eq__() et al,"{'login': 'mthuurne', 'id': 246676, 'node_id': 'MDQ6VXNlcjI0NjY3Ng==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/246676?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mthuurne', 'html_url': 'https://github.com/mthuurne', 'followers_url': 'https://api.github.com/users/mthuurne/followers', 'following_url': 'https://api.github.com/users/mthuurne/following{/other_user}', 'gists_url': 'https://api.github.com/users/mthuurne/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mthuurne/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mthuurne/subscriptions', 'organizations_url': 'https://api.github.com/users/mthuurne/orgs', 'repos_url': 'https://api.github.com/users/mthuurne/repos', 'events_url': 'https://api.github.com/users/mthuurne/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mthuurne/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-20T23:31:51Z,2020-07-21T18:56:48Z,2020-07-21T18:27:08Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1361', 'html_url': 'https://github.com/twisted/twisted/pull/1361', 'diff_url': 'https://github.com/twisted/twisted/pull/1361.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1361.patch'}","Some of the existing code was incorrect or outdated when passed an uncomparable value: they would return `False` or raise `TypeError`. I updated those to return `NotImplemented` instead.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9919
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
747,https://api.github.com/repos/twisted/twisted/issues/1360,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1360/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1360/comments,https://api.github.com/repos/twisted/twisted/issues/1360/events,https://github.com/twisted/twisted/pull/1360,661081821,MDExOlB1bGxSZXF1ZXN0NDUyNzg1ODQz,1360,Add type annotations to __repr__() and __str__(),"{'login': 'mthuurne', 'id': 246676, 'node_id': 'MDQ6VXNlcjI0NjY3Ng==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/246676?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mthuurne', 'html_url': 'https://github.com/mthuurne', 'followers_url': 'https://api.github.com/users/mthuurne/followers', 'following_url': 'https://api.github.com/users/mthuurne/following{/other_user}', 'gists_url': 'https://api.github.com/users/mthuurne/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mthuurne/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mthuurne/subscriptions', 'organizations_url': 'https://api.github.com/users/mthuurne/orgs', 'repos_url': 'https://api.github.com/users/mthuurne/repos', 'events_url': 'https://api.github.com/users/mthuurne/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mthuurne/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-07-19T21:29:29Z,2020-07-22T18:32:48Z,2020-07-22T18:32:43Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1360', 'html_url': 'https://github.com/twisted/twisted/pull/1360', 'diff_url': 'https://github.com/twisted/twisted/pull/1360.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1360.patch'}","The first two commits are scripted replacements that annotate all `__repr__()` and `__str__()` methods in the source tree. Since an annotated method has its body checked by mypy, this triggers a few error messages for those bodies that need to be fixed manually, which is what the remainder of the commits are for. Please read the individual commit comments for details.
There are two significant behavioral changes:
- `twisted.names.dns.RRHeader` now raises `ValueError` instead of `AssertionError` if the payload type does not match
- descriptive error messages from `twisted.internet.error` are now present when running with `python -OO`
I added a news fragment for each of them.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9918
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
748,https://api.github.com/repos/twisted/twisted/issues/1359,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1359/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1359/comments,https://api.github.com/repos/twisted/twisted/issues/1359/events,https://github.com/twisted/twisted/pull/1359,661043354,MDExOlB1bGxSZXF1ZXN0NDUyNzUxMTM1,1359,[9776] Clean up tap.rst style,"{'login': 'twm', 'id': 43662, 'node_id': 'MDQ6VXNlcjQzNjYy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/43662?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/twm', 'html_url': 'https://github.com/twm', 'followers_url': 'https://api.github.com/users/twm/followers', 'following_url': 'https://api.github.com/users/twm/following{/other_user}', 'gists_url': 'https://api.github.com/users/twm/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/twm/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/twm/subscriptions', 'organizations_url': 'https://api.github.com/users/twm/orgs', 'repos_url': 'https://api.github.com/users/twm/repos', 'events_url': 'https://api.github.com/users/twm/events{/privacy}', 'received_events_url': 'https://api.github.com/users/twm/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-19T20:13:47Z,2020-07-24T09:39:44Z,2020-07-24T09:39:23Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1359', 'html_url': 'https://github.com/twisted/twisted/pull/1359', 'diff_url': 'https://github.com/twisted/twisted/pull/1359.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1359.patch'}","This is a follow-up to #852. I've tried to avoid semantic changes here.
* The first commit cleans up the whitespace and re-wraps lines in `tap.rst` semantically.
* The second commit fixes the formatting of directory hierarchies.
* The third tweaks the name of a file to be consistent throughout the document.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9776
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests. (N/A)
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
749,https://api.github.com/repos/twisted/twisted/issues/1358,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1358/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1358/comments,https://api.github.com/repos/twisted/twisted/issues/1358/events,https://github.com/twisted/twisted/pull/1358,660622331,MDExOlB1bGxSZXF1ZXN0NDUyMzY1ODQw,1358,[9076] HTTP CONNECT chunked Content-Length suppression,"{'login': 'twm', 'id': 43662, 'node_id': 'MDQ6VXNlcjQzNjYy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/43662?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/twm', 'html_url': 'https://github.com/twm', 'followers_url': 'https://api.github.com/users/twm/followers', 'following_url': 'https://api.github.com/users/twm/following{/other_user}', 'gists_url': 'https://api.github.com/users/twm/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/twm/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/twm/subscriptions', 'organizations_url': 'https://api.github.com/users/twm/orgs', 'repos_url': 'https://api.github.com/users/twm/repos', 'events_url': 'https://api.github.com/users/twm/events{/privacy}', 'received_events_url': 'https://api.github.com/users/twm/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,2,2020-07-19T05:59:40Z,2020-07-31T06:57:32Z,,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1358', 'html_url': 'https://github.com/twisted/twisted/pull/1358', 'diff_url': 'https://github.com/twisted/twisted/pull/1358.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1358.patch'}","This is #741 merged forward. I couldn't resolve the conflicts on that PR directly, perhaps because the original author has deleted their fork.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9076
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
750,https://api.github.com/repos/twisted/twisted/issues/1357,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1357/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1357/comments,https://api.github.com/repos/twisted/twisted/issues/1357/events,https://github.com/twisted/twisted/pull/1357,660437208,MDExOlB1bGxSZXF1ZXN0NDUyMTk0MDk5,1357,[9916] Contributing documentation,"{'login': 'twm', 'id': 43662, 'node_id': 'MDQ6VXNlcjQzNjYy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/43662?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/twm', 'html_url': 'https://github.com/twm', 'followers_url': 'https://api.github.com/users/twm/followers', 'following_url': 'https://api.github.com/users/twm/following{/other_user}', 'gists_url': 'https://api.github.com/users/twm/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/twm/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/twm/subscriptions', 'organizations_url': 'https://api.github.com/users/twm/orgs', 'repos_url': 'https://api.github.com/users/twm/repos', 'events_url': 'https://api.github.com/users/twm/events{/privacy}', 'received_events_url': 'https://api.github.com/users/twm/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-18T23:06:30Z,2020-07-18T23:57:22Z,2020-07-18T23:57:19Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1357', 'html_url': 'https://github.com/twisted/twisted/pull/1357', 'diff_url': 'https://github.com/twisted/twisted/pull/1357.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1357.patch'}","* Rename the file so that GitHub renders it with clickable links.
* Update it a bit to remove mentions of Buildbot and codecov.io
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9916
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests. (N/A)
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
751,https://api.github.com/repos/twisted/twisted/issues/1356,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1356/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1356/comments,https://api.github.com/repos/twisted/twisted/issues/1356/events,https://github.com/twisted/twisted/pull/1356,660415332,MDExOlB1bGxSZXF1ZXN0NDUyMTczNzc0,1356,[9917] Add .git-blame-ignore-revs placeholder,"{'login': 'twm', 'id': 43662, 'node_id': 'MDQ6VXNlcjQzNjYy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/43662?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/twm', 'html_url': 'https://github.com/twm', 'followers_url': 'https://api.github.com/users/twm/followers', 'following_url': 'https://api.github.com/users/twm/following{/other_user}', 'gists_url': 'https://api.github.com/users/twm/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/twm/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/twm/subscriptions', 'organizations_url': 'https://api.github.com/users/twm/orgs', 'repos_url': 'https://api.github.com/users/twm/repos', 'events_url': 'https://api.github.com/users/twm/events{/privacy}', 'received_events_url': 'https://api.github.com/users/twm/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-07-18T22:18:13Z,2020-07-25T22:13:23Z,2020-07-25T22:13:18Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1356', 'html_url': 'https://github.com/twisted/twisted/pull/1356', 'diff_url': 'https://github.com/twisted/twisted/pull/1356.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1356.patch'}","This is about documenting this file which will be used to preserve `git blame` [when running Black](https://github.com/twisted/twisted/pull/1134#pullrequestreview-448709641).
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9917
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests. (N/A)
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
752,https://api.github.com/repos/twisted/twisted/issues/1355,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1355/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1355/comments,https://api.github.com/repos/twisted/twisted/issues/1355/events,https://github.com/twisted/twisted/pull/1355,660334592,MDExOlB1bGxSZXF1ZXN0NDUyMTAwMzcz,1355,fixed corrupted iqmp value in test RSA key,"{'login': 'alex', 'id': 772, 'node_id': 'MDQ6VXNlcjc3Mg==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/772?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/alex', 'html_url': 'https://github.com/alex', 'followers_url': 'https://api.github.com/users/alex/followers', 'following_url': 'https://api.github.com/users/alex/following{/other_user}', 'gists_url': 'https://api.github.com/users/alex/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/alex/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/alex/subscriptions', 'organizations_url': 'https://api.github.com/users/alex/orgs', 'repos_url': 'https://api.github.com/users/alex/repos', 'events_url': 'https://api.github.com/users/alex/events{/privacy}', 'received_events_url': 'https://api.github.com/users/alex/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-18T19:31:26Z,2020-07-18T20:28:08Z,2020-07-18T20:26:51Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1355', 'html_url': 'https://github.com/twisted/twisted/pull/1355', 'diff_url': 'https://github.com/twisted/twisted/pull/1355.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1355.patch'}","## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9913
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
753,https://api.github.com/repos/twisted/twisted/issues/1354,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1354/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1354/comments,https://api.github.com/repos/twisted/twisted/issues/1354/events,https://github.com/twisted/twisted/pull/1354,659335120,MDExOlB1bGxSZXF1ZXN0NDUxMTkxMzc4,1354,Include 'py.typed' marker to signal PEP 561 compliance,"{'login': 'mthuurne', 'id': 246676, 'node_id': 'MDQ6VXNlcjI0NjY3Ng==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/246676?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mthuurne', 'html_url': 'https://github.com/mthuurne', 'followers_url': 'https://api.github.com/users/mthuurne/followers', 'following_url': 'https://api.github.com/users/mthuurne/following{/other_user}', 'gists_url': 'https://api.github.com/users/mthuurne/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mthuurne/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mthuurne/subscriptions', 'organizations_url': 'https://api.github.com/users/mthuurne/orgs', 'repos_url': 'https://api.github.com/users/mthuurne/repos', 'events_url': 'https://api.github.com/users/mthuurne/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mthuurne/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-17T15:10:30Z,2020-07-17T22:02:25Z,2020-07-17T21:38:20Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1354', 'html_url': 'https://github.com/twisted/twisted/pull/1354', 'diff_url': 'https://github.com/twisted/twisted/pull/1354.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1354.patch'}","This marker is necessary to make mypy use the annotations in the Twisted sources when type checking other projects that are importing from Twisted.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9908
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] ~~I have updated the automated tests.~~ No code is changed.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
754,https://api.github.com/repos/twisted/twisted/issues/1353,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1353/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1353/comments,https://api.github.com/repos/twisted/twisted/issues/1353/events,https://github.com/twisted/twisted/pull/1353,657663124,MDExOlB1bGxSZXF1ZXN0NDQ5NzQyOTU5,1353,imapserver: fix copy operation,"{'login': 'devkral', 'id': 658768, 'node_id': 'MDQ6VXNlcjY1ODc2OA==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/658768?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/devkral', 'html_url': 'https://github.com/devkral', 'followers_url': 'https://api.github.com/users/devkral/followers', 'following_url': 'https://api.github.com/users/devkral/following{/other_user}', 'gists_url': 'https://api.github.com/users/devkral/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/devkral/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/devkral/subscriptions', 'organizations_url': 'https://api.github.com/users/devkral/orgs', 'repos_url': 'https://api.github.com/users/devkral/repos', 'events_url': 'https://api.github.com/users/devkral/events{/privacy}', 'received_events_url': 'https://api.github.com/users/devkral/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-07-15T21:13:08Z,2020-07-20T21:11:17Z,2020-07-17T20:02:10Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1353', 'html_url': 'https://github.com/twisted/twisted/pull/1353', 'diff_url': 'https://github.com/twisted/twisted/pull/1353.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1353.patch'}","## Contributor Checklist:
* [X] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9910
* [X] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [ ] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [ ] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
_parseMbox is not an attribute. This fixes the copy operation.",
755,https://api.github.com/repos/twisted/twisted/issues/1352,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1352/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1352/comments,https://api.github.com/repos/twisted/twisted/issues/1352/events,https://github.com/twisted/twisted/pull/1352,656976376,MDExOlB1bGxSZXF1ZXN0NDQ5MTc3NjMx,1352,9773: Use twisted.logger in conch instead of legacy logger,"{'login': 'ryban', 'id': 1617326, 'node_id': 'MDQ6VXNlcjE2MTczMjY=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/1617326?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ryban', 'html_url': 'https://github.com/ryban', 'followers_url': 'https://api.github.com/users/ryban/followers', 'following_url': 'https://api.github.com/users/ryban/following{/other_user}', 'gists_url': 'https://api.github.com/users/ryban/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ryban/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ryban/subscriptions', 'organizations_url': 'https://api.github.com/users/ryban/orgs', 'repos_url': 'https://api.github.com/users/ryban/repos', 'events_url': 'https://api.github.com/users/ryban/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ryban/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-07-15T00:27:55Z,2020-08-11T02:58:20Z,2020-08-11T01:10:46Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1352', 'html_url': 'https://github.com/twisted/twisted/pull/1352', 'diff_url': 'https://github.com/twisted/twisted/pull/1352.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1352.patch'}","Most of the logs I set to debug or error with a few to info depending on how important to the user I felt they were, but I think some of the debug logs might make sense as info.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9773
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
756,https://api.github.com/repos/twisted/twisted/issues/1351,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1351/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1351/comments,https://api.github.com/repos/twisted/twisted/issues/1351/events,https://github.com/twisted/twisted/pull/1351,655232590,MDExOlB1bGxSZXF1ZXN0NDQ3Nzg0NTAz,1351,Run mypy on GitHub actions. - part 2,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-11T15:54:13Z,2020-07-11T20:13:58Z,2020-07-11T20:13:41Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1351', 'html_url': 'https://github.com/twisted/twisted/pull/1351', 'diff_url': 'https://github.com/twisted/twisted/pull/1351.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1351.patch'}",Update to https://github.com/twisted/twisted/pull/1349,
757,https://api.github.com/repos/twisted/twisted/issues/1350,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1350/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1350/comments,https://api.github.com/repos/twisted/twisted/issues/1350/events,https://github.com/twisted/twisted/pull/1350,655163518,MDExOlB1bGxSZXF1ZXN0NDQ3NzM5MjAx,1350,#1191 take 2,"{'login': 'glyph', 'id': 716529, 'node_id': 'MDQ6VXNlcjcxNjUyOQ==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/716529?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/glyph', 'html_url': 'https://github.com/glyph', 'followers_url': 'https://api.github.com/users/glyph/followers', 'following_url': 'https://api.github.com/users/glyph/following{/other_user}', 'gists_url': 'https://api.github.com/users/glyph/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/glyph/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/glyph/subscriptions', 'organizations_url': 'https://api.github.com/users/glyph/orgs', 'repos_url': 'https://api.github.com/users/glyph/repos', 'events_url': 'https://api.github.com/users/glyph/events{/privacy}', 'received_events_url': 'https://api.github.com/users/glyph/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-11T08:25:06Z,2020-07-11T19:28:41Z,2020-07-11T19:28:38Z,MEMBER,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1350', 'html_url': 'https://github.com/twisted/twisted/pull/1350', 'diff_url': 'https://github.com/twisted/twisted/pull/1350.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1350.patch'}","Supersedes #1191 .
## Commit Message
```
Author: mathieui, glyph
Reviewer:
Fixes: ticket:9716
Fixed serialization of timedelta, date, and time objects in twisted.spread.
```
Unicode strings cannot be sent as is in Banana, and need to be
byte-encoded. In python 3, this would fail for the date, time and
timedelta objects as the jellyfication would use a unicode string and
not a byte string.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9716
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
758,https://api.github.com/repos/twisted/twisted/issues/1349,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1349/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1349/comments,https://api.github.com/repos/twisted/twisted/issues/1349/events,https://github.com/twisted/twisted/pull/1349,655160702,MDExOlB1bGxSZXF1ZXN0NDQ3NzM3MzI3,1349,Run mypy on GitHub actions.,"{'login': 'adiroiban', 'id': 204609, 'node_id': 'MDQ6VXNlcjIwNDYwOQ==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/204609?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/adiroiban', 'html_url': 'https://github.com/adiroiban', 'followers_url': 'https://api.github.com/users/adiroiban/followers', 'following_url': 'https://api.github.com/users/adiroiban/following{/other_user}', 'gists_url': 'https://api.github.com/users/adiroiban/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/adiroiban/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/adiroiban/subscriptions', 'organizations_url': 'https://api.github.com/users/adiroiban/orgs', 'repos_url': 'https://api.github.com/users/adiroiban/repos', 'events_url': 'https://api.github.com/users/adiroiban/events{/privacy}', 'received_events_url': 'https://api.github.com/users/adiroiban/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,9,2020-07-11T08:04:43Z,2020-07-17T18:06:03Z,2020-07-17T16:56:26Z,MEMBER,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1349', 'html_url': 'https://github.com/twisted/twisted/pull/1349', 'diff_url': 'https://github.com/twisted/twisted/pull/1349.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1349.patch'}","https://twistedmatrix.com/trac/ticket/9903
Scope
=====
This moves the mypy check from Azure Pipelines to GitHub Actions.
GitHub actions provides better integration with PR and at the same time can be managed without extra access to Azure DevOps admin portal.
Changes
=======
Remove mypy from Azure Pipelines and moves it to GitHub Actions
It tries to run all the setup code in separate steps so that mypy step will have minimal noise and we can see how long it takes to run only the mypy test, without installing deps and creating the virtualenv
How to test
=========
I have no idea how to test this.
The problem is that GitHub actions will run an action only if it is first merged in master.
",
759,https://api.github.com/repos/twisted/twisted/issues/1348,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1348/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1348/comments,https://api.github.com/repos/twisted/twisted/issues/1348/events,https://github.com/twisted/twisted/pull/1348,655059433,MDExOlB1bGxSZXF1ZXN0NDQ3NjYyMTYx,1348,"[mypy] If mypy CI fails, then report that error","{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-07-10T22:02:41Z,2020-07-13T02:12:24Z,2020-07-13T02:12:18Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1348', 'html_url': 'https://github.com/twisted/twisted/pull/1348', 'diff_url': 'https://github.com/twisted/twisted/pull/1348.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1348.patch'}","https://twistedmatrix.com/trac/ticket/9903
This can be merged after https://github.com/twisted/twisted/pull/1346 is merged",
760,https://api.github.com/repos/twisted/twisted/issues/1347,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1347/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1347/comments,https://api.github.com/repos/twisted/twisted/issues/1347/events,https://github.com/twisted/twisted/pull/1347,654524007,MDExOlB1bGxSZXF1ZXN0NDQ3MjM1NjE5,1347,"objgrep apparently already worked, so let's just enable the tests","{'login': 'glyph', 'id': 716529, 'node_id': 'MDQ6VXNlcjcxNjUyOQ==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/716529?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/glyph', 'html_url': 'https://github.com/glyph', 'followers_url': 'https://api.github.com/users/glyph/followers', 'following_url': 'https://api.github.com/users/glyph/following{/other_user}', 'gists_url': 'https://api.github.com/users/glyph/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/glyph/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/glyph/subscriptions', 'organizations_url': 'https://api.github.com/users/glyph/orgs', 'repos_url': 'https://api.github.com/users/glyph/repos', 'events_url': 'https://api.github.com/users/glyph/events{/privacy}', 'received_events_url': 'https://api.github.com/users/glyph/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-07-10T05:36:15Z,2020-07-10T23:53:42Z,2020-07-10T23:53:38Z,MEMBER,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1347', 'html_url': 'https://github.com/twisted/twisted/pull/1347', 'diff_url': 'https://github.com/twisted/twisted/pull/1347.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1347.patch'}","## Commit Message Body:
```
Author: glyph
Reviewer:
Fixes: ticket:6896
objgrep apparently already worked, so let's just enable the tests
```
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/6986
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
761,https://api.github.com/repos/twisted/twisted/issues/1346,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1346/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1346/comments,https://api.github.com/repos/twisted/twisted/issues/1346/events,https://github.com/twisted/twisted/pull/1346,654235665,MDExOlB1bGxSZXF1ZXN0NDQ3MDAxNzgz,1346,[mypy] [9902] Fix mypy error in decorator.py,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-07-09T17:40:24Z,2020-07-16T21:46:40Z,2020-07-16T21:46:37Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1346', 'html_url': 'https://github.com/twisted/twisted/pull/1346', 'diff_url': 'https://github.com/twisted/twisted/pull/1346.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1346.patch'}","https://twistedmatrix.com/trac/ticket/9902
This fixes this mypy error:
```
src/twisted/python/deprecate.py:856:16: error: Incompatible return value type (got ""Callable[..., Any]"", expected ""_Tc"") [return-value]
```
and follows the example at: https://mypy.readthedocs.io/en/stable/generics.html#declaring-decorators",
762,https://api.github.com/repos/twisted/twisted/issues/1345,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1345/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1345/comments,https://api.github.com/repos/twisted/twisted/issues/1345/events,https://github.com/twisted/twisted/pull/1345,653774593,MDExOlB1bGxSZXF1ZXN0NDQ2NjI2MzE5,1345,[mypy] [9901] Eliminate mypy error in src/twisted/words/im/basesupport.py,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-07-09T05:26:19Z,2020-07-09T19:33:34Z,2020-07-09T19:33:30Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1345', 'html_url': 'https://github.com/twisted/twisted/pull/1345', 'diff_url': 'https://github.com/twisted/twisted/pull/1345.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1345.patch'}","https://twistedmatrix.com/trac/ticket/9901
This fixes this mypy error:
```
src/twisted/words/im/basesupport.py:130:16: error: ""AbstractClientMixin"" has no attribute ""_protoBase"" [attr-defined]
return self._protoBase.connectionLost(self, reason)
```
`_protoBase` is defined in `AbstractClientMixin.__init__()`:
`https://github.com/twisted/twisted/blob/4bef9c70a4cd0e9f186272908c135024c7641143/src/twisted/words/im/basesupport.py#L113",
763,https://api.github.com/repos/twisted/twisted/issues/1344,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1344/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1344/comments,https://api.github.com/repos/twisted/twisted/issues/1344/events,https://github.com/twisted/twisted/pull/1344,653764909,MDExOlB1bGxSZXF1ZXN0NDQ2NjE4NDIw,1344,[mypy] [9900] Fix mypy error on src/twisted/mail/relaymanager.py,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-09T05:01:39Z,2020-07-09T15:21:29Z,2020-07-09T15:21:25Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1344', 'html_url': 'https://github.com/twisted/twisted/pull/1344', 'diff_url': 'https://github.com/twisted/twisted/pull/1344.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1344.patch'}","https://twistedmatrix.com/trac/ticket/9900
This fixes this mypy error:
```
src/twisted/mail/relaymanager.py:65:33: error: ""ManagedRelayerMixin"" has no attribute ""factory"" [attr-defined]
self.manager.notifyDone(self.factory)
```
The `SMTPManagedRelayerFactory.buildProtocol()` method sets the `factory` attribute on the `SMTPManagedRelayer`.
https://github.com/twisted/twisted/blob/0a08045aa70db5bfe098a3bd5a4f25f96e99645d/src/twisted/mail/relaymanager.py#L188 , this method sets the `factory` attribute:
```
",
764,https://api.github.com/repos/twisted/twisted/issues/1343,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1343/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1343/comments,https://api.github.com/repos/twisted/twisted/issues/1343/events,https://github.com/twisted/twisted/pull/1343,653719111,MDExOlB1bGxSZXF1ZXN0NDQ2NTgzMTcx,1343,[mypy] [9899] Eliminate mypy error in src/twisted/python/test/test_components.py,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-09T02:44:41Z,2020-07-09T14:42:39Z,2020-07-09T14:42:35Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1343', 'html_url': 'https://github.com/twisted/twisted/pull/1343', 'diff_url': 'https://github.com/twisted/twisted/pull/1343.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1343.patch'}","https://twistedmatrix.com/trac/ticket/9899
Eliminate this mypy error:
```
src/twisted/python/test/test_components.py:629:5: error: Signature of ""Booable"" incompatible with ""yay"" of supertype
""twisted.python.test.test_components.IProxiedInterface"" [override]
def yay(self):
^
```",
765,https://api.github.com/repos/twisted/twisted/issues/1342,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1342/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1342/comments,https://api.github.com/repos/twisted/twisted/issues/1342/events,https://github.com/twisted/twisted/pull/1342,653710666,MDExOlB1bGxSZXF1ZXN0NDQ2NTc2NTE0,1342,[mypy] [9898] Change type of twisted.internet.protocol.Factory.factory to allow AbstractDatagramProtocol.,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-09T02:18:46Z,2020-07-09T14:18:12Z,2020-07-09T14:18:08Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1342', 'html_url': 'https://github.com/twisted/twisted/pull/1342', 'diff_url': 'https://github.com/twisted/twisted/pull/1342.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1342.patch'}","https://twistedmatrix.com/trac/ticket/9898
This fixes these mypy errors:
```
src/twisted/pair/test/test_tuntap.py:1359:24: error: Incompatible types in assignment (expression has type ""Type[IPRecordingProtocol]"", variable has type
""Optional[Type[Protocol]]"") [assignment]
factory.protocol = IPRecordingProtocol
^
src/twisted/pair/test/test_tuntap.py:1382:24: error: Incompatible types in assignment (expression has type ""Type[EthernetRecordingProtocol]"", variable has type
""Optional[Type[Protocol]]"") [assignment]
factory.protocol = EthernetRecordingProtocol
```
",
766,https://api.github.com/repos/twisted/twisted/issues/1341,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1341/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1341/comments,https://api.github.com/repos/twisted/twisted/issues/1341/events,https://github.com/twisted/twisted/pull/1341,653695765,MDExOlB1bGxSZXF1ZXN0NDQ2NTY1MzU2,1341,[mypy] [9897] Rename parameters to match interface definitions,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-07-09T01:31:48Z,2020-07-09T13:39:38Z,2020-07-09T13:39:33Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1341', 'html_url': 'https://github.com/twisted/twisted/pull/1341', 'diff_url': 'https://github.com/twisted/twisted/pull/1341.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1341.patch'}","https://twistedmatrix.com/trac/ticket/9897
This fixes the following mypy errors:
```
src/twisted/internet/base.py:722:5: error: Signature of ""ReactorBase"" incompatible with ""addSystemEventTrigger"" of supertype ""IReactorCore"" [override]
def addSystemEventTrigger(self, _phase, _eventType, _f, *args, **kw):
^
def callWhenRunning(self, _callable, *args, **kw):
^
src/twisted/internet/base.py:788:5: error: Signature of ""ReactorBase"" incompatible with ""callLater"" of supertype ""IReactorTime"" [override]
def callLater(self, _seconds, _f, *args, **kw):
^
src/twisted/internet/task.py:789:5: error: Signature of ""Clock"" incompatible with ""callLater"" of supertype ""IReactorTime"" [override]
def callLater(self, when, what, *a, **kw):
^
src/twisted/internet/test/test_base.py:51:5: error: Signature of ""FakeReactor"" incompatible with ""callFromThread"" of supertype
""twisted.internet.interfaces.IReactorFromThreads"" [override]
def callFromThread(self, f, *args, **kwargs):
```",
767,https://api.github.com/repos/twisted/twisted/issues/1340,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1340/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1340/comments,https://api.github.com/repos/twisted/twisted/issues/1340/events,https://github.com/twisted/twisted/pull/1340,652590988,MDExOlB1bGxSZXF1ZXN0NDQ1NjMzMDQy,1340,[mypy] [9896] Reduce mypy errors: explicitly define global variables in context module,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-07T19:54:02Z,2020-07-09T00:07:07Z,2020-07-09T00:07:03Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1340', 'html_url': 'https://github.com/twisted/twisted/pull/1340', 'diff_url': 'https://github.com/twisted/twisted/pull/1340.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1340.patch'}","https://twistedmatrix.com/trac/ticket/9896
Explicitly define global variables to eliminate mypy errors:
* theContextTracker
* call
* get
This eliminates mypy errors:
```
src/twisted/_threads/test/test_team.py:11:1: error: Module 'twisted.python.context' has no attribute 'call' [attr-defined]
from twisted.python.context import call, get
^
src/twisted/_threads/test/test_team.py:11:1: error: Module 'twisted.python.context' has no attribute 'get' [attr-defined]
from twisted.python.context import call, get
```",
768,https://api.github.com/repos/twisted/twisted/issues/1339,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1339/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1339/comments,https://api.github.com/repos/twisted/twisted/issues/1339/events,https://github.com/twisted/twisted/pull/1339,652574266,MDExOlB1bGxSZXF1ZXN0NDQ1NjE4NDI5,1339,[mypy] [9895] Define Server and Client classes explicitly,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-07T19:32:23Z,2020-07-08T00:10:43Z,2020-07-08T00:10:39Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1339', 'html_url': 'https://github.com/twisted/twisted/pull/1339', 'diff_url': 'https://github.com/twisted/twisted/pull/1339.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1339.patch'}","https://twistedmatrix.com/trac/ticket/9895
d562a59
Instead, just define these classes explicitly:
- TCPServer
- TCPClient
- UNIXServer
- UNIXClient
- SSLServer
- SSLClient
- UNIXDatagramServer
- UNIXDatagramClient
- UDPServer
- MulticastServer
This eliminates mypy errors such as:
```
src/twisted/words/test/test_jabberjstrports.py:12:1: error: Module 'twisted.application.internet' has no attribute 'TCPClient' [attr-defined]
from twisted.application.internet import TCPClient
```",
769,https://api.github.com/repos/twisted/twisted/issues/1338,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1338/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1338/comments,https://api.github.com/repos/twisted/twisted/issues/1338/events,https://github.com/twisted/twisted/pull/1338,650981688,MDExOlB1bGxSZXF1ZXN0NDQ0MzQ1MTc3,1338,Fix AsyncioSelectorReactor on Windows Python 3.8+,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,5,2020-07-05T01:19:56Z,2020-09-05T03:28:59Z,,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1338', 'html_url': 'https://github.com/twisted/twisted/pull/1338', 'diff_url': 'https://github.com/twisted/twisted/pull/1338.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1338.patch'}","https://twistedmatrix.com/trac/ticket/9766
https://twistedmatrix.com/trac/ticket/9809
twisted.internet.asyncioreactor.AsyncioSelectorReactor has been changed to use asyncio.SelectorEventLoop
if asyncio.get_event_loop() does not return a SelectorEventLoop.
This fixes AsyncioSelectorReactor on Python 3.8+, where
asyncio.get_event_loop() was changed to return a ProactorEventLoop
in [bpo-34687](https://bugs.python.org/issue34687). See: https://github.com/python/cpython/commit/37aae9dcf18753b8ffda99d1a5758a90af852464.
",
770,https://api.github.com/repos/twisted/twisted/issues/1337,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1337/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1337/comments,https://api.github.com/repos/twisted/twisted/issues/1337/events,https://github.com/twisted/twisted/pull/1337,650487867,MDExOlB1bGxSZXF1ZXN0NDQzOTY5NDQy,1337,twisted.conch.telnet now implements End of Record (EOR) command (RFC 885),"{'login': 'NimVek', 'id': 6333118, 'node_id': 'MDQ6VXNlcjYzMzMxMTg=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/6333118?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/NimVek', 'html_url': 'https://github.com/NimVek', 'followers_url': 'https://api.github.com/users/NimVek/followers', 'following_url': 'https://api.github.com/users/NimVek/following{/other_user}', 'gists_url': 'https://api.github.com/users/NimVek/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/NimVek/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/NimVek/subscriptions', 'organizations_url': 'https://api.github.com/users/NimVek/orgs', 'repos_url': 'https://api.github.com/users/NimVek/repos', 'events_url': 'https://api.github.com/users/NimVek/events{/privacy}', 'received_events_url': 'https://api.github.com/users/NimVek/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,4,2020-07-03T09:58:34Z,2020-07-04T07:19:04Z,2020-07-04T07:16:16Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1337', 'html_url': 'https://github.com/twisted/twisted/pull/1337', 'diff_url': 'https://github.com/twisted/twisted/pull/1337.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1337.patch'}","## Contributor Checklist:
* [X] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9875
* [X] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [X] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [X] I have updated the automated tests.
* [X] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
771,https://api.github.com/repos/twisted/twisted/issues/1336,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1336/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1336/comments,https://api.github.com/repos/twisted/twisted/issues/1336/events,https://github.com/twisted/twisted/pull/1336,650267198,MDExOlB1bGxSZXF1ZXN0NDQzNzkzOTQ1,1336,[mypy] [9892] Reduce mypy errors,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-03T00:22:52Z,2020-07-06T15:40:49Z,2020-07-06T15:40:45Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1336', 'html_url': 'https://github.com/twisted/twisted/pull/1336', 'diff_url': 'https://github.com/twisted/twisted/pull/1336.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1336.patch'}","https://twistedmatrix.com/trac/ticket/9892
This eliminates mypy errors such as:
```
src/twisted/protocols/ftp.py:786:21: error: Module has no attribute ""listenTCP"" [attr-defined]
listenFactory = reactor.listenTCP
^
src/twisted/protocols/ftp.py:2804:22: error: Module has no attribute ""connectTCP"" [attr-defined]
connectFactory = reactor.connectTCP
^
src/twisted/pair/tuntap.py:431:1: error: Cannot assign to a method [assignment]
TuntapPort.loseConnection = deprecated(
^
src/twisted/web/http.py:121:5: error: Cannot assign to a type [misc]
H2Connection = None
^
src/twisted/web/http.py:121:20: error: Incompatible types in assignment (expression has type ""None"", variable has type ""Type[H2Connection]"") [assignment]
H2Connection = None
^
src/twisted/web/http.py:1663:1: error: Cannot assign to a method [assignment]
Request.getClientIP = deprecated(
^
src/twisted/web/http.py:1668:1: error: Cannot assign to a method [assignment]
Request.noLongerQueued = deprecated(
^
src/twisted/web/http.py:3060:16: error: Incompatible types in assignment (expression has type ""Callable[[Any], Any]"", base class ""Factory"" defined the type as
""Optional[Type[Protocol]]"") [assignment]
protocol = _genericHTTPChannelProtocolFactory
^
```",
772,https://api.github.com/repos/twisted/twisted/issues/1335,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1335/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1335/comments,https://api.github.com/repos/twisted/twisted/issues/1335/events,https://github.com/twisted/twisted/pull/1335,650258487,MDExOlB1bGxSZXF1ZXN0NDQzNzg2ODg0,1335,[mypy] [9891] Reduce mypy errors,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-02T23:48:36Z,2020-07-03T16:31:33Z,2020-07-03T16:31:29Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1335', 'html_url': 'https://github.com/twisted/twisted/pull/1335', 'diff_url': 'https://github.com/twisted/twisted/pull/1335.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1335.patch'}","https://twistedmatrix.com/trac/ticket/9891
Clean up mypy errors such as:
```
+src/twisted/internet/tcp.py:1027:5: error: Signature of ""_FileDescriptorReservation"" incompatible with ""__exit__"" of supertype ""_IFileDescriptorReservation"" [override]
+ def __exit__(self, excValue, excType, traceback):
+ ^
+src/twisted/internet/tcp.py:1069:5: error: Signature of ""_NullFileDescriptorReservation"" incompatible with ""__exit__"" of supertype ""_IFileDescriptorReservation""
+[override]
+ def __exit__(self, excValue, excType, traceback):
+ ^
+src/twisted/internet/testing.py:871:5: error: Signature of ""RaisingMemoryReactor"" incompatible with ""adoptDatagramPort"" of supertype ""IReactorSocket"" [override]
+ def adoptDatagramPort(self, fileDescriptor, addressFamily, protocol,
+ ^
+src/twisted/internet/testing.py:880:5: error: Signature of ""RaisingMemoryReactor"" incompatible with ""adoptStreamConnection"" of supertype ""IReactorSocket"" [override]
+ def adoptStreamConnection(self):
+ ^
+src/twisted/test/stdio_test_halfclose.py:58:5: error: Signature of ""HalfCloseProtocol"" incompatible with ""writeConnectionLost"" of supertype ""IHalfCloseableProtocol""
+[override]
+ def writeConnectionLost(self, reason):
+ ^
+src/twisted/conch/scripts/cftp.py:40:21: error: Incompatible types in assignment (expression has type ""List[List[Union[str, int, None]]]"", base class ""ConchOptions""
+defined the type as ""List[List[Optional[str]]]"") [assignment]
+ optParameters = [
+ ^
+src/twisted/web/_auth/wrapper.py:243:5: error: Signature of ""HTTPAuthSessionWrapper"" incompatible with ""putChild"" of supertype ""IResource"" [override]
+ def putChild(self, child):
+ ^
+src/twisted/python/test/test_shellcomp.py:485:31: error: List item 1 has incompatible type ""None""; expected ""str"" [list-item]
+ optFlags = [['no-stalls', None,
+ ^
+src/twisted/mail/test/test_smtp.py:434:22: error: Argument 1 to ""append"" of ""list"" has incompatible type
+""Tuple[bytes, bytes, bytes, Tuple[bytes, Tuple[bytes, bytes, List[bytes], bytes]]]""; expected ""Tuple[bytes, bytes, None, None]"" [arg-type]
+ data.append((b'DATA\r\n', b'354.*\r\n',
+ ^
+src/twisted/conch/test/test_userauth.py:246:5: error: Signature of ""AnonymousChecker"" incompatible with ""requestAvatarId"" of supertype ""ICredentialsChecker"" [override]
+ def requestAvatarId(credentials):
+ ^
+src/twisted/internet/test/test_tcp.py:462:5: error: Signature of ""FakeResolver"" incompatible with ""getHostByName"" of supertype ""IResolverSimple"" [override]
+ def getHostByName(self, name, timeout):
+ ^
```",
773,https://api.github.com/repos/twisted/twisted/issues/1334,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1334/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1334/comments,https://api.github.com/repos/twisted/twisted/issues/1334/events,https://github.com/twisted/twisted/pull/1334,650257050,MDExOlB1bGxSZXF1ZXN0NDQzNzg1NzEw,1334,[mypy] [9890] Reduce mypy errors,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-02T23:42:42Z,2020-07-03T15:52:08Z,2020-07-03T15:52:04Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1334', 'html_url': 'https://github.com/twisted/twisted/pull/1334', 'diff_url': 'https://github.com/twisted/twisted/pull/1334.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1334.patch'}","https://twistedmatrix.com/trac/ticket/9890
Eliminate mypy errors such as:
```
src/twisted/pair/rawudp.py:41:5: error: Signature of ""RawUDPProtocol"" incompatible with ""datagramReceived"" of supertype ""IRawDatagramProtocol"" [override]
def datagramReceived(self,
^
src/twisted/pair/ip.py:49:5: error: Signature of ""IPProtocol"" incompatible with ""datagramReceived"" of supertype ""IRawPacketProtocol"" [override]
def datagramReceived(self,
^
src/twisted/pair/test/test_tuntap.py:1343:5: error: Signature of ""IPRecordingProtocol"" incompatible with ""datagramReceived"" of supertype ""IRawPacketProtocol"" [override]
def datagramReceived(self, datagram, partial=False):
^
src/twisted/pair/test/test_tuntap.py:1358:24: error: Incompatible types in assignment (expression has type ""Type[IPRecordingProtocol]"", variable has type
src/twisted/pair/test/test_tuntap.py:1381:24: error: Incompatible types in assignment (expression has type ""Type[EthernetRecordingProtocol]"", variable has type
src/twisted/pair/test/test_ip.py:16:5: error: Signature of ""MyProtocol"" incompatible with ""datagramReceived"" of supertype ""IRawDatagramProtocol"" [override]
def datagramReceived(self, data, **kw):
^
src/twisted/pair/test/test_ethernet.py:22:5: error: Signature of ""MyProtocol"" incompatible with ""datagramReceived"" of supertype ""IRawPacketProtocol"" [override]
def datagramReceived(self, data, **kw):
^
```",
774,https://api.github.com/repos/twisted/twisted/issues/1333,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1333/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1333/comments,https://api.github.com/repos/twisted/twisted/issues/1333/events,https://github.com/twisted/twisted/pull/1333,650248705,MDExOlB1bGxSZXF1ZXN0NDQzNzc4ODE3,1333,[mypy] [9889] Reduce mypy errors,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-07-02T23:12:29Z,2020-07-08T20:19:18Z,2020-07-08T20:19:14Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1333', 'html_url': 'https://github.com/twisted/twisted/pull/1333', 'diff_url': 'https://github.com/twisted/twisted/pull/1333.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1333.patch'}",https://twistedmatrix.com/trac/ticket/9889,
775,https://api.github.com/repos/twisted/twisted/issues/1332,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1332/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1332/comments,https://api.github.com/repos/twisted/twisted/issues/1332/events,https://github.com/twisted/twisted/pull/1332,649970951,MDExOlB1bGxSZXF1ZXN0NDQzNTUwMTUx,1332,9887 - twisted.web.twcgi can now handle url parameters in python 3,"{'login': 'ndg63276', 'id': 24956497, 'node_id': 'MDQ6VXNlcjI0OTU2NDk3', 'avatar_url': 'https://avatars0.githubusercontent.com/u/24956497?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ndg63276', 'html_url': 'https://github.com/ndg63276', 'followers_url': 'https://api.github.com/users/ndg63276/followers', 'following_url': 'https://api.github.com/users/ndg63276/following{/other_user}', 'gists_url': 'https://api.github.com/users/ndg63276/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ndg63276/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ndg63276/subscriptions', 'organizations_url': 'https://api.github.com/users/ndg63276/orgs', 'repos_url': 'https://api.github.com/users/ndg63276/repos', 'events_url': 'https://api.github.com/users/ndg63276/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ndg63276/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-07-02T14:22:24Z,2020-07-06T08:33:37Z,2020-07-04T23:08:00Z,NONE,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1332', 'html_url': 'https://github.com/twisted/twisted/pull/1332', 'diff_url': 'https://github.com/twisted/twisted/pull/1332.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1332.patch'}","## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9887
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
776,https://api.github.com/repos/twisted/twisted/issues/1331,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1331/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1331/comments,https://api.github.com/repos/twisted/twisted/issues/1331/events,https://github.com/twisted/twisted/pull/1331,649395211,MDExOlB1bGxSZXF1ZXN0NDQzMDU0NzE2,1331,[9781] Change some http:// links to https://,"{'login': 'twm', 'id': 43662, 'node_id': 'MDQ6VXNlcjQzNjYy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/43662?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/twm', 'html_url': 'https://github.com/twm', 'followers_url': 'https://api.github.com/users/twm/followers', 'following_url': 'https://api.github.com/users/twm/following{/other_user}', 'gists_url': 'https://api.github.com/users/twm/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/twm/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/twm/subscriptions', 'organizations_url': 'https://api.github.com/users/twm/orgs', 'repos_url': 'https://api.github.com/users/twm/repos', 'events_url': 'https://api.github.com/users/twm/events{/privacy}', 'received_events_url': 'https://api.github.com/users/twm/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-07-01T23:18:26Z,2020-07-03T04:00:38Z,2020-07-03T04:00:34Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1331', 'html_url': 'https://github.com/twisted/twisted/pull/1331', 'diff_url': 'https://github.com/twisted/twisted/pull/1331.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1331.patch'}","I've tried to keep this purely mechanical to keep it easy to review. I'll follow a follow-up ticket to fix more once this is in.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9781
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests. (N/A)
* [ ] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
777,https://api.github.com/repos/twisted/twisted/issues/1330,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1330/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1330/comments,https://api.github.com/repos/twisted/twisted/issues/1330/events,https://github.com/twisted/twisted/pull/1330,648680819,MDExOlB1bGxSZXF1ZXN0NDQyNDQ4NDU4,1330,[mypy] [9886] Reduce mypy errors in styles.py,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-01T05:20:27Z,2020-07-02T14:46:39Z,2020-07-02T14:46:25Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1330', 'html_url': 'https://github.com/twisted/twisted/pull/1330', 'diff_url': 'https://github.com/twisted/twisted/pull/1330.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1330.patch'}","https://twistedmatrix.com/trac/ticket/9886
Eliminate mypy errors:
```
src/twisted/persisted/styles.py:87:49: error: Argument 3 to ""pickle"" has incompatible type ""Callable[[Any, Any, Any], Any]""; expected
""Optional[Callable[[Union[Tuple[Callable[..., Type[MethodType]], Tuple[Any, ...]], Tuple[Callable[..., Type[MethodType]], Tuple[Any, ...], Optional[Any]]]], Type[MethodType]]]"" [arg-type]
copy_reg.pickle(types.MethodType, pickleMethod, unpickleMethod)
^
src/twisted/persisted/styles.py:231:48: error: Argument 3 to ""pickle"" has incompatible type ""Callable[[Any, Any], Any]""; expected
""Optional[Callable[[Union[Tuple[Callable[..., Any], Tuple[Any, ...]], Tuple[Callable[..., Any], Tuple[Any, ...], Optional[Any]]]], Any]]"" [arg-type]
copy_reg.pickle(OutputType, pickleStringO, unpickleStringO)
^
src/twisted/persisted/styles.py:232:47: error: Argument 3 to ""pickle"" has incompatible type ""Callable[[Any, Any], Any]""; expected
""Optional[Callable[[Union[Tuple[Callable[..., Any], Tuple[Any, ...]], Tuple[Callable[..., Any], Tuple[Any, ...], Optional[Any]]]], Any]]"" [arg-type]
copy_reg.pickle(InputType, pickleStringI, unpickleStringI)
```
",
778,https://api.github.com/repos/twisted/twisted/issues/1329,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1329/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1329/comments,https://api.github.com/repos/twisted/twisted/issues/1329/events,https://github.com/twisted/twisted/pull/1329,648575997,MDExOlB1bGxSZXF1ZXN0NDQyMzYzNzYw,1329,"[mypy] [9884] Introduce an _IWaker interface, reduce mypy errors","{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-01T00:04:11Z,2020-07-04T06:48:47Z,2020-07-04T06:48:41Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1329', 'html_url': 'https://github.com/twisted/twisted/pull/1329', 'diff_url': 'https://github.com/twisted/twisted/pull/1329.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1329.patch'}","https://twistedmatrix.com/trac/ticket/9884
This cleans up these mypy errors:
```
src/twisted/internet/posixbase.py:195:5: error: Cannot assign multiple types to name ""_Waker"" without an explicit ""Type[...]"" annotation [misc]
src/twisted/internet/posixbase.py:195:14: error: Incompatible types in assignment (expression has type ""Type[_SocketWaker]"", variable has type ""Type[_UnixWaker]"") [assignment]
src/twisted/internet/cfreactor.py:47:18: error: Variable ""twisted.internet.posixbase._Waker"" is not valid as a type [valid-type]
src/twisted/internet/cfreactor.py:47:18: note: See https://mypy.readthedocs.io/en/latest/common_issues.html#variables-vs-type-aliases
src/twisted/internet/cfreactor.py:47:18: error: Invalid base class ""_Waker"" [misc]
```",
779,https://api.github.com/repos/twisted/twisted/issues/1328,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1328/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1328/comments,https://api.github.com/repos/twisted/twisted/issues/1328/events,https://github.com/twisted/twisted/pull/1328,648525518,MDExOlB1bGxSZXF1ZXN0NDQyMzIxMDQ4,1328,[mypy] [9883] Reduce mypy errors,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-30T22:05:01Z,2020-07-01T04:33:40Z,2020-07-01T04:33:36Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1328', 'html_url': 'https://github.com/twisted/twisted/pull/1328', 'diff_url': 'https://github.com/twisted/twisted/pull/1328.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1328.patch'}",https://twistedmatrix.com/trac/ticket/9883,
780,https://api.github.com/repos/twisted/twisted/issues/1327,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1327/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1327/comments,https://api.github.com/repos/twisted/twisted/issues/1327/events,https://github.com/twisted/twisted/pull/1327,648465391,MDExOlB1bGxSZXF1ZXN0NDQyMjcwNjM0,1327,[mypy] [9882] Reduce mypy errors,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-30T20:18:47Z,2020-07-06T14:24:27Z,2020-07-06T14:24:22Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1327', 'html_url': 'https://github.com/twisted/twisted/pull/1327', 'diff_url': 'https://github.com/twisted/twisted/pull/1327.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1327.patch'}","https://twistedmatrix.com/trac/ticket/9882
Clean up mypy errors:
```
src/twisted/protocols/amp.py:236:16: error: Module has no attribute ""supported"" [attr-defined]
src/twisted/protocols/amp.py:1236:1: error: Cannot assign to a type [misc]
src/twisted/protocols/amp.py:1236:18: error: Incompatible types in assignment (expression has type ""__metaclass__"", variable has type ""Type[CommandLocator]"") [assignment]
src/twisted/protocols/amp.py:1236:18: note: ""__metaclass__.__call__"" has type ""Callable[[VarArg(Any), KwArg(Any)], Any]""
src/twisted/protocols/amp.py:1825:19: error: Incompatible types in assignment (expression has type ""Type[AmpBox]"", variable has type ""Type[Command]"") [assignment]
src/twisted/protocols/amp.py:2010:1: error: Cannot assign to a type [misc]
src/twisted/protocols/amp.py:2010:11: error: Incompatible types in assignment (expression has type ""__metaclass__"", variable has type ""Type[Command]"") [assignment]
src/twisted/protocols/amp.py:2010:11: note: ""__metaclass__.__call__"" has type ""Callable[[VarArg(Any), KwArg(Any)], Any]""
src/twisted/protocols/amp.py:2080:5: error: Self argument missing for a non-static method (or an invalid type for self) [misc]
```",
781,https://api.github.com/repos/twisted/twisted/issues/1326,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1326/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1326/comments,https://api.github.com/repos/twisted/twisted/issues/1326/events,https://github.com/twisted/twisted/pull/1326,647791496,MDExOlB1bGxSZXF1ZXN0NDQxNzM3NDYw,1326,[mypy] [9881] Remove twisted.python.filepath.FilePath.statinfo,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-30T02:00:50Z,2020-06-30T14:45:56Z,2020-06-30T14:45:52Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1326', 'html_url': 'https://github.com/twisted/twisted/pull/1326', 'diff_url': 'https://github.com/twisted/twisted/pull/1326.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1326.patch'}","https://twistedmatrix.com/trac/ticket/9881
Remove `twisted.python.filepath.FilePath.statinfo` which has been deprecated since Twisted 15.0.0
This eliminates some mypy errors as well.",
782,https://api.github.com/repos/twisted/twisted/issues/1325,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1325/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1325/comments,https://api.github.com/repos/twisted/twisted/issues/1325/events,https://github.com/twisted/twisted/pull/1325,647696657,MDExOlB1bGxSZXF1ZXN0NDQxNjY5MTc2,1325,[mypy] [9880] Reduce mypy errors,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-06-29T21:54:13Z,2020-07-10T00:48:13Z,2020-07-10T00:48:09Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1325', 'html_url': 'https://github.com/twisted/twisted/pull/1325', 'diff_url': 'https://github.com/twisted/twisted/pull/1325.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1325.patch'}",https://twistedmatrix.com/trac/ticket/9880,
783,https://api.github.com/repos/twisted/twisted/issues/1324,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1324/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1324/comments,https://api.github.com/repos/twisted/twisted/issues/1324/events,https://github.com/twisted/twisted/pull/1324,647078801,MDExOlB1bGxSZXF1ZXN0NDQxMTY5OTI1,1324,[mypy] [9879] Reduce mypy errors,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-29T03:10:33Z,2020-06-29T18:11:37Z,2020-06-29T18:11:33Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1324', 'html_url': 'https://github.com/twisted/twisted/pull/1324', 'diff_url': 'https://github.com/twisted/twisted/pull/1324.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1324.patch'}",https://twistedmatrix.com/trac/ticket/9879,
784,https://api.github.com/repos/twisted/twisted/issues/1323,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1323/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1323/comments,https://api.github.com/repos/twisted/twisted/issues/1323/events,https://github.com/twisted/twisted/pull/1323,647071745,MDExOlB1bGxSZXF1ZXN0NDQxMTY0ODk5,1323,[mypy] [9878] Reduce mypy errors,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-29T02:47:18Z,2020-06-29T17:05:10Z,2020-06-29T17:05:05Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1323', 'html_url': 'https://github.com/twisted/twisted/pull/1323', 'diff_url': 'https://github.com/twisted/twisted/pull/1323.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1323.patch'}",https://twistedmatrix.com/trac/ticket/9878,
785,https://api.github.com/repos/twisted/twisted/issues/1322,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1322/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1322/comments,https://api.github.com/repos/twisted/twisted/issues/1322/events,https://github.com/twisted/twisted/pull/1322,647067873,MDExOlB1bGxSZXF1ZXN0NDQxMTYxNzkw,1322,[mypy] [9877] Reduce mypy errors,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-29T02:34:38Z,2020-06-29T23:41:49Z,2020-06-29T23:41:46Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1322', 'html_url': 'https://github.com/twisted/twisted/pull/1322', 'diff_url': 'https://github.com/twisted/twisted/pull/1322.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1322.patch'}",https://twistedmatrix.com/trac/ticket/9877,
786,https://api.github.com/repos/twisted/twisted/issues/1321,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1321/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1321/comments,https://api.github.com/repos/twisted/twisted/issues/1321/events,https://github.com/twisted/twisted/pull/1321,647052537,MDExOlB1bGxSZXF1ZXN0NDQxMTUwMDEw,1321,[mypy] [9876] Reduce mypy errors,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-29T01:34:16Z,2020-06-30T18:37:07Z,2020-06-30T18:37:04Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1321', 'html_url': 'https://github.com/twisted/twisted/pull/1321', 'diff_url': 'https://github.com/twisted/twisted/pull/1321.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1321.patch'}",https://twistedmatrix.com/trac/ticket/9876,
787,https://api.github.com/repos/twisted/twisted/issues/1320,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1320/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1320/comments,https://api.github.com/repos/twisted/twisted/issues/1320/events,https://github.com/twisted/twisted/pull/1320,646976376,MDExOlB1bGxSZXF1ZXN0NDQxMDkyOTEz,1320,Add EOR (End of Record) command (RFC885),"{'login': 'NimVek', 'id': 6333118, 'node_id': 'MDQ6VXNlcjYzMzMxMTg=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/6333118?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/NimVek', 'html_url': 'https://github.com/NimVek', 'followers_url': 'https://api.github.com/users/NimVek/followers', 'following_url': 'https://api.github.com/users/NimVek/following{/other_user}', 'gists_url': 'https://api.github.com/users/NimVek/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/NimVek/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/NimVek/subscriptions', 'organizations_url': 'https://api.github.com/users/NimVek/orgs', 'repos_url': 'https://api.github.com/users/NimVek/repos', 'events_url': 'https://api.github.com/users/NimVek/events{/privacy}', 'received_events_url': 'https://api.github.com/users/NimVek/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-06-28T18:06:30Z,2020-07-03T10:04:01Z,2020-07-03T10:04:00Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1320', 'html_url': 'https://github.com/twisted/twisted/pull/1320', 'diff_url': 'https://github.com/twisted/twisted/pull/1320.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1320.patch'}","## Contributor Checklist:
* [X] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9875
* [ ] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [ ] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [ ] I have updated the automated tests.
* [ ] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
788,https://api.github.com/repos/twisted/twisted/issues/1319,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1319/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1319/comments,https://api.github.com/repos/twisted/twisted/issues/1319/events,https://github.com/twisted/twisted/pull/1319,646042182,MDExOlB1bGxSZXF1ZXN0NDQwNDA3NzQ2,1319,9874 mthuurne missing docstring field names,"{'login': 'mthuurne', 'id': 246676, 'node_id': 'MDQ6VXNlcjI0NjY3Ng==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/246676?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mthuurne', 'html_url': 'https://github.com/mthuurne', 'followers_url': 'https://api.github.com/users/mthuurne/followers', 'following_url': 'https://api.github.com/users/mthuurne/following{/other_user}', 'gists_url': 'https://api.github.com/users/mthuurne/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mthuurne/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mthuurne/subscriptions', 'organizations_url': 'https://api.github.com/users/mthuurne/orgs', 'repos_url': 'https://api.github.com/users/mthuurne/repos', 'events_url': 'https://api.github.com/users/mthuurne/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mthuurne/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-26T06:32:27Z,2020-06-28T00:05:13Z,2020-06-28T00:05:08Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1319', 'html_url': 'https://github.com/twisted/twisted/pull/1319', 'diff_url': 'https://github.com/twisted/twisted/pull/1319.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1319.patch'}","## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9874
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] ~~I have updated the automated tests.~~ Only docstrings were changed.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
789,https://api.github.com/repos/twisted/twisted/issues/1318,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1318/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1318/comments,https://api.github.com/repos/twisted/twisted/issues/1318/events,https://github.com/twisted/twisted/pull/1318,643724465,MDExOlB1bGxSZXF1ZXN0NDM4NDc2NTQ2,1318,Fix docstring cross-references,"{'login': 'mthuurne', 'id': 246676, 'node_id': 'MDQ6VXNlcjI0NjY3Ng==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/246676?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mthuurne', 'html_url': 'https://github.com/mthuurne', 'followers_url': 'https://api.github.com/users/mthuurne/followers', 'following_url': 'https://api.github.com/users/mthuurne/following{/other_user}', 'gists_url': 'https://api.github.com/users/mthuurne/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mthuurne/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mthuurne/subscriptions', 'organizations_url': 'https://api.github.com/users/mthuurne/orgs', 'repos_url': 'https://api.github.com/users/mthuurne/repos', 'events_url': 'https://api.github.com/users/mthuurne/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mthuurne/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-06-23T10:29:10Z,2020-06-25T07:54:01Z,2020-06-24T05:18:20Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1318', 'html_url': 'https://github.com/twisted/twisted/pull/1318', 'diff_url': 'https://github.com/twisted/twisted/pull/1318.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1318.patch'}","## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9873
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] ~~I have updated the automated tests.~~ Only docstrings were changed.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
790,https://api.github.com/repos/twisted/twisted/issues/1317,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1317/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1317/comments,https://api.github.com/repos/twisted/twisted/issues/1317/events,https://github.com/twisted/twisted/pull/1317,643430152,MDExOlB1bGxSZXF1ZXN0NDM4MjM1MTE5,1317,[mypy] Add lint and mypy instructions to README.rst,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-22T23:53:57Z,2020-06-23T22:27:29Z,2020-06-23T22:27:26Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1317', 'html_url': 'https://github.com/twisted/twisted/pull/1317', 'diff_url': 'https://github.com/twisted/twisted/pull/1317.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1317.patch'}",https://twistedmatrix.com/trac/ticket/9872,
791,https://api.github.com/repos/twisted/twisted/issues/1316,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1316/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1316/comments,https://api.github.com/repos/twisted/twisted/issues/1316/events,https://github.com/twisted/twisted/pull/1316,642828380,MDExOlB1bGxSZXF1ZXN0NDM3NzQxODE0,1316,[mypy] [9871] Add some variable annotations,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-22T07:29:50Z,2020-06-29T16:29:08Z,2020-06-29T16:29:04Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1316', 'html_url': 'https://github.com/twisted/twisted/pull/1316', 'diff_url': 'https://github.com/twisted/twisted/pull/1316.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1316.patch'}","https://twistedmatrix.com/trac/ticket/9871
This adds annotations to some variables to reduce mypy errors.",
792,https://api.github.com/repos/twisted/twisted/issues/1315,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1315/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1315/comments,https://api.github.com/repos/twisted/twisted/issues/1315/events,https://github.com/twisted/twisted/pull/1315,642811618,MDExOlB1bGxSZXF1ZXN0NDM3NzI4MDA2,1315,[mypy] Add some variable annotations,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-22T06:59:04Z,2020-06-22T23:10:21Z,2020-06-22T23:10:17Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1315', 'html_url': 'https://github.com/twisted/twisted/pull/1315', 'diff_url': 'https://github.com/twisted/twisted/pull/1315.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1315.patch'}","https://twistedmatrix.com/trac/ticket/9870
This adds some annotations to reduce mypy errors.",
793,https://api.github.com/repos/twisted/twisted/issues/1314,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1314/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1314/comments,https://api.github.com/repos/twisted/twisted/issues/1314/events,https://github.com/twisted/twisted/pull/1314,642805581,MDExOlB1bGxSZXF1ZXN0NDM3NzIzMzEw,1314,[mypy] Add some variable annotations,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-22T06:47:48Z,2020-06-22T19:16:48Z,2020-06-22T19:16:44Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1314', 'html_url': 'https://github.com/twisted/twisted/pull/1314', 'diff_url': 'https://github.com/twisted/twisted/pull/1314.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1314.patch'}","https://twistedmatrix.com/trac/ticket/9869
This adds type annotations in a few places to reduce mypy errors.",
794,https://api.github.com/repos/twisted/twisted/issues/1313,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1313/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1313/comments,https://api.github.com/repos/twisted/twisted/issues/1313/events,https://github.com/twisted/twisted/pull/1313,642802483,MDExOlB1bGxSZXF1ZXN0NDM3NzIwOTI0,1313,[mypy] Add some variable annotations,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-22T06:41:53Z,2020-06-22T21:42:32Z,2020-06-22T21:42:29Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1313', 'html_url': 'https://github.com/twisted/twisted/pull/1313', 'diff_url': 'https://github.com/twisted/twisted/pull/1313.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1313.patch'}","https://twistedmatrix.com/trac/ticket/9867
Add some variable annotations to reduce mypy warnings",
795,https://api.github.com/repos/twisted/twisted/issues/1312,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1312/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1312/comments,https://api.github.com/repos/twisted/twisted/issues/1312/events,https://github.com/twisted/twisted/pull/1312,642618280,MDExOlB1bGxSZXF1ZXN0NDM3NTg0Mjkz,1312,Fix docstring syntax errors,"{'login': 'mthuurne', 'id': 246676, 'node_id': 'MDQ6VXNlcjI0NjY3Ng==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/246676?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mthuurne', 'html_url': 'https://github.com/mthuurne', 'followers_url': 'https://api.github.com/users/mthuurne/followers', 'following_url': 'https://api.github.com/users/mthuurne/following{/other_user}', 'gists_url': 'https://api.github.com/users/mthuurne/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mthuurne/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mthuurne/subscriptions', 'organizations_url': 'https://api.github.com/users/mthuurne/orgs', 'repos_url': 'https://api.github.com/users/mthuurne/repos', 'events_url': 'https://api.github.com/users/mthuurne/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mthuurne/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,5,2020-06-21T18:43:19Z,2020-06-22T07:31:36Z,2020-06-22T07:03:07Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1312', 'html_url': 'https://github.com/twisted/twisted/pull/1312', 'diff_url': 'https://github.com/twisted/twisted/pull/1312.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1312.patch'}","This removes some noise from the pydoctor logging, so actual problems will stand out more.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9868
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] ~~I have updated the automated tests.~~ Only docstrings are changed.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
796,https://api.github.com/repos/twisted/twisted/issues/1311,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1311/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1311/comments,https://api.github.com/repos/twisted/twisted/issues/1311/events,https://github.com/twisted/twisted/pull/1311,642544606,MDExOlB1bGxSZXF1ZXN0NDM3NTMxNzAw,1311,[mypy] Change delimiter to bytes in irc.py,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-21T11:25:48Z,2020-06-22T19:52:44Z,2020-06-22T19:52:43Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1311', 'html_url': 'https://github.com/twisted/twisted/pull/1311', 'diff_url': 'https://github.com/twisted/twisted/pull/1311.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1311.patch'}","https://twistedmatrix.com/trac/ticket/9866
This PR cleans up this error:
```
src/twisted/words/protocols/irc.py:2920:17: error: Incompatible types in assignment (expression has type ""str"", base class ""LineReceiver"" defined the type as ""bytes"") [assignment]
```",
797,https://api.github.com/repos/twisted/twisted/issues/1310,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1310/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1310/comments,https://api.github.com/repos/twisted/twisted/issues/1310/events,https://github.com/twisted/twisted/pull/1310,642541870,MDExOlB1bGxSZXF1ZXN0NDM3NTI5NzMw,1310,[mypy] cannot infer type of lambda,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-06-21T11:06:46Z,2020-06-23T22:32:25Z,2020-06-23T20:14:32Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1310', 'html_url': 'https://github.com/twisted/twisted/pull/1310', 'diff_url': 'https://github.com/twisted/twisted/pull/1310.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1310.patch'}","https://twistedmatrix.com/trac/ticket/9865
This cleans up this mypy error:
```
src/twisted/test/test_policies.py:360:16: error: Cannot infer type of lambda [misc]
```",
798,https://api.github.com/repos/twisted/twisted/issues/1309,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1309/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1309/comments,https://api.github.com/repos/twisted/twisted/issues/1309/events,https://github.com/twisted/twisted/pull/1309,642540764,MDExOlB1bGxSZXF1ZXN0NDM3NTI4OTIz,1309,[mypy] Change type of variable to bool to match base class,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-21T10:58:50Z,2020-06-21T18:44:51Z,2020-06-21T18:44:46Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1309', 'html_url': 'https://github.com/twisted/twisted/pull/1309', 'diff_url': 'https://github.com/twisted/twisted/pull/1309.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1309.patch'}","https://twistedmatrix.com/trac/ticket/9864
In a few places there are errors like this:
```
src/twisted/conch/scripts/tkconch.py:353:13: error: Incompatible types in assignment (expression has type ""int"", base class ""Factory"" defined the type as ""bool"") [assignment]
```
Where in a subclass, a variable assignment does not match the type of the variable specified in the base class.
This PR cleans some of those up.",
799,https://api.github.com/repos/twisted/twisted/issues/1308,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1308/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1308/comments,https://api.github.com/repos/twisted/twisted/issues/1308/events,https://github.com/twisted/twisted/pull/1308,642539485,MDExOlB1bGxSZXF1ZXN0NDM3NTI3OTk1,1308,[mypy] Rename some variables which collide with other variables,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-21T10:48:51Z,2020-06-21T19:42:18Z,2020-06-21T19:42:14Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1308', 'html_url': 'https://github.com/twisted/twisted/pull/1308', 'diff_url': 'https://github.com/twisted/twisted/pull/1308.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1308.patch'}","https://twistedmatrix.com/trac/ticket/9863
In src/twisted/conch/scripts/conch.py , this line:
```
# Rest of code in ""run""
options = None
```
causes mypy to complain with:
```
src/twisted/conch/scripts/conch.py:105:11: error: Incompatible types in assignment (expression has type ""None"", variable has type Module) [assignment]
```
This PR cleans up a few errors similar to that.",
800,https://api.github.com/repos/twisted/twisted/issues/1307,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1307/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1307/comments,https://api.github.com/repos/twisted/twisted/issues/1307/events,https://github.com/twisted/twisted/pull/1307,642537811,MDExOlB1bGxSZXF1ZXN0NDM3NTI2ODE3,1307,[mypy] suppress errors after ImportError,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-21T10:36:00Z,2020-06-23T16:13:25Z,2020-06-23T16:13:21Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1307', 'html_url': 'https://github.com/twisted/twisted/pull/1307', 'diff_url': 'https://github.com/twisted/twisted/pull/1307.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1307.patch'}","https://twistedmatrix.com/trac/ticket/9862
In cases where an import can fail, such as:
```
try:
from twisted.internet.stdio import StandardIO, PipeAddress
except ImportError:
# fallback if pywin32 is not installed
StandardIO = None
PipeAddress = None
```
mypy will fail with:
```
src/twisted/internet/endpoints.py:45:5: error: Cannot assign multiple types to name ""StandardIO"" without an explicit ""Type[...]"" annotation [misc]
src/twisted/internet/endpoints.py:45:18: error: Incompatible types in assignment (expression has type ""None"", variable has type ""Type[StandardIO]"") [assignment]
```
This PR cleans up those errors.
",
801,https://api.github.com/repos/twisted/twisted/issues/1306,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1306/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1306/comments,https://api.github.com/repos/twisted/twisted/issues/1306/events,https://github.com/twisted/twisted/pull/1306,642535798,MDExOlB1bGxSZXF1ZXN0NDM3NTI1MzU5,1306,[mypy] [9861] Tell mypy to ignore classes which derive from dynamic base classes,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-06-21T10:21:35Z,2020-07-01T03:54:36Z,2020-07-01T03:54:32Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1306', 'html_url': 'https://github.com/twisted/twisted/pull/1306', 'diff_url': 'https://github.com/twisted/twisted/pull/1306.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1306.patch'}","https://twistedmatrix.com/trac/ticket/9861
mypy complains if it cannot figure what a base class is. For example:
```
src/twisted/_threads/test/test_team.py:17:24: error: Unsupported dynamic base class ""proxyForInterface"" [misc]
```
This PR quietens those errors.
",
802,https://api.github.com/repos/twisted/twisted/issues/1305,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1305/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1305/comments,https://api.github.com/repos/twisted/twisted/issues/1305/events,https://github.com/twisted/twisted/pull/1305,642511590,MDExOlB1bGxSZXF1ZXN0NDM3NTA3ODU0,1305,[DO NOT MERGE] PR for testing windows encoding problems,"{'login': 'mgorny', 'id': 110765, 'node_id': 'MDQ6VXNlcjExMDc2NQ==', 'avatar_url': 'https://avatars1.githubusercontent.com/u/110765?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mgorny', 'html_url': 'https://github.com/mgorny', 'followers_url': 'https://api.github.com/users/mgorny/followers', 'following_url': 'https://api.github.com/users/mgorny/following{/other_user}', 'gists_url': 'https://api.github.com/users/mgorny/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mgorny/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mgorny/subscriptions', 'organizations_url': 'https://api.github.com/users/mgorny/orgs', 'repos_url': 'https://api.github.com/users/mgorny/repos', 'events_url': 'https://api.github.com/users/mgorny/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mgorny/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,12,2020-06-21T07:22:54Z,2020-08-03T18:27:46Z,2020-08-03T18:27:46Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1305', 'html_url': 'https://github.com/twisted/twisted/pull/1305', 'diff_url': 'https://github.com/twisted/twisted/pull/1305.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1305.patch'}","Followup for https://github.com/twisted/twisted/pull/1278#issuecomment-647051463
CC @rodrigc ",
803,https://api.github.com/repos/twisted/twisted/issues/1304,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1304/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1304/comments,https://api.github.com/repos/twisted/twisted/issues/1304/events,https://github.com/twisted/twisted/pull/1304,642445417,MDExOlB1bGxSZXF1ZXN0NDM3NDYwMzg0,1304,Replace base64.*string() functions to fix py3.9 support,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-20T21:04:44Z,2020-06-20T22:03:16Z,2020-06-20T22:03:11Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1304', 'html_url': 'https://github.com/twisted/twisted/pull/1304', 'diff_url': 'https://github.com/twisted/twisted/pull/1304.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1304.patch'}","This is a resubmission of https://github.com/twisted/twisted/pull/1275 under my ID, to work around issues with non-ASCII characters in Michał Górny's.",
804,https://api.github.com/repos/twisted/twisted/issues/1303,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1303/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1303/comments,https://api.github.com/repos/twisted/twisted/issues/1303/events,https://github.com/twisted/twisted/pull/1303,642437778,MDExOlB1bGxSZXF1ZXN0NDM3NDU0OTM0,1303,Use xml.etree.ElementTree instead of deprecated cElementTree,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-20T20:07:09Z,2020-06-20T20:34:48Z,2020-06-20T20:34:44Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1303', 'html_url': 'https://github.com/twisted/twisted/pull/1303', 'diff_url': 'https://github.com/twisted/twisted/pull/1303.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1303.patch'}","This is a resubmission of https://github.com/twisted/twisted/pull/1278
using my name, to work around Unicode issues when submitted by Michał Górny (mgorny), who has non-ASCII characters in his name. (!!)",
805,https://api.github.com/repos/twisted/twisted/issues/1302,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1302/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1302/comments,https://api.github.com/repos/twisted/twisted/issues/1302/events,https://github.com/twisted/twisted/pull/1302,642424183,MDExOlB1bGxSZXF1ZXN0NDM3NDQ1Mzg2,1302,Fix Win32UnicodeEnvironmentTests.test_encodableUnicodeEnvironment for Azure pipelines,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,9,2020-06-20T18:31:32Z,2020-08-06T00:28:46Z,2020-08-03T18:27:43Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1302', 'html_url': 'https://github.com/twisted/twisted/pull/1302', 'diff_url': 'https://github.com/twisted/twisted/pull/1302.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1302.patch'}","https://twistedmatrix.com/trac/ticket/9858
@mgorny helped me debug this under this PR: https://github.com/twisted/twisted/pull/1305
When mgorny does a pull request from his GitHub ID, they following environment variable is set on Azure pipelines:
```
BUILD_SOURCEVERSIONAUTHOR Michał Górny
```
That triggered a codepath which caused the CI to fail on Windows, even if he did trivial changes like only changing whitespace.
This patch fixes the problem. I also added another test, putting an environment variable similar to Michał's name.",
806,https://api.github.com/repos/twisted/twisted/issues/1301,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1301/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1301/comments,https://api.github.com/repos/twisted/twisted/issues/1301/events,https://github.com/twisted/twisted/pull/1301,642359797,MDExOlB1bGxSZXF1ZXN0NDM3NDAxMDMx,1301,Fix imap4-utf-7 codec lookup function for Python 3.9,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-20T11:30:15Z,2020-06-20T16:21:32Z,2020-06-20T16:11:44Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1301', 'html_url': 'https://github.com/twisted/twisted/pull/1301', 'diff_url': 'https://github.com/twisted/twisted/pull/1301.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1301.patch'}","https://twistedmatrix.com/trac/ticket/9832
Python 3.9 normalizes the codec name into 'imap4_utf_7' rather than
'imap4-utf-7', and therefore the lookup function needs to account
for the former name. Transform the latter locally to preserve support
for all Python versions.
Submitted by: Michal Gorny
",
807,https://api.github.com/repos/twisted/twisted/issues/1300,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1300/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1300/comments,https://api.github.com/repos/twisted/twisted/issues/1300/events,https://github.com/twisted/twisted/pull/1300,642292893,MDExOlB1bGxSZXF1ZXN0NDM3MzU0MTg3,1300,"[mypy] Use @property, @staticmethod, @skipIf decorators","{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-20T02:44:43Z,2020-06-20T09:06:46Z,2020-06-20T09:06:41Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1300', 'html_url': 'https://github.com/twisted/twisted/pull/1300', 'diff_url': 'https://github.com/twisted/twisted/pull/1300.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1300.patch'}","https://twistedmatrix.com/trac/ticket/9857
Use @property, @staticmethod, @skipIf decorators to reduce mypy errors.",
808,https://api.github.com/repos/twisted/twisted/issues/1299,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1299/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1299/comments,https://api.github.com/repos/twisted/twisted/issues/1299/events,https://github.com/twisted/twisted/pull/1299,642230528,MDExOlB1bGxSZXF1ZXN0NDM3MzA1ODU2,1299,[mypy] _newtls.ConnectionMixin does not fully implement ITLSTransport interface,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-19T21:40:02Z,2020-06-20T06:36:18Z,2020-06-20T06:36:15Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1299', 'html_url': 'https://github.com/twisted/twisted/pull/1299', 'diff_url': 'https://github.com/twisted/twisted/pull/1299.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1299.patch'}","https://twistedmatrix.com/trac/ticket/9856
",
809,https://api.github.com/repos/twisted/twisted/issues/1298,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1298/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1298/comments,https://api.github.com/repos/twisted/twisted/issues/1298/events,https://github.com/twisted/twisted/pull/1298,641765850,MDExOlB1bGxSZXF1ZXN0NDM2OTM3OTMx,1298,[mypy] Implement some functions defined in zope interfaces,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-19T07:25:01Z,2020-06-21T03:54:49Z,2020-06-21T03:54:45Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1298', 'html_url': 'https://github.com/twisted/twisted/pull/1298', 'diff_url': 'https://github.com/twisted/twisted/pull/1298.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1298.patch'}","https://twistedmatrix.com/trac/ticket/9852
When running mypy over the twisted codebase with:
```
tox -e mypy
```
There are many errors that look like this:
```
src/twisted/words/protocols/jabber/sasl_mechanisms.py:47:1: error: 'Anonymous' is missing following 'ISASLMechanism' interface members: getResponse. [misc]
src/twisted/words/protocols/jabber/sasl_mechanisms.py:61:1: error: 'Plain' is missing following 'ISASLMechanism' interface members: getResponse. [misc]
src/twisted/internet/_dumbwin32proc.py:110:1: error: 'Process' is missing following 'twisted.internet.interfaces.ITransport' interface members: getHost, getPeer.
src/twisted/internet/abstract.py:151:1: error: 'FileDescriptor' is missing following 'ITransport' interface members: getHost, getPeer. [misc]
src/twisted/internet/process.py:623:1: error: 'Process' is missing following 'twisted.internet.interfaces.ITransport' interface members: getHost, getPeer. [misc]
src/twisted/internet/process.py:959:1: error: 'PTYProcess' is missing following 'twisted.internet.interfaces.ITransport' interface members: getHost, getPeer. [misc]
src/twisted/internet/process.py:959:1: error: 'PTYProcess' is missing following 'IProcessTransport' interface members: closeChildFD, writeToChild. [misc]
src/twisted/internet/_resolver.py:31:1: error: 'HostResolution' is missing following 'IHostResolution' interface members: cancel. [misc]
src/twisted/internet/base.py:504:1: error: 'ReactorBase' is missing following 'IReactorCore' interface members: run. [misc]
src/twisted/internet/_newtls.py:162:1: error: 'ConnectionMixin' is missing following 'twisted.internet.interfaces.ITCPTransport' interface members: getHost, getPeer,
```
In an effort to quieten these errors, this
PR adds comments to turn off these mypy warnings in a few places.
In a few other places, I implemented no-op methods in some classes, to appease mypy.
add comments",
810,https://api.github.com/repos/twisted/twisted/issues/1297,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1297/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1297/comments,https://api.github.com/repos/twisted/twisted/issues/1297/events,https://github.com/twisted/twisted/pull/1297,641723606,MDExOlB1bGxSZXF1ZXN0NDM2OTA1MTcy,1297,"[mypy] Fix error: ""All conditional function variants must have identical signatures""","{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-19T05:52:07Z,2020-06-20T10:37:22Z,2020-06-20T10:37:18Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1297', 'html_url': 'https://github.com/twisted/twisted/pull/1297', 'diff_url': 'https://github.com/twisted/twisted/pull/1297.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1297.patch'}","https://twistedmatrix.com/trac/ticket/9855
Eliminate these mypy errors:
```
src/twisted/python/lockfile.py:53:9: error: All conditional function variants must have identical signatures [misc]
src/twisted/python/lockfile.py:69:5: error: All conditional function variants must have identical signatures [misc]
src/twisted/python/lockfile.py:95:5: error: All conditional function variants must have identical signatures [misc]
src/twisted/python/lockfile.py:112:5: error: All conditional function variants must have identical signatures [misc]
src/twisted/internet/defer.py:46:5: error: All conditional function variants must have identical signatures [misc]
src/twisted/protocols/ident.py:160:9: error: All conditional function variants must have identical signatures [misc]
src/twisted/persisted/sob.py:79:13: error: All conditional function variants must have identical signatures [misc]
src/twisted/web/_flatten.py:20:5: error: All conditional function variants must have identical signatures [misc]
```",
811,https://api.github.com/repos/twisted/twisted/issues/1296,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1296/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1296/comments,https://api.github.com/repos/twisted/twisted/issues/1296/events,https://github.com/twisted/twisted/pull/1296,641649871,MDExOlB1bGxSZXF1ZXN0NDM2ODQ1MzYz,1296,[mypy] Remove duplicate definition of workers in src/twisted/python/threadpool.py,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-19T01:58:45Z,2020-06-19T17:14:38Z,2020-06-19T17:13:34Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1296', 'html_url': 'https://github.com/twisted/twisted/pull/1296', 'diff_url': 'https://github.com/twisted/twisted/pull/1296.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1296.patch'}","https://twistedmatrix.com/trac/ticket/9854
This removes this mypy error:
```
src/twisted/python/threadpool.py:84:6: error: Name 'workers' already defined on line 44 [no-redef]
```",
812,https://api.github.com/repos/twisted/twisted/issues/1295,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1295/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1295/comments,https://api.github.com/repos/twisted/twisted/issues/1295/events,https://github.com/twisted/twisted/pull/1295,641560418,MDExOlB1bGxSZXF1ZXN0NDM2NzcyMzk1,1295,Reduce mypy errors in trial code,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-06-18T21:28:52Z,2020-06-22T18:42:59Z,2020-06-22T18:42:55Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1295', 'html_url': 'https://github.com/twisted/twisted/pull/1295', 'diff_url': 'https://github.com/twisted/twisted/pull/1295.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1295.patch'}",https://twistedmatrix.com/trac/ticket/9853,
813,https://api.github.com/repos/twisted/twisted/issues/1294,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1294/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1294/comments,https://api.github.com/repos/twisted/twisted/issues/1294/events,https://github.com/twisted/twisted/pull/1294,640388707,MDExOlB1bGxSZXF1ZXN0NDM1ODA2ODY5,1294,Eliminate more mypy errors,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,4,2020-06-17T12:05:52Z,2020-06-22T20:17:28Z,2020-06-22T20:17:23Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1294', 'html_url': 'https://github.com/twisted/twisted/pull/1294', 'diff_url': 'https://github.com/twisted/twisted/pull/1294.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1294.patch'}","https://twistedmatrix.com/trac/ticket/9851
",
814,https://api.github.com/repos/twisted/twisted/issues/1293,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1293/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1293/comments,https://api.github.com/repos/twisted/twisted/issues/1293/events,https://github.com/twisted/twisted/pull/1293,639933987,MDExOlB1bGxSZXF1ZXN0NDM1NDM1MDg0,1293,Add some function annotations in twisted.internet,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-06-16T19:56:08Z,2020-06-17T21:52:01Z,2020-06-17T21:51:57Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1293', 'html_url': 'https://github.com/twisted/twisted/pull/1293', 'diff_url': 'https://github.com/twisted/twisted/pull/1293.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1293.patch'}","https://twistedmatrix.com/trac/ticket/9850
Based on looking at https://github.com/twisted/twisted/pull/1265
I think if more of the functions in twisted.internet add function annotations,
it would help us to catch more subtle bugs by using mypy.
",
815,https://api.github.com/repos/twisted/twisted/issues/1292,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1292/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1292/comments,https://api.github.com/repos/twisted/twisted/issues/1292/events,https://github.com/twisted/twisted/pull/1292,639855877,MDExOlB1bGxSZXF1ZXN0NDM1MzcxMjU3,1292,Remove _connDone parameter from FileDescriptor.loseConnection(),"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-16T17:45:23Z,2020-06-16T23:14:57Z,2020-06-16T23:14:52Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1292', 'html_url': 'https://github.com/twisted/twisted/pull/1292', 'diff_url': 'https://github.com/twisted/twisted/pull/1292.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1292.patch'}","https://twistedmatrix.com/trac/ticket/9849
The signature of FileDescriptor.loseConnection() was modified here:
https://github.com/twisted/twisted/commit/081d393ab03da92d744d8fb2b5d77705662a0caa
I think extending that signature was wrong, since it doesn't match the base class signature of that method.",
816,https://api.github.com/repos/twisted/twisted/issues/1291,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1291/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1291/comments,https://api.github.com/repos/twisted/twisted/issues/1291/events,https://github.com/twisted/twisted/pull/1291,639087852,MDExOlB1bGxSZXF1ZXN0NDM0NzMyMjM2,1291,xmlrpc: verify HTTPS certificates against the system bundle,"{'login': 'ktdreyer', 'id': 620295, 'node_id': 'MDQ6VXNlcjYyMDI5NQ==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/620295?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ktdreyer', 'html_url': 'https://github.com/ktdreyer', 'followers_url': 'https://api.github.com/users/ktdreyer/followers', 'following_url': 'https://api.github.com/users/ktdreyer/following{/other_user}', 'gists_url': 'https://api.github.com/users/ktdreyer/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ktdreyer/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ktdreyer/subscriptions', 'organizations_url': 'https://api.github.com/users/ktdreyer/orgs', 'repos_url': 'https://api.github.com/users/ktdreyer/repos', 'events_url': 'https://api.github.com/users/ktdreyer/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ktdreyer/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-15T19:29:38Z,2020-06-19T05:05:40Z,2020-06-19T05:05:39Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1291', 'html_url': 'https://github.com/twisted/twisted/pull/1291', 'diff_url': 'https://github.com/twisted/twisted/pull/1291.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1291.patch'}","Use `ssl.optionsForClientTLS()` when opening the HTTPS connection with `connectSSL()`. With this change, Twisted will use `ssl.platformTrust()` to verify the TLS connection.
Raise `ssl.SSL.Error` in `QueryProtocol` instead of silently skipping it.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9836
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [ ] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.",
817,https://api.github.com/repos/twisted/twisted/issues/1290,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1290/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1290/comments,https://api.github.com/repos/twisted/twisted/issues/1290/events,https://github.com/twisted/twisted/pull/1290,635203528,MDExOlB1bGxSZXF1ZXN0NDMxNjA4NjYw,1290,Add mypy build to Azure pipelines,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,11,2020-06-09T08:03:21Z,2020-06-19T13:56:16Z,2020-06-18T11:19:05Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1290', 'html_url': 'https://github.com/twisted/twisted/pull/1290', 'diff_url': 'https://github.com/twisted/twisted/pull/1290.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1290.patch'}",https://twistedmatrix.com/trac/ticket/9848,
818,https://api.github.com/repos/twisted/twisted/issues/1289,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1289/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1289/comments,https://api.github.com/repos/twisted/twisted/issues/1289/events,https://github.com/twisted/twisted/pull/1289,635194982,MDExOlB1bGxSZXF1ZXN0NDMxNjAxODY2,1289,Eliminate various mypy errors,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-06-09T07:50:07Z,2020-06-15T23:16:58Z,2020-06-15T23:16:50Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1289', 'html_url': 'https://github.com/twisted/twisted/pull/1289', 'diff_url': 'https://github.com/twisted/twisted/pull/1289.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1289.patch'}",https://twistedmatrix.com/trac/ticket/9847,
819,https://api.github.com/repos/twisted/twisted/issues/1288,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1288/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1288/comments,https://api.github.com/repos/twisted/twisted/issues/1288/events,https://github.com/twisted/twisted/pull/1288,632985322,MDExOlB1bGxSZXF1ZXN0NDI5Njc0NjI2,1288,Change module reference from Tkinter to tkinter,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-06-07T03:35:47Z,2020-06-07T06:59:44Z,2020-06-07T06:59:39Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1288', 'html_url': 'https://github.com/twisted/twisted/pull/1288', 'diff_url': 'https://github.com/twisted/twisted/pull/1288.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1288.patch'}","https://twistedmatrix.com/trac/ticket/9846
This addresses comments brought up in https://github.com/twisted/twisted/pull/1264#discussion_r436192507",
820,https://api.github.com/repos/twisted/twisted/issues/1287,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1287/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1287/comments,https://api.github.com/repos/twisted/twisted/issues/1287/events,https://github.com/twisted/twisted/pull/1287,629572163,MDExOlB1bGxSZXF1ZXN0NDI2ODc0MTUz,1287,xmlrpc: verify HTTPS certificates by default,"{'login': 'ktdreyer', 'id': 620295, 'node_id': 'MDQ6VXNlcjYyMDI5NQ==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/620295?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ktdreyer', 'html_url': 'https://github.com/ktdreyer', 'followers_url': 'https://api.github.com/users/ktdreyer/followers', 'following_url': 'https://api.github.com/users/ktdreyer/following{/other_user}', 'gists_url': 'https://api.github.com/users/ktdreyer/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ktdreyer/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ktdreyer/subscriptions', 'organizations_url': 'https://api.github.com/users/ktdreyer/orgs', 'repos_url': 'https://api.github.com/users/ktdreyer/repos', 'events_url': 'https://api.github.com/users/ktdreyer/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ktdreyer/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-06-02T23:08:51Z,2020-06-05T20:02:02Z,2020-06-05T20:01:57Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1287', 'html_url': 'https://github.com/twisted/twisted/pull/1287', 'diff_url': 'https://github.com/twisted/twisted/pull/1287.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1287.patch'}","Use `ssl.optionsForClientTLS()` when opening the HTTPS connection with `connectSSL()`. With this change, Twisted will use `ssl.platformTrust()` to verify the SSL connection by default.
Add a new `trustRoot` argument to the `Proxy` class constructor. This allows users to control how to trust the HTTPS certificate.
Raise `ssl.SSL.Error` in `QueryProtocol` instead of silently skipping it.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9836
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [ ] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.",
821,https://api.github.com/repos/twisted/twisted/issues/1286,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1286/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1286/comments,https://api.github.com/repos/twisted/twisted/issues/1286/events,https://github.com/twisted/twisted/pull/1286,629002363,MDExOlB1bGxSZXF1ZXN0NDI2NDI4MDY2,1286,New decorator t.p.deprecate.deprecatedKeywordParameter().,"{'login': 'wiml', 'id': 156891, 'node_id': 'MDQ6VXNlcjE1Njg5MQ==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/156891?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/wiml', 'html_url': 'https://github.com/wiml', 'followers_url': 'https://api.github.com/users/wiml/followers', 'following_url': 'https://api.github.com/users/wiml/following{/other_user}', 'gists_url': 'https://api.github.com/users/wiml/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/wiml/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/wiml/subscriptions', 'organizations_url': 'https://api.github.com/users/wiml/orgs', 'repos_url': 'https://api.github.com/users/wiml/repos', 'events_url': 'https://api.github.com/users/wiml/events{/privacy}', 'received_events_url': 'https://api.github.com/users/wiml/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-06-02T08:21:38Z,2020-06-18T16:23:36Z,2020-06-04T05:53:01Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1286', 'html_url': 'https://github.com/twisted/twisted/pull/1286', 'diff_url': 'https://github.com/twisted/twisted/pull/1286.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1286.patch'}","* [X] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9844
* [X] The changes pass minimal style checks
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [X] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review",
822,https://api.github.com/repos/twisted/twisted/issues/1285,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1285/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1285/comments,https://api.github.com/repos/twisted/twisted/issues/1285/events,https://github.com/twisted/twisted/pull/1285,628225914,MDExOlB1bGxSZXF1ZXN0NDI1ODExMzIy,1285,Remove some _PY3 checks and eliminate Python2 only code,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-01T07:45:13Z,2020-06-07T18:57:46Z,2020-06-07T18:57:41Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1285', 'html_url': 'https://github.com/twisted/twisted/pull/1285', 'diff_url': 'https://github.com/twisted/twisted/pull/1285.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1285.patch'}","https://twistedmatrix.com/trac/ticket/9842
This eliminates more errors from mypy
",
823,https://api.github.com/repos/twisted/twisted/issues/1284,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1284/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1284/comments,https://api.github.com/repos/twisted/twisted/issues/1284/events,https://github.com/twisted/twisted/pull/1284,627932955,MDExOlB1bGxSZXF1ZXN0NDI1NTg5ODM5,1284,[#9841] Clean up type checking/hinting for twisted.web.http_headers,"{'login': 'hawkowl', 'id': 3307100, 'node_id': 'MDQ6VXNlcjMzMDcxMDA=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/3307100?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/hawkowl', 'html_url': 'https://github.com/hawkowl', 'followers_url': 'https://api.github.com/users/hawkowl/followers', 'following_url': 'https://api.github.com/users/hawkowl/following{/other_user}', 'gists_url': 'https://api.github.com/users/hawkowl/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/hawkowl/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/hawkowl/subscriptions', 'organizations_url': 'https://api.github.com/users/hawkowl/orgs', 'repos_url': 'https://api.github.com/users/hawkowl/repos', 'events_url': 'https://api.github.com/users/hawkowl/events{/privacy}', 'received_events_url': 'https://api.github.com/users/hawkowl/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,0,2020-05-31T10:12:20Z,2020-06-19T16:55:38Z,,MEMBER,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1284', 'html_url': 'https://github.com/twisted/twisted/pull/1284', 'diff_url': 'https://github.com/twisted/twisted/pull/1284.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1284.patch'}",https://twistedmatrix.com/trac/ticket/9841,
824,https://api.github.com/repos/twisted/twisted/issues/1283,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1283/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1283/comments,https://api.github.com/repos/twisted/twisted/issues/1283/events,https://github.com/twisted/twisted/pull/1283,627905514,MDExOlB1bGxSZXF1ZXN0NDI1NTcwNDAy,1283,Allow mktime() to raise EOVERFLOW if isdst=1 and there's no DST.,"{'login': 'wiml', 'id': 156891, 'node_id': 'MDQ6VXNlcjE1Njg5MQ==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/156891?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/wiml', 'html_url': 'https://github.com/wiml', 'followers_url': 'https://api.github.com/users/wiml/followers', 'following_url': 'https://api.github.com/users/wiml/following{/other_user}', 'gists_url': 'https://api.github.com/users/wiml/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/wiml/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/wiml/subscriptions', 'organizations_url': 'https://api.github.com/users/wiml/orgs', 'repos_url': 'https://api.github.com/users/wiml/repos', 'events_url': 'https://api.github.com/users/wiml/events{/privacy}', 'received_events_url': 'https://api.github.com/users/wiml/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-05-31T06:46:37Z,2020-06-01T02:44:34Z,2020-06-01T02:44:30Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1283', 'html_url': 'https://github.com/twisted/twisted/pull/1283', 'diff_url': 'https://github.com/twisted/twisted/pull/1283.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1283.patch'}","* [X] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9652
* [X] The changes pass minimal style checks
* [X] I have created a newsfragment in src/twisted/newsfragments/9652.bugfix
* [X] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review",
825,https://api.github.com/repos/twisted/twisted/issues/1282,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1282/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1282/comments,https://api.github.com/repos/twisted/twisted/issues/1282/events,https://github.com/twisted/twisted/pull/1282,627885481,MDExOlB1bGxSZXF1ZXN0NDI1NTU2Mzc5,1282,[9840] Fix epytext,"{'login': 'twm', 'id': 43662, 'node_id': 'MDQ6VXNlcjQzNjYy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/43662?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/twm', 'html_url': 'https://github.com/twm', 'followers_url': 'https://api.github.com/users/twm/followers', 'following_url': 'https://api.github.com/users/twm/following{/other_user}', 'gists_url': 'https://api.github.com/users/twm/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/twm/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/twm/subscriptions', 'organizations_url': 'https://api.github.com/users/twm/orgs', 'repos_url': 'https://api.github.com/users/twm/repos', 'events_url': 'https://api.github.com/users/twm/events{/privacy}', 'received_events_url': 'https://api.github.com/users/twm/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-05-31T03:51:37Z,2020-06-06T00:55:03Z,2020-06-06T00:52:07Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1282', 'html_url': 'https://github.com/twisted/twisted/pull/1282', 'diff_url': 'https://github.com/twisted/twisted/pull/1282.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1282.patch'}","* Update or remove references to Python 2 types (`cStringIO`, `file`, etc.)
* Update various `C{}` references to `L{}` per the coding standard
* Fix syntax in several docstrings
* Sort imports of the touched files with `isort`
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9840#trac-add-comment
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests. (N/A)
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
826,https://api.github.com/repos/twisted/twisted/issues/1281,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1281/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1281/comments,https://api.github.com/repos/twisted/twisted/issues/1281/events,https://github.com/twisted/twisted/pull/1281,627864630,MDExOlB1bGxSZXF1ZXN0NDI1NTQ0OTky,1281,[9835] Fix ParentRedirect for header sanitization,"{'login': 'twm', 'id': 43662, 'node_id': 'MDQ6VXNlcjQzNjYy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/43662?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/twm', 'html_url': 'https://github.com/twm', 'followers_url': 'https://api.github.com/users/twm/followers', 'following_url': 'https://api.github.com/users/twm/following{/other_user}', 'gists_url': 'https://api.github.com/users/twm/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/twm/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/twm/subscriptions', 'organizations_url': 'https://api.github.com/users/twm/orgs', 'repos_url': 'https://api.github.com/users/twm/repos', 'events_url': 'https://api.github.com/users/twm/events{/privacy}', 'received_events_url': 'https://api.github.com/users/twm/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-05-31T01:16:45Z,2020-05-31T09:10:38Z,2020-05-31T09:10:34Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1281', 'html_url': 'https://github.com/twisted/twisted/pull/1281', 'diff_url': 'https://github.com/twisted/twisted/pull/1281.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1281.patch'}","I fixed this to coerce the Location header to a bytestring as used to happen implicitly.
I also removed the broken `getChild` method. This was never called because `isLeaf = 1` and had the wrong signature anyway.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9835#comment:2
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [ ] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.",
827,https://api.github.com/repos/twisted/twisted/issues/1280,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1280/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1280/comments,https://api.github.com/repos/twisted/twisted/issues/1280/events,https://github.com/twisted/twisted/pull/1280,627593889,MDExOlB1bGxSZXF1ZXN0NDI1MzcyNzA2,1280,Interface methods should not have 'self' argument,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-05-29T23:21:36Z,2020-05-30T14:45:03Z,2020-05-30T14:44:59Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1280', 'html_url': 'https://github.com/twisted/twisted/pull/1280', 'diff_url': 'https://github.com/twisted/twisted/pull/1280.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1280.patch'}","https://twistedmatrix.com/trac/ticket/9837
This fixes several warnings that I found by running:
```
tox -e mypy
```
such as:
```
src/twisted/protocols/haproxy/_interfaces.py:36:5: error: Interface methods should not have 'self' argument [misc]
def feed(self, data):
^
src/twisted/protocols/haproxy/_interfaces.py:52:5: error: Interface methods should not have 'self' argument [misc]
def parse(self, line):
^
```",
828,https://api.github.com/repos/twisted/twisted/issues/1279,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1279/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1279/comments,https://api.github.com/repos/twisted/twisted/issues/1279/events,https://github.com/twisted/twisted/pull/1279,626464242,MDExOlB1bGxSZXF1ZXN0NDI0NDQ5MzY5,1279,[#9835] Fix ParentRedirect,"{'login': 'hawkowl', 'id': 3307100, 'node_id': 'MDQ6VXNlcjMzMDcxMDA=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/3307100?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/hawkowl', 'html_url': 'https://github.com/hawkowl', 'followers_url': 'https://api.github.com/users/hawkowl/followers', 'following_url': 'https://api.github.com/users/hawkowl/following{/other_user}', 'gists_url': 'https://api.github.com/users/hawkowl/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/hawkowl/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/hawkowl/subscriptions', 'organizations_url': 'https://api.github.com/users/hawkowl/orgs', 'repos_url': 'https://api.github.com/users/hawkowl/repos', 'events_url': 'https://api.github.com/users/hawkowl/events{/privacy}', 'received_events_url': 'https://api.github.com/users/hawkowl/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-05-28T12:19:47Z,2020-05-31T10:23:44Z,2020-05-31T10:23:40Z,MEMBER,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1279', 'html_url': 'https://github.com/twisted/twisted/pull/1279', 'diff_url': 'https://github.com/twisted/twisted/pull/1279.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1279.patch'}",Ticket: https://twistedmatrix.com/trac/ticket/9835,
829,https://api.github.com/repos/twisted/twisted/issues/1278,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1278/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1278/comments,https://api.github.com/repos/twisted/twisted/issues/1278/events,https://github.com/twisted/twisted/pull/1278,625708407,MDExOlB1bGxSZXF1ZXN0NDIzODYyMDc1,1278,Use xml.etree.ElementTree instead of deprecated cElementTree,"{'login': 'mgorny', 'id': 110765, 'node_id': 'MDQ6VXNlcjExMDc2NQ==', 'avatar_url': 'https://avatars1.githubusercontent.com/u/110765?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mgorny', 'html_url': 'https://github.com/mgorny', 'followers_url': 'https://api.github.com/users/mgorny/followers', 'following_url': 'https://api.github.com/users/mgorny/following{/other_user}', 'gists_url': 'https://api.github.com/users/mgorny/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mgorny/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mgorny/subscriptions', 'organizations_url': 'https://api.github.com/users/mgorny/orgs', 'repos_url': 'https://api.github.com/users/mgorny/repos', 'events_url': 'https://api.github.com/users/mgorny/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mgorny/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,15,2020-05-27T13:43:24Z,2020-06-20T22:24:16Z,2020-06-20T22:04:26Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1278', 'html_url': 'https://github.com/twisted/twisted/pull/1278', 'diff_url': 'https://github.com/twisted/twisted/pull/1278.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1278.patch'}","The xml.etree.cElementTree is deprecated, and has been removed in Python
3.9. At the same time, xml.etree.ElementTree has already been using
cElementTree implicitly since Python 3.3. Update test_flatten to use
the latter to provide compatibility with newer Python versions.
Fixes: ticket:9834
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9834
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [ ] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
830,https://api.github.com/repos/twisted/twisted/issues/1277,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1277/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1277/comments,https://api.github.com/repos/twisted/twisted/issues/1277/events,https://github.com/twisted/twisted/pull/1277,625689403,MDExOlB1bGxSZXF1ZXN0NDIzODQ2Njg5,1277,Fix verifyCryptedPassword() for crypt.crypt() throwing in py3.9,"{'login': 'mgorny', 'id': 110765, 'node_id': 'MDQ6VXNlcjExMDc2NQ==', 'avatar_url': 'https://avatars1.githubusercontent.com/u/110765?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mgorny', 'html_url': 'https://github.com/mgorny', 'followers_url': 'https://api.github.com/users/mgorny/followers', 'following_url': 'https://api.github.com/users/mgorny/following{/other_user}', 'gists_url': 'https://api.github.com/users/mgorny/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mgorny/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mgorny/subscriptions', 'organizations_url': 'https://api.github.com/users/mgorny/orgs', 'repos_url': 'https://api.github.com/users/mgorny/repos', 'events_url': 'https://api.github.com/users/mgorny/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mgorny/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-05-27T13:18:00Z,2020-08-22T01:17:34Z,2020-08-22T01:17:34Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1277', 'html_url': 'https://github.com/twisted/twisted/pull/1277', 'diff_url': 'https://github.com/twisted/twisted/pull/1277.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1277.patch'}","In Python 3.9, the crypt.crypt() function may throw an exception
if the underlying crypt() function fails. Update
verifyCryptedPassword() to account for that, and preserve the existing
behavior of returning False in that case.
Fixes: ticket:9833
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9833
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
831,https://api.github.com/repos/twisted/twisted/issues/1276,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1276/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1276/comments,https://api.github.com/repos/twisted/twisted/issues/1276/events,https://github.com/twisted/twisted/pull/1276,625668225,MDExOlB1bGxSZXF1ZXN0NDIzODI5NzA5,1276,Fix imap4-utf-7 codec lookup function for Python 3.9,"{'login': 'mgorny', 'id': 110765, 'node_id': 'MDQ6VXNlcjExMDc2NQ==', 'avatar_url': 'https://avatars1.githubusercontent.com/u/110765?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mgorny', 'html_url': 'https://github.com/mgorny', 'followers_url': 'https://api.github.com/users/mgorny/followers', 'following_url': 'https://api.github.com/users/mgorny/following{/other_user}', 'gists_url': 'https://api.github.com/users/mgorny/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mgorny/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mgorny/subscriptions', 'organizations_url': 'https://api.github.com/users/mgorny/orgs', 'repos_url': 'https://api.github.com/users/mgorny/repos', 'events_url': 'https://api.github.com/users/mgorny/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mgorny/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-05-27T12:47:21Z,2020-06-20T16:18:19Z,2020-06-20T16:11:42Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1276', 'html_url': 'https://github.com/twisted/twisted/pull/1276', 'diff_url': 'https://github.com/twisted/twisted/pull/1276.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1276.patch'}","Python 3.9 normalizes the codec name into 'imap4_utf_7' rather than
'imap4-utf-7', and therefore the lookup function needs to account
for the former name. Transform the latter locally to preserve support
for all Python versions.
Fixes: ticket: 9832
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9832
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* am I supposed to fix coding style issues around my change?
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [ ] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
832,https://api.github.com/repos/twisted/twisted/issues/1275,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1275/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1275/comments,https://api.github.com/repos/twisted/twisted/issues/1275/events,https://github.com/twisted/twisted/pull/1275,625622785,MDExOlB1bGxSZXF1ZXN0NDIzNzk0MzA4,1275,Replace base64.*string() functions to fix py3.9 support,"{'login': 'mgorny', 'id': 110765, 'node_id': 'MDQ6VXNlcjExMDc2NQ==', 'avatar_url': 'https://avatars1.githubusercontent.com/u/110765?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mgorny', 'html_url': 'https://github.com/mgorny', 'followers_url': 'https://api.github.com/users/mgorny/followers', 'following_url': 'https://api.github.com/users/mgorny/following{/other_user}', 'gists_url': 'https://api.github.com/users/mgorny/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mgorny/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mgorny/subscriptions', 'organizations_url': 'https://api.github.com/users/mgorny/orgs', 'repos_url': 'https://api.github.com/users/mgorny/repos', 'events_url': 'https://api.github.com/users/mgorny/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mgorny/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,9,2020-05-27T11:42:50Z,2020-06-20T22:03:32Z,2020-06-20T22:03:32Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1275', 'html_url': 'https://github.com/twisted/twisted/pull/1275', 'diff_url': 'https://github.com/twisted/twisted/pull/1275.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1275.patch'}","Replace base64.decodestring() and .encodestring() functions as they
were deprecated since Python 3.1 in favor of (equivalent) .decodebytes()
and .encodebytes(), and were eventually removed in Python 3.9.
While at it, replace most of their uses with base64.b64encode()
and .b64decode() that are preferable to the former wrt ticket #6446,
and they do not introduce line breaks that the twisted code usually
discarded.
Use .decodebytes() and .encodebytes() in DirDBM as it seems to rely
on the exact presence of newlines, and changing that would break
backwards compatibility.
Fixes: ticket:6446
Fixes: ticket:9831
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9831
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* Note: the lint test failed for me but on existing lines unrelated to my change
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
833,https://api.github.com/repos/twisted/twisted/issues/1274,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1274/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1274/comments,https://api.github.com/repos/twisted/twisted/issues/1274/events,https://github.com/twisted/twisted/pull/1274,623535733,MDExOlB1bGxSZXF1ZXN0NDIyMTg0NjMz,1274,SMB initial version ,"{'login': 'ihaywood3', 'id': 758585, 'node_id': 'MDQ6VXNlcjc1ODU4NQ==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/758585?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ihaywood3', 'html_url': 'https://github.com/ihaywood3', 'followers_url': 'https://api.github.com/users/ihaywood3/followers', 'following_url': 'https://api.github.com/users/ihaywood3/following{/other_user}', 'gists_url': 'https://api.github.com/users/ihaywood3/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ihaywood3/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ihaywood3/subscriptions', 'organizations_url': 'https://api.github.com/users/ihaywood3/orgs', 'repos_url': 'https://api.github.com/users/ihaywood3/repos', 'events_url': 'https://api.github.com/users/ihaywood3/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ihaywood3/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,1,2020-05-23T00:50:08Z,2020-08-09T06:06:39Z,,NONE,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1274', 'html_url': 'https://github.com/twisted/twisted/pull/1274', 'diff_url': 'https://github.com/twisted/twisted/pull/1274.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1274.patch'}","This is the minimal proof-of-concept SMB component . All it can do is negotiate a session and authenticate, no actual file access yet but its already a large commit for review (sorry)
https://twistedmatrix.com/trac/ticket/9818",
834,https://api.github.com/repos/twisted/twisted/issues/1273,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1273/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1273/comments,https://api.github.com/repos/twisted/twisted/issues/1273/events,https://github.com/twisted/twisted/pull/1273,619926275,MDExOlB1bGxSZXF1ZXN0NDE5MjcyMjUy,1273,9718 automat 3.8 baseline,"{'login': 'glyph', 'id': 716529, 'node_id': 'MDQ6VXNlcjcxNjUyOQ==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/716529?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/glyph', 'html_url': 'https://github.com/glyph', 'followers_url': 'https://api.github.com/users/glyph/followers', 'following_url': 'https://api.github.com/users/glyph/following{/other_user}', 'gists_url': 'https://api.github.com/users/glyph/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/glyph/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/glyph/subscriptions', 'organizations_url': 'https://api.github.com/users/glyph/orgs', 'repos_url': 'https://api.github.com/users/glyph/repos', 'events_url': 'https://api.github.com/users/glyph/events{/privacy}', 'received_events_url': 'https://api.github.com/users/glyph/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-05-18T05:44:51Z,2020-05-18T18:13:36Z,2020-05-18T12:52:15Z,MEMBER,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1273', 'html_url': 'https://github.com/twisted/twisted/pull/1273', 'diff_url': 'https://github.com/twisted/twisted/pull/1273.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1273.patch'}","## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9718
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* I have updated the automated tests. (n/a)
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
835,https://api.github.com/repos/twisted/twisted/issues/1272,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1272/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1272/comments,https://api.github.com/repos/twisted/twisted/issues/1272/events,https://github.com/twisted/twisted/pull/1272,617982046,MDExOlB1bGxSZXF1ZXN0NDE3Nzk2NTU4,1272,Allow @unittest.skipIf decorator to specify that a test class should be skipped,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-05-14T07:10:34Z,2020-05-31T15:54:10Z,2020-05-31T15:54:05Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1272', 'html_url': 'https://github.com/twisted/twisted/pull/1272', 'diff_url': 'https://github.com/twisted/twisted/pull/1272.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1272.patch'}","https://twistedmatrix.com/trac/ticket/9829
",
836,https://api.github.com/repos/twisted/twisted/issues/1271,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1271/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1271/comments,https://api.github.com/repos/twisted/twisted/issues/1271/events,https://github.com/twisted/twisted/pull/1271,617008782,MDExOlB1bGxSZXF1ZXN0NDE3MDEwMTU3,1271,Add more type annotations,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-05-12T22:37:52Z,2020-05-23T01:27:31Z,2020-05-23T01:27:28Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1271', 'html_url': 'https://github.com/twisted/twisted/pull/1271', 'diff_url': 'https://github.com/twisted/twisted/pull/1271.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1271.patch'}","https://twistedmatrix.com/trac/ticket/9827
Add some type annotations which eliminate mypy errors such as:
```
src/twisted/words/protocols/jabber/jid.py:108:1: error: Need type annotation for '__internJIDs' (hint: ""__internJIDs: Dict[, ] = ..."") [var-annotated]
__internJIDs = {}
```",
837,https://api.github.com/repos/twisted/twisted/issues/1270,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1270/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1270/comments,https://api.github.com/repos/twisted/twisted/issues/1270/events,https://github.com/twisted/twisted/pull/1270,616826317,MDExOlB1bGxSZXF1ZXN0NDE2ODYyOTY2,1270,contextvars backport compatibility,"{'login': 'altendky', 'id': 543719, 'node_id': 'MDQ6VXNlcjU0MzcxOQ==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/543719?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/altendky', 'html_url': 'https://github.com/altendky', 'followers_url': 'https://api.github.com/users/altendky/followers', 'following_url': 'https://api.github.com/users/altendky/following{/other_user}', 'gists_url': 'https://api.github.com/users/altendky/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/altendky/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/altendky/subscriptions', 'organizations_url': 'https://api.github.com/users/altendky/orgs', 'repos_url': 'https://api.github.com/users/altendky/repos', 'events_url': 'https://api.github.com/users/altendky/events{/privacy}', 'received_events_url': 'https://api.github.com/users/altendky/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,10,2020-05-12T17:21:07Z,2020-05-19T01:01:22Z,2020-05-16T07:10:28Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1270', 'html_url': 'https://github.com/twisted/twisted/pull/1270', 'diff_url': 'https://github.com/twisted/twisted/pull/1270.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1270.patch'}","https://twistedmatrix.com/trac/ticket/9826
WIP for:
- [x] any attempt at all to fix the issue
- [x] newsfragment
- [x] a good and clear solution with some understanding
- [x] update any relevant comments in proximity to the change",
838,https://api.github.com/repos/twisted/twisted/issues/1269,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1269/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1269/comments,https://api.github.com/repos/twisted/twisted/issues/1269/events,https://github.com/twisted/twisted/pull/1269,615935408,MDExOlB1bGxSZXF1ZXN0NDE2MTQ2MjY5,1269,[#9825] Deferred.fromCoroutine,"{'login': 'hawkowl', 'id': 3307100, 'node_id': 'MDQ6VXNlcjMzMDcxMDA=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/3307100?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/hawkowl', 'html_url': 'https://github.com/hawkowl', 'followers_url': 'https://api.github.com/users/hawkowl/followers', 'following_url': 'https://api.github.com/users/hawkowl/following{/other_user}', 'gists_url': 'https://api.github.com/users/hawkowl/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/hawkowl/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/hawkowl/subscriptions', 'organizations_url': 'https://api.github.com/users/hawkowl/orgs', 'repos_url': 'https://api.github.com/users/hawkowl/repos', 'events_url': 'https://api.github.com/users/hawkowl/events{/privacy}', 'received_events_url': 'https://api.github.com/users/hawkowl/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,0,2020-05-11T14:36:42Z,2020-08-19T19:26:41Z,,MEMBER,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1269', 'html_url': 'https://github.com/twisted/twisted/pull/1269', 'diff_url': 'https://github.com/twisted/twisted/pull/1269.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1269.patch'}",https://tm.tl/#9825,
839,https://api.github.com/repos/twisted/twisted/issues/1268,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1268/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1268/comments,https://api.github.com/repos/twisted/twisted/issues/1268/events,https://github.com/twisted/twisted/pull/1268,615542665,MDExOlB1bGxSZXF1ZXN0NDE1ODMwNzE4,1268,Always use sys.stdout.buffer which is always available on Python 3+,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-05-11T02:25:03Z,2020-05-22T01:09:56Z,2020-05-22T01:09:50Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1268', 'html_url': 'https://github.com/twisted/twisted/pull/1268', 'diff_url': 'https://github.com/twisted/twisted/pull/1268.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1268.patch'}","https://twistedmatrix.com/trac/ticket/9823
Fix mypy errors like:
```
src/twisted/test/process_stdinreader.py:20:14: error: Incompatible types in assignment (expression has type ""TextIO"", variable has type ""BinaryIO"") [assignment]
stdout = sys.stdout
```",
840,https://api.github.com/repos/twisted/twisted/issues/1267,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1267/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1267/comments,https://api.github.com/repos/twisted/twisted/issues/1267/events,https://github.com/twisted/twisted/pull/1267,615497241,MDExOlB1bGxSZXF1ZXN0NDE1Nzk2MTU2,1267,"Use @classmethod decorator, to eliminate mypy warnings","{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-05-10T23:10:37Z,2020-05-11T18:07:01Z,2020-05-11T18:06:58Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1267', 'html_url': 'https://github.com/twisted/twisted/pull/1267', 'diff_url': 'https://github.com/twisted/twisted/pull/1267.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1267.patch'}","https://twistedmatrix.com/trac/ticket/9820
This eliminates a bunch of mypy errors such as:
```
src/twisted/protocols/amp.py:1924:21: error: Incompatible types in assignment (expression has type ""classmethod"", variable has type ""Callable[[Command, Any, Any], Any]"")
[assignment]
parseResponse = classmethod(parseResponse)
```",
841,https://api.github.com/repos/twisted/twisted/issues/1266,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1266/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1266/comments,https://api.github.com/repos/twisted/twisted/issues/1266/events,https://github.com/twisted/twisted/pull/1266,615354806,MDExOlB1bGxSZXF1ZXN0NDE1Njk0NTg3,1266,Added Parameter for Providing Root Certificate File in _parseSSL Method,"{'login': 'akku2311', 'id': 21203569, 'node_id': 'MDQ6VXNlcjIxMjAzNTY5', 'avatar_url': 'https://avatars2.githubusercontent.com/u/21203569?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/akku2311', 'html_url': 'https://github.com/akku2311', 'followers_url': 'https://api.github.com/users/akku2311/followers', 'following_url': 'https://api.github.com/users/akku2311/following{/other_user}', 'gists_url': 'https://api.github.com/users/akku2311/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/akku2311/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/akku2311/subscriptions', 'organizations_url': 'https://api.github.com/users/akku2311/orgs', 'repos_url': 'https://api.github.com/users/akku2311/repos', 'events_url': 'https://api.github.com/users/akku2311/events{/privacy}', 'received_events_url': 'https://api.github.com/users/akku2311/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-05-10T09:42:58Z,2020-07-18T21:37:27Z,2020-07-18T21:37:27Z,NONE,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1266', 'html_url': 'https://github.com/twisted/twisted/pull/1266', 'diff_url': 'https://github.com/twisted/twisted/pull/1266.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1266.patch'}",Added optional parameter for providing root.pem in _parseSSL and added trustRoot argument in CertificateOptions.,
842,https://api.github.com/repos/twisted/twisted/issues/1265,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1265/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1265/comments,https://api.github.com/repos/twisted/twisted/issues/1265/events,https://github.com/twisted/twisted/pull/1265,614935714,MDExOlB1bGxSZXF1ZXN0NDE1MzkxNDQz,1265,Wrap ConnectionLost in a Failure for HTTP/2,"{'login': 'clokep', 'id': 517124, 'node_id': 'MDQ6VXNlcjUxNzEyNA==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/517124?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/clokep', 'html_url': 'https://github.com/clokep', 'followers_url': 'https://api.github.com/users/clokep/followers', 'following_url': 'https://api.github.com/users/clokep/following{/other_user}', 'gists_url': 'https://api.github.com/users/clokep/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/clokep/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/clokep/subscriptions', 'organizations_url': 'https://api.github.com/users/clokep/orgs', 'repos_url': 'https://api.github.com/users/clokep/repos', 'events_url': 'https://api.github.com/users/clokep/events{/privacy}', 'received_events_url': 'https://api.github.com/users/clokep/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,11,2020-05-08T19:22:32Z,2020-06-17T10:39:05Z,2020-06-16T22:11:40Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1265', 'html_url': 'https://github.com/twisted/twisted/pull/1265', 'diff_url': 'https://github.com/twisted/twisted/pull/1265.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1265.patch'}","## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9817
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [ ] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
843,https://api.github.com/repos/twisted/twisted/issues/1264,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1264/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1264/comments,https://api.github.com/repos/twisted/twisted/issues/1264/events,https://github.com/twisted/twisted/pull/1264,614329110,MDExOlB1bGxSZXF1ZXN0NDE0OTA3NjQ1,1264,Use unittest.skipIf decorator for skipping certain test functions.,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-05-07T20:39:01Z,2020-06-06T19:15:56Z,2020-06-06T19:15:48Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1264', 'html_url': 'https://github.com/twisted/twisted/pull/1264', 'diff_url': 'https://github.com/twisted/twisted/pull/1264.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1264.patch'}","https://twistedmatrix.com/trac/ticket/9812
This reduces errors reported by mypy of the form:
```
src/twisted/words/test/test_domish.py:193:9: error: ""Callable[[ElementTests], Any]"" has no attribute ""skip"" [attr-defined]
test_addContentBytes.skip = (
```",
844,https://api.github.com/repos/twisted/twisted/issues/1263,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1263/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1263/comments,https://api.github.com/repos/twisted/twisted/issues/1263/events,https://github.com/twisted/twisted/pull/1263,613730368,MDExOlB1bGxSZXF1ZXN0NDE0NDI2OTg4,1263,Add sniffio support,"{'login': 'altendky', 'id': 543719, 'node_id': 'MDQ6VXNlcjU0MzcxOQ==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/543719?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/altendky', 'html_url': 'https://github.com/altendky', 'followers_url': 'https://api.github.com/users/altendky/followers', 'following_url': 'https://api.github.com/users/altendky/following{/other_user}', 'gists_url': 'https://api.github.com/users/altendky/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/altendky/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/altendky/subscriptions', 'organizations_url': 'https://api.github.com/users/altendky/orgs', 'repos_url': 'https://api.github.com/users/altendky/repos', 'events_url': 'https://api.github.com/users/altendky/events{/privacy}', 'received_events_url': 'https://api.github.com/users/altendky/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,10,2020-05-07T02:34:28Z,2020-08-24T01:05:04Z,,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1263', 'html_url': 'https://github.com/twisted/twisted/pull/1263', 'diff_url': 'https://github.com/twisted/twisted/pull/1263.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1263.patch'}","https://twistedmatrix.com/trac/ticket/9815
WIP for:
- [x] newsfragment
- [x] tests
- [x] ~~verification in sniffio tests~~
- sniffio trusts us to test
- [x] asyncioreactor tests
- [x] finish setup.py additions
- [x] update setup.py tests
- [x] update extras docs",
845,https://api.github.com/repos/twisted/twisted/issues/1262,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1262/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1262/comments,https://api.github.com/repos/twisted/twisted/issues/1262/events,https://github.com/twisted/twisted/pull/1262,613014435,MDExOlB1bGxSZXF1ZXN0NDEzODQ4OTI0,1262,[#9807] contextvars support for Deferred,"{'login': 'hawkowl', 'id': 3307100, 'node_id': 'MDQ6VXNlcjMzMDcxMDA=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/3307100?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/hawkowl', 'html_url': 'https://github.com/hawkowl', 'followers_url': 'https://api.github.com/users/hawkowl/followers', 'following_url': 'https://api.github.com/users/hawkowl/following{/other_user}', 'gists_url': 'https://api.github.com/users/hawkowl/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/hawkowl/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/hawkowl/subscriptions', 'organizations_url': 'https://api.github.com/users/hawkowl/orgs', 'repos_url': 'https://api.github.com/users/hawkowl/repos', 'events_url': 'https://api.github.com/users/hawkowl/events{/privacy}', 'received_events_url': 'https://api.github.com/users/hawkowl/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,0,2020-05-06T02:45:58Z,2020-05-06T07:56:29Z,,MEMBER,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1262', 'html_url': 'https://github.com/twisted/twisted/pull/1262', 'diff_url': 'https://github.com/twisted/twisted/pull/1262.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1262.patch'}", https://twistedmatrix.com/trac/ticket/9807,
846,https://api.github.com/repos/twisted/twisted/issues/1261,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1261/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1261/comments,https://api.github.com/repos/twisted/twisted/issues/1261/events,https://github.com/twisted/twisted/pull/1261,612459004,MDExOlB1bGxSZXF1ZXN0NDEzMzk4ODg2,1261,"Fix mypy error: Too few arguments to ""makeTestCaseClasses""","{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-05-05T09:18:01Z,2020-05-08T04:02:36Z,2020-05-08T04:02:32Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1261', 'html_url': 'https://github.com/twisted/twisted/pull/1261', 'diff_url': 'https://github.com/twisted/twisted/pull/1261.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1261.patch'}",https://twistedmatrix.com/trac/ticket/9811,
847,https://api.github.com/repos/twisted/twisted/issues/1260,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1260/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1260/comments,https://api.github.com/repos/twisted/twisted/issues/1260/events,https://github.com/twisted/twisted/pull/1260,612285867,MDExOlB1bGxSZXF1ZXN0NDEzMjc3MzAz,1260,Add mypy to tox,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,5,2020-05-05T02:40:06Z,2020-05-05T11:32:23Z,2020-05-05T11:32:19Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1260', 'html_url': 'https://github.com/twisted/twisted/pull/1260', 'diff_url': 'https://github.com/twisted/twisted/pull/1260.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1260.patch'}","https://twistedmatrix.com/trac/ticket/9810
I based this loosely on the mypy CI in klein: https://github.com/twisted/klein/blob/master/tox.ini#L284",
848,https://api.github.com/repos/twisted/twisted/issues/1259,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1259/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1259/comments,https://api.github.com/repos/twisted/twisted/issues/1259/events,https://github.com/twisted/twisted/pull/1259,612272300,MDExOlB1bGxSZXF1ZXN0NDEzMjY3ODE1,1259,[WIP] Require CPython 3.8 passes on Windows,"{'login': 'altendky', 'id': 543719, 'node_id': 'MDQ6VXNlcjU0MzcxOQ==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/543719?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/altendky', 'html_url': 'https://github.com/altendky', 'followers_url': 'https://api.github.com/users/altendky/followers', 'following_url': 'https://api.github.com/users/altendky/following{/other_user}', 'gists_url': 'https://api.github.com/users/altendky/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/altendky/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/altendky/subscriptions', 'organizations_url': 'https://api.github.com/users/altendky/orgs', 'repos_url': 'https://api.github.com/users/altendky/repos', 'events_url': 'https://api.github.com/users/altendky/events{/privacy}', 'received_events_url': 'https://api.github.com/users/altendky/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,8,2020-05-05T01:48:37Z,2020-09-05T00:11:03Z,,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1259', 'html_url': 'https://github.com/twisted/twisted/pull/1259', 'diff_url': 'https://github.com/twisted/twisted/pull/1259.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1259.patch'}","https://twistedmatrix.com/trac/ticket/9809
confusion... discussion at https://twistedmatrix.com/trac/ticket/9799#comment:9",
849,https://api.github.com/repos/twisted/twisted/issues/1258,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1258/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1258/comments,https://api.github.com/repos/twisted/twisted/issues/1258/events,https://github.com/twisted/twisted/pull/1258,612272231,MDExOlB1bGxSZXF1ZXN0NDEzMjY3Nzcw,1258,Require CPython 3.8 passes on macOS,"{'login': 'altendky', 'id': 543719, 'node_id': 'MDQ6VXNlcjU0MzcxOQ==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/543719?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/altendky', 'html_url': 'https://github.com/altendky', 'followers_url': 'https://api.github.com/users/altendky/followers', 'following_url': 'https://api.github.com/users/altendky/following{/other_user}', 'gists_url': 'https://api.github.com/users/altendky/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/altendky/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/altendky/subscriptions', 'organizations_url': 'https://api.github.com/users/altendky/orgs', 'repos_url': 'https://api.github.com/users/altendky/repos', 'events_url': 'https://api.github.com/users/altendky/events{/privacy}', 'received_events_url': 'https://api.github.com/users/altendky/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-05-05T01:48:20Z,2020-05-06T00:30:30Z,2020-05-05T23:02:39Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1258', 'html_url': 'https://github.com/twisted/twisted/pull/1258', 'diff_url': 'https://github.com/twisted/twisted/pull/1258.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1258.patch'}","https://twistedmatrix.com/trac/ticket/9808
confusion... discussion at https://twistedmatrix.com/trac/ticket/9799#comment:9",
850,https://api.github.com/repos/twisted/twisted/issues/1257,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1257/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1257/comments,https://api.github.com/repos/twisted/twisted/issues/1257/events,https://github.com/twisted/twisted/pull/1257,612253387,MDExOlB1bGxSZXF1ZXN0NDEzMjUzNjAz,1257,"Revert ""Do not allow travis failures on Python 3.8""","{'login': 'glyph', 'id': 716529, 'node_id': 'MDQ6VXNlcjcxNjUyOQ==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/716529?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/glyph', 'html_url': 'https://github.com/glyph', 'followers_url': 'https://api.github.com/users/glyph/followers', 'following_url': 'https://api.github.com/users/glyph/following{/other_user}', 'gists_url': 'https://api.github.com/users/glyph/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/glyph/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/glyph/subscriptions', 'organizations_url': 'https://api.github.com/users/glyph/orgs', 'repos_url': 'https://api.github.com/users/glyph/repos', 'events_url': 'https://api.github.com/users/glyph/events{/privacy}', 'received_events_url': 'https://api.github.com/users/glyph/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-05-05T00:31:21Z,2020-05-05T00:52:08Z,2020-05-05T00:34:13Z,MEMBER,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1257', 'html_url': 'https://github.com/twisted/twisted/pull/1257', 'diff_url': 'https://github.com/twisted/twisted/pull/1257.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1257.patch'}","Reopens: ticket:9798
",
851,https://api.github.com/repos/twisted/twisted/issues/1256,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1256/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1256/comments,https://api.github.com/repos/twisted/twisted/issues/1256/events,https://github.com/twisted/twisted/pull/1256,604346943,MDExOlB1bGxSZXF1ZXN0NDA2OTU5MTI2,1256,Require CPython 3.8 passes on Windows and macOS,"{'login': 'altendky', 'id': 543719, 'node_id': 'MDQ6VXNlcjU0MzcxOQ==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/543719?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/altendky', 'html_url': 'https://github.com/altendky', 'followers_url': 'https://api.github.com/users/altendky/followers', 'following_url': 'https://api.github.com/users/altendky/following{/other_user}', 'gists_url': 'https://api.github.com/users/altendky/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/altendky/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/altendky/subscriptions', 'organizations_url': 'https://api.github.com/users/altendky/orgs', 'repos_url': 'https://api.github.com/users/altendky/repos', 'events_url': 'https://api.github.com/users/altendky/events{/privacy}', 'received_events_url': 'https://api.github.com/users/altendky/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-04-21T23:27:04Z,2020-05-05T01:16:48Z,2020-05-05T01:16:40Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1256', 'html_url': 'https://github.com/twisted/twisted/pull/1256', 'diff_url': 'https://github.com/twisted/twisted/pull/1256.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1256.patch'}",https://twistedmatrix.com/trac/ticket/9799,
852,https://api.github.com/repos/twisted/twisted/issues/1255,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1255/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1255/comments,https://api.github.com/repos/twisted/twisted/issues/1255/events,https://github.com/twisted/twisted/pull/1255,600629329,MDExOlB1bGxSZXF1ZXN0NDA0MDIzNTQw,1255,Remove __future__ imports,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-04-15T22:38:20Z,2020-05-05T11:57:57Z,2020-05-05T11:57:21Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1255', 'html_url': 'https://github.com/twisted/twisted/pull/1255', 'diff_url': 'https://github.com/twisted/twisted/pull/1255.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1255.patch'}","https://twistedmatrix.com/trac/ticket/9803
Now that Python 3.5 is the minimum version of Python supported by Twisted,
we can get rid of some `__future__` imports that were used for Python 2 compatibility.",
853,https://api.github.com/repos/twisted/twisted/issues/1254,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1254/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1254/comments,https://api.github.com/repos/twisted/twisted/issues/1254/events,https://github.com/twisted/twisted/pull/1254,600538163,MDExOlB1bGxSZXF1ZXN0NDAzOTQ4NjU4,1254,Use twistedchecker 0.7.4,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,4,2020-04-15T19:32:55Z,2020-04-18T19:12:17Z,2020-04-18T16:41:36Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1254', 'html_url': 'https://github.com/twisted/twisted/pull/1254', 'diff_url': 'https://github.com/twisted/twisted/pull/1254.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1254.patch'}","https://twistedmatrix.com/trac/ticket/9802
With this change, I can do this in the top-level twisted directory with Python 3.5, 3.6, 3.7, or 3.8:
```
pip install tox
export TOXENV=lint
tox
```",
854,https://api.github.com/repos/twisted/twisted/issues/1253,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1253/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1253/comments,https://api.github.com/repos/twisted/twisted/issues/1253/events,https://github.com/twisted/twisted/pull/1253,599046365,MDExOlB1bGxSZXF1ZXN0NDAyNzY4NzAw,1253,Do not allow travis failures on Python 3.8,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-04-13T18:14:25Z,2020-05-05T01:21:56Z,2020-04-14T16:35:08Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1253', 'html_url': 'https://github.com/twisted/twisted/pull/1253', 'diff_url': 'https://github.com/twisted/twisted/pull/1253.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1253.patch'}","Ticket: http://tm.tl/9798 (twistedmatrix.com seems to be down at the moment)
",
855,https://api.github.com/repos/twisted/twisted/issues/1252,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1252/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1252/comments,https://api.github.com/repos/twisted/twisted/issues/1252/events,https://github.com/twisted/twisted/pull/1252,598679222,MDExOlB1bGxSZXF1ZXN0NDAyNDc3MDYx,1252,Change import of cgi.parse_qs to urllib.parse.parse_qs,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-04-13T05:17:15Z,2020-04-13T08:22:27Z,2020-04-13T08:22:23Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1252', 'html_url': 'https://github.com/twisted/twisted/pull/1252', 'diff_url': 'https://github.com/twisted/twisted/pull/1252.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1252.patch'}",https://twistedmatrix.com/trac/ticket/9801,
856,https://api.github.com/repos/twisted/twisted/issues/1251,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1251/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1251/comments,https://api.github.com/repos/twisted/twisted/issues/1251/events,https://github.com/twisted/twisted/pull/1251,598577088,MDExOlB1bGxSZXF1ZXN0NDAyNDAyODY3,1251,Add digestmod parameter to HMAC.__init__() to fix Python 3.8+,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-04-12T21:40:38Z,2020-04-13T02:42:05Z,2020-04-13T02:42:01Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1251', 'html_url': 'https://github.com/twisted/twisted/pull/1251', 'diff_url': 'https://github.com/twisted/twisted/pull/1251.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1251.patch'}","https://twistedmatrix.com/trac/ticket/9800
In Python 3.4+ if you did not specify a `digestmod` parameter to `HMAC.__init__()`, the digestmod would default to md5.
In Python 3.8+, if you don't specify a digestmod, you get an error:
https://github.com/python/cpython/commit/8bb0b5b03cffa2a2e74f248ef479a9e7fbe95cf4 https://github.com/python/cpython/commit/f33c57d5c780da1500619f548585792bb5b750ee
This is similar to the fix that was done in https://github.com/twisted/twisted/pull/1219",
857,https://api.github.com/repos/twisted/twisted/issues/1250,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1250/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1250/comments,https://api.github.com/repos/twisted/twisted/issues/1250/events,https://github.com/twisted/twisted/pull/1250,598390420,MDExOlB1bGxSZXF1ZXN0NDAyMjc0MTM3,1250,Add CPython 3.8 to CI,"{'login': 'altendky', 'id': 543719, 'node_id': 'MDQ6VXNlcjU0MzcxOQ==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/543719?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/altendky', 'html_url': 'https://github.com/altendky', 'followers_url': 'https://api.github.com/users/altendky/followers', 'following_url': 'https://api.github.com/users/altendky/following{/other_user}', 'gists_url': 'https://api.github.com/users/altendky/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/altendky/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/altendky/subscriptions', 'organizations_url': 'https://api.github.com/users/altendky/orgs', 'repos_url': 'https://api.github.com/users/altendky/repos', 'events_url': 'https://api.github.com/users/altendky/events{/privacy}', 'received_events_url': 'https://api.github.com/users/altendky/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,4,2020-04-12T02:04:15Z,2020-05-05T01:21:08Z,2020-04-13T06:24:08Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1250', 'html_url': 'https://github.com/twisted/twisted/pull/1250', 'diff_url': 'https://github.com/twisted/twisted/pull/1250.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1250.patch'}",https://twistedmatrix.com/trac/ticket/9798,
858,https://api.github.com/repos/twisted/twisted/issues/1249,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1249/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1249/comments,https://api.github.com/repos/twisted/twisted/issues/1249/events,https://github.com/twisted/twisted/pull/1249,598165519,MDExOlB1bGxSZXF1ZXN0NDAyMTIyOTU1,1249,fix a few errors found by new twistedchecker,"{'login': 'altendky', 'id': 543719, 'node_id': 'MDQ6VXNlcjU0MzcxOQ==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/543719?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/altendky', 'html_url': 'https://github.com/altendky', 'followers_url': 'https://api.github.com/users/altendky/followers', 'following_url': 'https://api.github.com/users/altendky/following{/other_user}', 'gists_url': 'https://api.github.com/users/altendky/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/altendky/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/altendky/subscriptions', 'organizations_url': 'https://api.github.com/users/altendky/orgs', 'repos_url': 'https://api.github.com/users/altendky/repos', 'events_url': 'https://api.github.com/users/altendky/events{/privacy}', 'received_events_url': 'https://api.github.com/users/altendky/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-04-11T01:49:46Z,2020-04-11T14:49:37Z,2020-04-11T14:49:37Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1249', 'html_url': 'https://github.com/twisted/twisted/pull/1249', 'diff_url': 'https://github.com/twisted/twisted/pull/1249.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1249.patch'}",https://twistedmatrix.com/trac/ticket/9797,
859,https://api.github.com/repos/twisted/twisted/issues/1248,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1248/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1248/comments,https://api.github.com/repos/twisted/twisted/issues/1248/events,https://github.com/twisted/twisted/pull/1248,597529717,MDExOlB1bGxSZXF1ZXN0NDAxNjI1MzYx,1248,Remove broken pycodestyle checker from twistedchecker,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,5,2020-04-09T20:20:38Z,2020-04-10T15:58:27Z,2020-04-10T15:58:24Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1248', 'html_url': 'https://github.com/twisted/twisted/pull/1248', 'diff_url': 'https://github.com/twisted/twisted/pull/1248.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1248.patch'}","* [X] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9796
* [X] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [X] I have created a newsfragment in src/twisted/newsfragments/9796.misc
* [X] I have updated the automated tests.
* [X] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
860,https://api.github.com/repos/twisted/twisted/issues/1247,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1247/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1247/comments,https://api.github.com/repos/twisted/twisted/issues/1247/events,https://github.com/twisted/twisted/pull/1247,596879219,MDExOlB1bGxSZXF1ZXN0NDAxMDkzNDQ1,1247,Remove PY3 checks in trial,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-04-08T21:36:36Z,2020-04-13T07:56:51Z,2020-04-13T07:56:47Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1247', 'html_url': 'https://github.com/twisted/twisted/pull/1247', 'diff_url': 'https://github.com/twisted/twisted/pull/1247.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1247.patch'}","## Contributor Checklist:
* [X] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9795
* [X] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [X] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [X] I have updated the automated tests.
* [X] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
861,https://api.github.com/repos/twisted/twisted/issues/1246,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1246/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1246/comments,https://api.github.com/repos/twisted/twisted/issues/1246/events,https://github.com/twisted/twisted/pull/1246,595555031,MDExOlB1bGxSZXF1ZXN0NDAwMDA4ODIx,1246,Prevent opening new filexfer requests after the connection is closed.,"{'login': 'wiml', 'id': 156891, 'node_id': 'MDQ6VXNlcjE1Njg5MQ==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/156891?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/wiml', 'html_url': 'https://github.com/wiml', 'followers_url': 'https://api.github.com/users/wiml/followers', 'following_url': 'https://api.github.com/users/wiml/following{/other_user}', 'gists_url': 'https://api.github.com/users/wiml/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/wiml/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/wiml/subscriptions', 'organizations_url': 'https://api.github.com/users/wiml/orgs', 'repos_url': 'https://api.github.com/users/wiml/repos', 'events_url': 'https://api.github.com/users/wiml/events{/privacy}', 'received_events_url': 'https://api.github.com/users/wiml/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-04-07T03:00:34Z,2020-04-08T06:13:08Z,2020-04-08T06:12:51Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1246', 'html_url': 'https://github.com/twisted/twisted/pull/1246', 'diff_url': 'https://github.com/twisted/twisted/pull/1246.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1246.patch'}","## Contributor Checklist:
* [X] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9572
* [X] The changes pass minimal style checks
* [X] I have created a newsfragment in `src/twisted/conch/newsfragments/9572.bugfix`
* [X] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review
",
862,https://api.github.com/repos/twisted/twisted/issues/1245,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1245/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1245/comments,https://api.github.com/repos/twisted/twisted/issues/1245/events,https://github.com/twisted/twisted/pull/1245,592510275,MDExOlB1bGxSZXF1ZXN0Mzk3NDc4NzI3,1245,[#9793] Remove some unported modules and now unused code from twisted.python,"{'login': 'hawkowl', 'id': 3307100, 'node_id': 'MDQ6VXNlcjMzMDcxMDA=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/3307100?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/hawkowl', 'html_url': 'https://github.com/hawkowl', 'followers_url': 'https://api.github.com/users/hawkowl/followers', 'following_url': 'https://api.github.com/users/hawkowl/following{/other_user}', 'gists_url': 'https://api.github.com/users/hawkowl/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/hawkowl/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/hawkowl/subscriptions', 'organizations_url': 'https://api.github.com/users/hawkowl/orgs', 'repos_url': 'https://api.github.com/users/hawkowl/repos', 'events_url': 'https://api.github.com/users/hawkowl/events{/privacy}', 'received_events_url': 'https://api.github.com/users/hawkowl/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-04-02T10:06:14Z,2020-04-08T22:41:58Z,2020-04-08T21:55:56Z,MEMBER,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1245', 'html_url': 'https://github.com/twisted/twisted/pull/1245', 'diff_url': 'https://github.com/twisted/twisted/pull/1245.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1245.patch'}",https://twistedmatrix.com/trac/ticket/9793#ticket,
863,https://api.github.com/repos/twisted/twisted/issues/1244,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1244/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1244/comments,https://api.github.com/repos/twisted/twisted/issues/1244/events,https://github.com/twisted/twisted/pull/1244,592374406,MDExOlB1bGxSZXF1ZXN0Mzk3MzY5NTAx,1244,[4964] Object `trans` inconsistent after exception,"{'login': 'tonal', 'id': 316216, 'node_id': 'MDQ6VXNlcjMxNjIxNg==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/316216?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/tonal', 'html_url': 'https://github.com/tonal', 'followers_url': 'https://api.github.com/users/tonal/followers', 'following_url': 'https://api.github.com/users/tonal/following{/other_user}', 'gists_url': 'https://api.github.com/users/tonal/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/tonal/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/tonal/subscriptions', 'organizations_url': 'https://api.github.com/users/tonal/orgs', 'repos_url': 'https://api.github.com/users/tonal/repos', 'events_url': 'https://api.github.com/users/tonal/events{/privacy}', 'received_events_url': 'https://api.github.com/users/tonal/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,0,2020-04-02T05:47:41Z,2020-07-19T01:55:27Z,,NONE,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1244', 'html_url': 'https://github.com/twisted/twisted/pull/1244', 'diff_url': 'https://github.com/twisted/twisted/pull/1244.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1244.patch'}","In method `_runInteraction` object `trans` inconsistent after raise exception in interaction.
See https://twistedmatrix.com/trac/ticket/4964 for example.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/4964
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [ ] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
864,https://api.github.com/repos/twisted/twisted/issues/1243,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1243/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1243/comments,https://api.github.com/repos/twisted/twisted/issues/1243/events,https://github.com/twisted/twisted/pull/1243,590190024,MDExOlB1bGxSZXF1ZXN0Mzk1NTY4MTYz,1243,[#9791] Remove .3only.py files and reintegrate them into the regular test files,"{'login': 'hawkowl', 'id': 3307100, 'node_id': 'MDQ6VXNlcjMzMDcxMDA=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/3307100?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/hawkowl', 'html_url': 'https://github.com/hawkowl', 'followers_url': 'https://api.github.com/users/hawkowl/followers', 'following_url': 'https://api.github.com/users/hawkowl/following{/other_user}', 'gists_url': 'https://api.github.com/users/hawkowl/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/hawkowl/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/hawkowl/subscriptions', 'organizations_url': 'https://api.github.com/users/hawkowl/orgs', 'repos_url': 'https://api.github.com/users/hawkowl/repos', 'events_url': 'https://api.github.com/users/hawkowl/events{/privacy}', 'received_events_url': 'https://api.github.com/users/hawkowl/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-03-30T10:48:51Z,2020-04-01T10:15:36Z,2020-04-01T10:15:23Z,MEMBER,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1243', 'html_url': 'https://github.com/twisted/twisted/pull/1243', 'diff_url': 'https://github.com/twisted/twisted/pull/1243.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1243.patch'}","Also clean up some PY3 checks in those files while I'm there.
Trac: https://twistedmatrix.com/trac/ticket/9791#ticket",
865,https://api.github.com/repos/twisted/twisted/issues/1242,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1242/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1242/comments,https://api.github.com/repos/twisted/twisted/issues/1242/events,https://github.com/twisted/twisted/pull/1242,590077232,MDExOlB1bGxSZXF1ZXN0Mzk1NDc0OTA4,1242,[#9789] Remove _oldstyle and things that use it.,"{'login': 'hawkowl', 'id': 3307100, 'node_id': 'MDQ6VXNlcjMzMDcxMDA=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/3307100?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/hawkowl', 'html_url': 'https://github.com/hawkowl', 'followers_url': 'https://api.github.com/users/hawkowl/followers', 'following_url': 'https://api.github.com/users/hawkowl/following{/other_user}', 'gists_url': 'https://api.github.com/users/hawkowl/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/hawkowl/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/hawkowl/subscriptions', 'organizations_url': 'https://api.github.com/users/hawkowl/orgs', 'repos_url': 'https://api.github.com/users/hawkowl/repos', 'events_url': 'https://api.github.com/users/hawkowl/events{/privacy}', 'received_events_url': 'https://api.github.com/users/hawkowl/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-03-30T08:02:27Z,2020-04-08T22:41:31Z,2020-04-08T22:41:25Z,MEMBER,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1242', 'html_url': 'https://github.com/twisted/twisted/pull/1242', 'diff_url': 'https://github.com/twisted/twisted/pull/1242.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1242.patch'}",https://twistedmatrix.com/trac/ticket/9789,
866,https://api.github.com/repos/twisted/twisted/issues/1241,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1241/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1241/comments,https://api.github.com/repos/twisted/twisted/issues/1241/events,https://github.com/twisted/twisted/pull/1241,590052503,MDExOlB1bGxSZXF1ZXN0Mzk1NDU0Njk2,1241,[#9790] Remove support for Python 2 in _setup.py,"{'login': 'hawkowl', 'id': 3307100, 'node_id': 'MDQ6VXNlcjMzMDcxMDA=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/3307100?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/hawkowl', 'html_url': 'https://github.com/hawkowl', 'followers_url': 'https://api.github.com/users/hawkowl/followers', 'following_url': 'https://api.github.com/users/hawkowl/following{/other_user}', 'gists_url': 'https://api.github.com/users/hawkowl/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/hawkowl/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/hawkowl/subscriptions', 'organizations_url': 'https://api.github.com/users/hawkowl/orgs', 'repos_url': 'https://api.github.com/users/hawkowl/repos', 'events_url': 'https://api.github.com/users/hawkowl/events{/privacy}', 'received_events_url': 'https://api.github.com/users/hawkowl/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-03-30T07:18:21Z,2020-04-09T00:02:23Z,2020-04-09T00:02:18Z,MEMBER,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1241', 'html_url': 'https://github.com/twisted/twisted/pull/1241', 'diff_url': 'https://github.com/twisted/twisted/pull/1241.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1241.patch'}","https://twistedmatrix.com/trac/ticket/9790#ticket
This also removes some old OSes (solaris 10???) and bumps a few dependencies to be simpler (idna mostly). It also has the py2 removal changelog entry.",
867,https://api.github.com/repos/twisted/twisted/issues/1240,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1240/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1240/comments,https://api.github.com/repos/twisted/twisted/issues/1240/events,https://github.com/twisted/twisted/pull/1240,589705454,MDExOlB1bGxSZXF1ZXN0Mzk1MTg4NjIx,1240,[9778] unregister processes before calling back to protocol's processEnded,"{'login': 'altendky', 'id': 543719, 'node_id': 'MDQ6VXNlcjU0MzcxOQ==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/543719?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/altendky', 'html_url': 'https://github.com/altendky', 'followers_url': 'https://api.github.com/users/altendky/followers', 'following_url': 'https://api.github.com/users/altendky/following{/other_user}', 'gists_url': 'https://api.github.com/users/altendky/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/altendky/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/altendky/subscriptions', 'organizations_url': 'https://api.github.com/users/altendky/orgs', 'repos_url': 'https://api.github.com/users/altendky/repos', 'events_url': 'https://api.github.com/users/altendky/events{/privacy}', 'received_events_url': 'https://api.github.com/users/altendky/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-03-29T03:11:00Z,2020-04-11T21:30:48Z,2020-04-11T21:30:48Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1240', 'html_url': 'https://github.com/twisted/twisted/pull/1240', 'diff_url': 'https://github.com/twisted/twisted/pull/1240.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1240.patch'}",https://twistedmatrix.com/trac/ticket/9778,
868,https://api.github.com/repos/twisted/twisted/issues/1239,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1239/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1239/comments,https://api.github.com/repos/twisted/twisted/issues/1239/events,https://github.com/twisted/twisted/pull/1239,589696296,MDExOlB1bGxSZXF1ZXN0Mzk1MTgxOTc4,1239,[9788] Remove Python 2.7-only _sendmsg.c module,"{'login': 'twm', 'id': 43662, 'node_id': 'MDQ6VXNlcjQzNjYy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/43662?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/twm', 'html_url': 'https://github.com/twm', 'followers_url': 'https://api.github.com/users/twm/followers', 'following_url': 'https://api.github.com/users/twm/following{/other_user}', 'gists_url': 'https://api.github.com/users/twm/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/twm/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/twm/subscriptions', 'organizations_url': 'https://api.github.com/users/twm/orgs', 'repos_url': 'https://api.github.com/users/twm/repos', 'events_url': 'https://api.github.com/users/twm/events{/privacy}', 'received_events_url': 'https://api.github.com/users/twm/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,"{'login': 'twm', 'id': 43662, 'node_id': 'MDQ6VXNlcjQzNjYy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/43662?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/twm', 'html_url': 'https://github.com/twm', 'followers_url': 'https://api.github.com/users/twm/followers', 'following_url': 'https://api.github.com/users/twm/following{/other_user}', 'gists_url': 'https://api.github.com/users/twm/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/twm/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/twm/subscriptions', 'organizations_url': 'https://api.github.com/users/twm/orgs', 'repos_url': 'https://api.github.com/users/twm/repos', 'events_url': 'https://api.github.com/users/twm/events{/privacy}', 'received_events_url': 'https://api.github.com/users/twm/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'twm', 'id': 43662, 'node_id': 'MDQ6VXNlcjQzNjYy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/43662?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/twm', 'html_url': 'https://github.com/twm', 'followers_url': 'https://api.github.com/users/twm/followers', 'following_url': 'https://api.github.com/users/twm/following{/other_user}', 'gists_url': 'https://api.github.com/users/twm/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/twm/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/twm/subscriptions', 'organizations_url': 'https://api.github.com/users/twm/orgs', 'repos_url': 'https://api.github.com/users/twm/repos', 'events_url': 'https://api.github.com/users/twm/events{/privacy}', 'received_events_url': 'https://api.github.com/users/twm/received_events', 'type': 'User', 'site_admin': False}]",,0,2020-03-29T01:41:08Z,2020-04-02T09:43:09Z,2020-04-02T09:42:54Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1239', 'html_url': 'https://github.com/twisted/twisted/pull/1239', 'diff_url': 'https://github.com/twisted/twisted/pull/1239.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1239.patch'}","- [x] Remove deprecated module
- [ ] Merge forward once #1238 is in (so the build goes green)
- [ ] Deprecate `twisted.python.sendmsg`?
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9788
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [ ] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
869,https://api.github.com/repos/twisted/twisted/issues/1238,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1238/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1238/comments,https://api.github.com/repos/twisted/twisted/issues/1238/events,https://github.com/twisted/twisted/pull/1238,589522351,MDExOlB1bGxSZXF1ZXN0Mzk1MDU2ODY2,1238,[#9784] Remove Python 2 from CI,"{'login': 'hawkowl', 'id': 3307100, 'node_id': 'MDQ6VXNlcjMzMDcxMDA=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/3307100?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/hawkowl', 'html_url': 'https://github.com/hawkowl', 'followers_url': 'https://api.github.com/users/hawkowl/followers', 'following_url': 'https://api.github.com/users/hawkowl/following{/other_user}', 'gists_url': 'https://api.github.com/users/hawkowl/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/hawkowl/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/hawkowl/subscriptions', 'organizations_url': 'https://api.github.com/users/hawkowl/orgs', 'repos_url': 'https://api.github.com/users/hawkowl/repos', 'events_url': 'https://api.github.com/users/hawkowl/events{/privacy}', 'received_events_url': 'https://api.github.com/users/hawkowl/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-03-28T06:54:58Z,2020-03-29T07:27:35Z,2020-03-29T06:49:23Z,MEMBER,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1238', 'html_url': 'https://github.com/twisted/twisted/pull/1238', 'diff_url': 'https://github.com/twisted/twisted/pull/1238.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1238.patch'}","https://twistedmatrix.com/trac/ticket/9784
Since the config for Azure Pipelines is done in the web UI, I've gone ahead and done that already.",
870,https://api.github.com/repos/twisted/twisted/issues/1237,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1237/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1237/comments,https://api.github.com/repos/twisted/twisted/issues/1237/events,https://github.com/twisted/twisted/pull/1237,589196629,MDExOlB1bGxSZXF1ZXN0Mzk0ODA2MDI0,1237,Make AsyncioSelectorReactor.seconds() return an epoch time,"{'login': 'richvdh', 'id': 1389908, 'node_id': 'MDQ6VXNlcjEzODk5MDg=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1389908?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/richvdh', 'html_url': 'https://github.com/richvdh', 'followers_url': 'https://api.github.com/users/richvdh/followers', 'following_url': 'https://api.github.com/users/richvdh/following{/other_user}', 'gists_url': 'https://api.github.com/users/richvdh/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/richvdh/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/richvdh/subscriptions', 'organizations_url': 'https://api.github.com/users/richvdh/orgs', 'repos_url': 'https://api.github.com/users/richvdh/repos', 'events_url': 'https://api.github.com/users/richvdh/events{/privacy}', 'received_events_url': 'https://api.github.com/users/richvdh/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,4,2020-03-27T15:03:47Z,2020-04-11T20:00:13Z,2020-03-30T12:26:13Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1237', 'html_url': 'https://github.com/twisted/twisted/pull/1237', 'diff_url': 'https://github.com/twisted/twisted/pull/1237.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1237.patch'}",Fixes https://twistedmatrix.com/trac/ticket/9787.,
871,https://api.github.com/repos/twisted/twisted/issues/1236,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1236/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1236/comments,https://api.github.com/repos/twisted/twisted/issues/1236/events,https://github.com/twisted/twisted/pull/1236,588958216,MDExOlB1bGxSZXF1ZXN0Mzk0NjA4Nzc4,1236,[#9785] Use Python 3 for building API and narrative documentation,"{'login': 'hawkowl', 'id': 3307100, 'node_id': 'MDQ6VXNlcjMzMDcxMDA=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/3307100?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/hawkowl', 'html_url': 'https://github.com/hawkowl', 'followers_url': 'https://api.github.com/users/hawkowl/followers', 'following_url': 'https://api.github.com/users/hawkowl/following{/other_user}', 'gists_url': 'https://api.github.com/users/hawkowl/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/hawkowl/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/hawkowl/subscriptions', 'organizations_url': 'https://api.github.com/users/hawkowl/orgs', 'repos_url': 'https://api.github.com/users/hawkowl/repos', 'events_url': 'https://api.github.com/users/hawkowl/events{/privacy}', 'received_events_url': 'https://api.github.com/users/hawkowl/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-03-27T08:05:26Z,2020-03-29T10:36:31Z,2020-03-28T06:52:08Z,MEMBER,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1236', 'html_url': 'https://github.com/twisted/twisted/pull/1236', 'diff_url': 'https://github.com/twisted/twisted/pull/1236.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1236.patch'}","https://twistedmatrix.com/trac/ticket/9785
This uses a hash of pydoctor while it's unreleased.",
872,https://api.github.com/repos/twisted/twisted/issues/1235,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1235/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1235/comments,https://api.github.com/repos/twisted/twisted/issues/1235/events,https://github.com/twisted/twisted/pull/1235,588551800,MDExOlB1bGxSZXF1ZXN0Mzk0Mjc3Mjk3,1235,[9786] Fix PySourceAuthority on Python 3,"{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-03-26T16:26:43Z,2020-03-28T22:10:59Z,2020-03-28T22:10:55Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1235', 'html_url': 'https://github.com/twisted/twisted/pull/1235', 'diff_url': 'https://github.com/twisted/twisted/pull/1235.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1235.patch'}","Author: rodrigc
Reviewer:
Fixes: ticket:9786
Without this fix, trying to use follow the example at: https://twisted.readthedocs.io/en/twisted-18.9.0/names/howto/names.html#creating-an-authoritative-server
with:
```
twistd -n dns --pyzone example-domain.com
```
and then:
```
dig -t any example-domain.com @127.0.0.1
```
will result in an error:
```
2020-03-25T23:38:56-0700 [DNSDatagramProtocol (UDP)] Unhandled Error
Traceback (most recent call last):
File ""/Users/crodrigues/venv-twisted/lib/python3.7/site-packages/Twisted-20.3.0.dev0-py3.7-macosx-10.15-x86_64.egg/twisted/names/dns.py"", line 3098, in datagramReceived
self.controller.messageReceived(m, self, addr)
File ""/Users/crodrigues/venv-twisted/lib/python3.7/site-packages/Twisted-20.3.0.dev0-py3.7-macosx-10.15-x86_64.egg/twisted/names/server.py"", line 554, in messageReceived
self.handleQuery(message, proto, address)
File ""/Users/crodrigues/venv-twisted/lib/python3.7/site-packages/Twisted-20.3.0.dev0-py3.7-macosx-10.15-x86_64.egg/twisted/names/server.py"", line 381, in handleQuery
return self.resolver.query(query).addCallback(
File ""/Users/crodrigues/venv-twisted/lib/python3.7/site-packages/Twisted-20.3.0.dev0-py3.7-macosx-10.15-x86_64.egg/twisted/names/common.py"", line 78, in query
return defer.maybeDeferred(method, query.name.name, timeout)
--- ---
File ""/Users/crodrigues/venv-twisted/lib/python3.7/site-packages/Twisted-20.3.0.dev0-py3.7-macosx-10.15-x86_64.egg/twisted/internet/defer.py"", line 151, in maybeDeferred
result = f(*args, **kw)
File ""/Users/crodrigues/venv-twisted/lib/python3.7/site-packages/Twisted-20.3.0.dev0-py3.7-macosx-10.15-x86_64.egg/twisted/names/resolve.py"", line 94, in lookupAllRecords
d = self.resolvers[0].lookupAllRecords(name, timeout)
File ""/Users/crodrigues/venv-twisted/lib/python3.7/site-packages/Twisted-20.3.0.dev0-py3.7-macosx-10.15-x86_64.egg/twisted/names/common.py"", line 175, in lookupAllRecords
timeout)
File ""/Users/crodrigues/venv-twisted/lib/python3.7/site-packages/Twisted-20.3.0.dev0-py3.7-macosx-10.15-x86_64.egg/twisted/names/authority.py"", line 228, in _lookup
if dns._isSubdomainOf(name, self.soa[0]):
File ""/Users/crodrigues/venv-twisted/lib/python3.7/site-packages/Twisted-20.3.0.dev0-py3.7-macosx-10.15-x86_64.egg/twisted/names/dns.py"", line 310, in _isSubdomainOf
ancestorLabels = _nameToLabels(ancestorName.lower())
File ""/Users/crodrigues/venv-twisted/lib/python3.7/site-packages/Twisted-20.3.0.dev0-py3.7-macosx-10.15-x86_64.egg/twisted/names/dns.py"", line 245, in _nameToLabels
labels = name.split(b'.')
builtins.TypeError: must be str or None, not bytes
```",
873,https://api.github.com/repos/twisted/twisted/issues/1234,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1234/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1234/comments,https://api.github.com/repos/twisted/twisted/issues/1234/events,https://github.com/twisted/twisted/pull/1234,587388106,MDExOlB1bGxSZXF1ZXN0MzkzMzQyMDA4,1234,[#9782] Remove twisted.news,"{'login': 'hawkowl', 'id': 3307100, 'node_id': 'MDQ6VXNlcjMzMDcxMDA=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/3307100?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/hawkowl', 'html_url': 'https://github.com/hawkowl', 'followers_url': 'https://api.github.com/users/hawkowl/followers', 'following_url': 'https://api.github.com/users/hawkowl/following{/other_user}', 'gists_url': 'https://api.github.com/users/hawkowl/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/hawkowl/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/hawkowl/subscriptions', 'organizations_url': 'https://api.github.com/users/hawkowl/orgs', 'repos_url': 'https://api.github.com/users/hawkowl/repos', 'events_url': 'https://api.github.com/users/hawkowl/events{/privacy}', 'received_events_url': 'https://api.github.com/users/hawkowl/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-03-25T01:58:13Z,2020-03-30T08:01:02Z,2020-03-30T08:00:57Z,MEMBER,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1234', 'html_url': 'https://github.com/twisted/twisted/pull/1234', 'diff_url': 'https://github.com/twisted/twisted/pull/1234.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1234.patch'}",Trac link: https://twistedmatrix.com/trac/ticket/9782,
874,https://api.github.com/repos/twisted/twisted/issues/1233,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1233/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1233/comments,https://api.github.com/repos/twisted/twisted/issues/1233/events,https://github.com/twisted/twisted/pull/1233,587193320,MDExOlB1bGxSZXF1ZXN0MzkzMTg2NDYx,1233,"Change iterkeys() to keys(), since iterkeys() does not exist in Python 3","{'login': 'rodrigc', 'id': 1895943, 'node_id': 'MDQ6VXNlcjE4OTU5NDM=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/1895943?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rodrigc', 'html_url': 'https://github.com/rodrigc', 'followers_url': 'https://api.github.com/users/rodrigc/followers', 'following_url': 'https://api.github.com/users/rodrigc/following{/other_user}', 'gists_url': 'https://api.github.com/users/rodrigc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rodrigc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rodrigc/subscriptions', 'organizations_url': 'https://api.github.com/users/rodrigc/orgs', 'repos_url': 'https://api.github.com/users/rodrigc/repos', 'events_url': 'https://api.github.com/users/rodrigc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rodrigc/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-03-24T18:30:04Z,2020-03-25T19:40:53Z,2020-03-25T19:40:49Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1233', 'html_url': 'https://github.com/twisted/twisted/pull/1233', 'diff_url': 'https://github.com/twisted/twisted/pull/1233.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1233.patch'}"," Author: rodrigc
Reviewer: twm
Fixes: ticket:9783
Without this fix, this example: https://twisted.readthedocs.io/en/twisted-18.9.0/names/howto/names.html#creating-an-authoritative-server
Then this command:
```
twistd -n dns --pyzone example-domain.com
```
fails with:
```
Traceback (most recent call last):
File ""/Users/craigrodrigues/twisted-venv/lib/python3.7/site-packages/twisted/names/tap.py"", line 95, in postOptions
self.zones.append(authority.PySourceAuthority(f))
File ""/Users/craigrodrigues/twisted-venv/lib/python3.7/site-packages/twisted/names/authority.py"", line 90, in __init__
self.loadFile(filename)
File ""/Users/craigrodrigues/twisted-venv/lib/python3.7/site-packages/twisted/names/authority.py"", line 290, in loadFile
g, l = self.setupConfigNamespace(), {}
File ""/Users/craigrodrigues/twisted-venv/lib/python3.7/site-packages/twisted/names/authority.py"", line 308, in setupConfigNamespace
items = dns.__dict__.iterkeys()
```",
875,https://api.github.com/repos/twisted/twisted/issues/1232,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1232/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1232/comments,https://api.github.com/repos/twisted/twisted/issues/1232/events,https://github.com/twisted/twisted/pull/1232,585042409,MDExOlB1bGxSZXF1ZXN0MzkxNTEwMDg1,1232,Fix AsyncioSelectorReactor.callLater().reset() and fix memory leaks,"{'login': 'IlyaSkriblovsky', 'id': 909638, 'node_id': 'MDQ6VXNlcjkwOTYzOA==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/909638?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/IlyaSkriblovsky', 'html_url': 'https://github.com/IlyaSkriblovsky', 'followers_url': 'https://api.github.com/users/IlyaSkriblovsky/followers', 'following_url': 'https://api.github.com/users/IlyaSkriblovsky/following{/other_user}', 'gists_url': 'https://api.github.com/users/IlyaSkriblovsky/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/IlyaSkriblovsky/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/IlyaSkriblovsky/subscriptions', 'organizations_url': 'https://api.github.com/users/IlyaSkriblovsky/orgs', 'repos_url': 'https://api.github.com/users/IlyaSkriblovsky/repos', 'events_url': 'https://api.github.com/users/IlyaSkriblovsky/events{/privacy}', 'received_events_url': 'https://api.github.com/users/IlyaSkriblovsky/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,7,2020-03-20T12:38:24Z,2020-04-22T22:53:12Z,2020-04-22T22:53:12Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1232', 'html_url': 'https://github.com/twisted/twisted/pull/1232', 'diff_url': 'https://github.com/twisted/twisted/pull/1232.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1232.patch'}","`AsyncioSelectorReactor.callLater()` returns `DelayedCall`s whose `reset()` method doesn't work as expected.
1. `reset()` to later time simply doesn't work: timer gets fired at original time
2. `reset()` to earlier works, but original internal asyncio's timer isn't cancelled and this causes an exception in `AsyncioSelectorReactor`'s internal code
3. This is not neccessarily a bug, but worth to be fixed too: current implementation of `AsyncioSelectorReactor.callLater()` leaves many cyclically linked objects after timer is fired. For the app that uses timers heavily this leads to significally higher memory usage (and cpu too due to much more often GC invocations)
Here the gist with runnable demos of all three issues: https://gist.github.com/IlyaSkriblovsky/58876c9f97c617875e7b739fd0447807
Here is the RAM usage % graph from my servers that run timer-hungry twisted application. I've tried to migrate them from epollreactor to asyncioreactor for two times, but was forced to rollback and investigate the issue due to unusual RAM usage.
![2020-03-19_22-51 (1)](https://user-images.githubusercontent.com/909638/77161613-2925e780-6abb-11ea-990b-b30cd9eb39d3.png)
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9780
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
876,https://api.github.com/repos/twisted/twisted/issues/1231,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1231/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1231/comments,https://api.github.com/repos/twisted/twisted/issues/1231/events,https://github.com/twisted/twisted/pull/1231,582524923,MDExOlB1bGxSZXF1ZXN0Mzg5NDMyNTcy,1231,[9777] orphaned inotify fd,"{'login': 'ChaoticMind', 'id': 395384, 'node_id': 'MDQ6VXNlcjM5NTM4NA==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/395384?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ChaoticMind', 'html_url': 'https://github.com/ChaoticMind', 'followers_url': 'https://api.github.com/users/ChaoticMind/followers', 'following_url': 'https://api.github.com/users/ChaoticMind/following{/other_user}', 'gists_url': 'https://api.github.com/users/ChaoticMind/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ChaoticMind/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ChaoticMind/subscriptions', 'organizations_url': 'https://api.github.com/users/ChaoticMind/orgs', 'repos_url': 'https://api.github.com/users/ChaoticMind/repos', 'events_url': 'https://api.github.com/users/ChaoticMind/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ChaoticMind/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-03-16T18:44:10Z,2020-04-22T08:41:32Z,2020-04-22T08:41:32Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1231', 'html_url': 'https://github.com/twisted/twisted/pull/1231', 'diff_url': 'https://github.com/twisted/twisted/pull/1231.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1231.patch'}","* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9777
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
877,https://api.github.com/repos/twisted/twisted/issues/1230,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1230/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1230/comments,https://api.github.com/repos/twisted/twisted/issues/1230/events,https://github.com/twisted/twisted/pull/1230,581901887,MDExOlB1bGxSZXF1ZXN0Mzg4ODk5NjQ2,1230,[9775] Avoid log failure when reaping of None PID is requested,"{'login': 'altendky', 'id': 543719, 'node_id': 'MDQ6VXNlcjU0MzcxOQ==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/543719?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/altendky', 'html_url': 'https://github.com/altendky', 'followers_url': 'https://api.github.com/users/altendky/followers', 'following_url': 'https://api.github.com/users/altendky/following{/other_user}', 'gists_url': 'https://api.github.com/users/altendky/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/altendky/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/altendky/subscriptions', 'organizations_url': 'https://api.github.com/users/altendky/orgs', 'repos_url': 'https://api.github.com/users/altendky/repos', 'events_url': 'https://api.github.com/users/altendky/events{/privacy}', 'received_events_url': 'https://api.github.com/users/altendky/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-03-16T00:52:58Z,2020-04-12T21:27:36Z,2020-04-12T21:27:35Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1230', 'html_url': 'https://github.com/twisted/twisted/pull/1230', 'diff_url': 'https://github.com/twisted/twisted/pull/1230.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1230.patch'}","https://twistedmatrix.com/trac/ticket/9775
",
878,https://api.github.com/repos/twisted/twisted/issues/1229,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1229/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1229/comments,https://api.github.com/repos/twisted/twisted/issues/1229/events,https://github.com/twisted/twisted/pull/1229,581472705,MDExOlB1bGxSZXF1ZXN0Mzg4NTMxNTU0,1229,[9774] Remove t.web.client global reactor import,"{'login': 'twm', 'id': 43662, 'node_id': 'MDQ6VXNlcjQzNjYy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/43662?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/twm', 'html_url': 'https://github.com/twm', 'followers_url': 'https://api.github.com/users/twm/followers', 'following_url': 'https://api.github.com/users/twm/following{/other_user}', 'gists_url': 'https://api.github.com/users/twm/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/twm/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/twm/subscriptions', 'organizations_url': 'https://api.github.com/users/twm/orgs', 'repos_url': 'https://api.github.com/users/twm/repos', 'events_url': 'https://api.github.com/users/twm/events{/privacy}', 'received_events_url': 'https://api.github.com/users/twm/received_events', 'type': 'User', 'site_admin': False}","[{'id': 712759900, 'node_id': 'MDU6TGFiZWw3MTI3NTk5MDA=', 'url': 'https://api.github.com/repos/twisted/twisted/labels/review%20required', 'name': 'review required', 'color': '1d76db', 'default': False, 'description': None}]",closed,False,,[],,1,2020-03-15T02:31:51Z,2020-03-21T19:26:50Z,2020-03-21T19:26:45Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1229', 'html_url': 'https://github.com/twisted/twisted/pull/1229', 'diff_url': 'https://github.com/twisted/twisted/pull/1229.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1229.patch'}","Replace a global reactor import with local imports to fix https://github.com/twisted/treq/issues/107.
I tested the import side effect manually like so:
```
$ build/py37-alldeps-nocov-posix/bin/python
Python 3.7.5 (default, Nov 7 2019, 10:50:52)
[GCC 8.3.0] on linux
Type ""help"", ""copyright"", ""credits"" or ""license"" for more information.
>>> import sys, twisted.web.client
>>> 'twisted.internet.reactor' in sys.modules
False
```
As this is a style guide thing, I don't think that it requires a specific automated test. Ideally we'd have a linter enforce the absence of this kind of import.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9774#ticket
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests. (N/A)
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
879,https://api.github.com/repos/twisted/twisted/issues/1228,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1228/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1228/comments,https://api.github.com/repos/twisted/twisted/issues/1228/events,https://github.com/twisted/twisted/pull/1228,580355515,MDExOlB1bGxSZXF1ZXN0Mzg3NTc5MDA1,1228,[#9772] Release 20.3.0,"{'login': 'hawkowl', 'id': 3307100, 'node_id': 'MDQ6VXNlcjMzMDcxMDA=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/3307100?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/hawkowl', 'html_url': 'https://github.com/hawkowl', 'followers_url': 'https://api.github.com/users/hawkowl/followers', 'following_url': 'https://api.github.com/users/hawkowl/following{/other_user}', 'gists_url': 'https://api.github.com/users/hawkowl/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/hawkowl/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/hawkowl/subscriptions', 'organizations_url': 'https://api.github.com/users/hawkowl/orgs', 'repos_url': 'https://api.github.com/users/hawkowl/repos', 'events_url': 'https://api.github.com/users/hawkowl/events{/privacy}', 'received_events_url': 'https://api.github.com/users/hawkowl/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-03-13T03:58:15Z,2020-03-20T13:14:19Z,2020-03-20T13:14:19Z,MEMBER,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1228', 'html_url': 'https://github.com/twisted/twisted/pull/1228', 'diff_url': 'https://github.com/twisted/twisted/pull/1228.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1228.patch'}",Trac link: https://twistedmatrix.com/trac/ticket/9772,
880,https://api.github.com/repos/twisted/twisted/issues/1227,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1227/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1227/comments,https://api.github.com/repos/twisted/twisted/issues/1227/events,https://github.com/twisted/twisted/pull/1227,577735746,MDExOlB1bGxSZXF1ZXN0Mzg1NDQ3MzIx,1227,6014 ipv6 host header literal support,"{'login': 'glyph', 'id': 716529, 'node_id': 'MDQ6VXNlcjcxNjUyOQ==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/716529?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/glyph', 'html_url': 'https://github.com/glyph', 'followers_url': 'https://api.github.com/users/glyph/followers', 'following_url': 'https://api.github.com/users/glyph/following{/other_user}', 'gists_url': 'https://api.github.com/users/glyph/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/glyph/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/glyph/subscriptions', 'organizations_url': 'https://api.github.com/users/glyph/orgs', 'repos_url': 'https://api.github.com/users/glyph/repos', 'events_url': 'https://api.github.com/users/glyph/events{/privacy}', 'received_events_url': 'https://api.github.com/users/glyph/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-03-09T08:30:29Z,2020-03-15T07:52:14Z,2020-03-15T07:52:10Z,MEMBER,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1227', 'html_url': 'https://github.com/twisted/twisted/pull/1227', 'diff_url': 'https://github.com/twisted/twisted/pull/1227.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1227.patch'}","## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/6014
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
881,https://api.github.com/repos/twisted/twisted/issues/1226,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1226/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1226/comments,https://api.github.com/repos/twisted/twisted/issues/1226/events,https://github.com/twisted/twisted/pull/1226,575569419,MDExOlB1bGxSZXF1ZXN0MzgzNjk3ODM0,1226,[9915] fix threading.rst grammar,"{'login': 'graingert', 'id': 413772, 'node_id': 'MDQ6VXNlcjQxMzc3Mg==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/413772?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/graingert', 'html_url': 'https://github.com/graingert', 'followers_url': 'https://api.github.com/users/graingert/followers', 'following_url': 'https://api.github.com/users/graingert/following{/other_user}', 'gists_url': 'https://api.github.com/users/graingert/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/graingert/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/graingert/subscriptions', 'organizations_url': 'https://api.github.com/users/graingert/orgs', 'repos_url': 'https://api.github.com/users/graingert/repos', 'events_url': 'https://api.github.com/users/graingert/events{/privacy}', 'received_events_url': 'https://api.github.com/users/graingert/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,0,2020-03-04T16:50:09Z,2020-08-27T21:59:59Z,,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1226', 'html_url': 'https://github.com/twisted/twisted/pull/1226', 'diff_url': 'https://github.com/twisted/twisted/pull/1226.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1226.patch'}","## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9915
* [ ] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [ ] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [ ] I have updated the automated tests.
* [ ] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
```",
882,https://api.github.com/repos/twisted/twisted/issues/1225,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1225/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1225/comments,https://api.github.com/repos/twisted/twisted/issues/1225/events,https://github.com/twisted/twisted/pull/1225,574713028,MDExOlB1bGxSZXF1ZXN0MzgyOTg4MDU1,1225,[9740] ESMTPSender: dont't force TLSv1.0 by default,"{'login': 'mmilata', 'id': 85857, 'node_id': 'MDQ6VXNlcjg1ODU3', 'avatar_url': 'https://avatars2.githubusercontent.com/u/85857?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mmilata', 'html_url': 'https://github.com/mmilata', 'followers_url': 'https://api.github.com/users/mmilata/followers', 'following_url': 'https://api.github.com/users/mmilata/following{/other_user}', 'gists_url': 'https://api.github.com/users/mmilata/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mmilata/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mmilata/subscriptions', 'organizations_url': 'https://api.github.com/users/mmilata/orgs', 'repos_url': 'https://api.github.com/users/mmilata/repos', 'events_url': 'https://api.github.com/users/mmilata/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mmilata/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,9,2020-03-03T14:36:55Z,2020-08-11T09:18:18Z,2020-03-28T01:17:27Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1225', 'html_url': 'https://github.com/twisted/twisted/pull/1225', 'diff_url': 'https://github.com/twisted/twisted/pull/1225.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1225.patch'}","Hello, I've also been bitten by matrix-org/synapse#6211 and would like to see if the fix is acceptable for inclusion in Twisted.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9740
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [ ] I have updated the automated tests.
* There doesn't seem to be a test that tests for specific TLS version but it's possible I haven't been looking hard enough.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
883,https://api.github.com/repos/twisted/twisted/issues/1224,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1224/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1224/comments,https://api.github.com/repos/twisted/twisted/issues/1224/events,https://github.com/twisted/twisted/pull/1224,569574813,MDExOlB1bGxSZXF1ZXN0Mzc4NzYyMzM5,1224,[9583] fix for enableSessions's behavior,"{'login': 'glyph', 'id': 716529, 'node_id': 'MDQ6VXNlcjcxNjUyOQ==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/716529?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/glyph', 'html_url': 'https://github.com/glyph', 'followers_url': 'https://api.github.com/users/glyph/followers', 'following_url': 'https://api.github.com/users/glyph/following{/other_user}', 'gists_url': 'https://api.github.com/users/glyph/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/glyph/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/glyph/subscriptions', 'organizations_url': 'https://api.github.com/users/glyph/orgs', 'repos_url': 'https://api.github.com/users/glyph/repos', 'events_url': 'https://api.github.com/users/glyph/events{/privacy}', 'received_events_url': 'https://api.github.com/users/glyph/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-02-23T23:06:06Z,2020-03-15T09:22:34Z,2020-03-15T09:22:30Z,MEMBER,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1224', 'html_url': 'https://github.com/twisted/twisted/pull/1224', 'diff_url': 'https://github.com/twisted/twisted/pull/1224.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1224.patch'}","## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9583
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
884,https://api.github.com/repos/twisted/twisted/issues/1223,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1223/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1223/comments,https://api.github.com/repos/twisted/twisted/issues/1223/events,https://github.com/twisted/twisted/pull/1223,569315228,MDExOlB1bGxSZXF1ZXN0Mzc4NTc1OTA2,1223,[9768] Migrate Azure pipeline config to in-repo YAML,"{'login': 'cdunklau', 'id': 882547, 'node_id': 'MDQ6VXNlcjg4MjU0Nw==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/882547?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/cdunklau', 'html_url': 'https://github.com/cdunklau', 'followers_url': 'https://api.github.com/users/cdunklau/followers', 'following_url': 'https://api.github.com/users/cdunklau/following{/other_user}', 'gists_url': 'https://api.github.com/users/cdunklau/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/cdunklau/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/cdunklau/subscriptions', 'organizations_url': 'https://api.github.com/users/cdunklau/orgs', 'repos_url': 'https://api.github.com/users/cdunklau/repos', 'events_url': 'https://api.github.com/users/cdunklau/events{/privacy}', 'received_events_url': 'https://api.github.com/users/cdunklau/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,15,2020-02-22T10:29:49Z,2020-04-02T09:51:05Z,2020-04-02T09:01:45Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1223', 'html_url': 'https://github.com/twisted/twisted/pull/1223', 'diff_url': 'https://github.com/twisted/twisted/pull/1223.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1223.patch'}","~This is still super rough, I have no idea if it will even pass validation, but should be enough to at least get the Azure-side bits referencing it.~
So I tested it on a personal ~ADO~ Azure DevOps (happy @glyph ? 😁 ) thing, and after much gnashing of teeth, got it to a working state.
For reference, the existing ""Classic UI"" configuration:
- UI shots here https://imgur.com/a/CnlKwS8
- result of ""viewing"" the pipeline config here https://gist.github.com/cdunklau/b980eed48741bfd7235f5952ce3b5d98
Pipeline runs in my personal env: https://dev.azure.com/cdunklau1/twisted-scratch/_build?definitionId=1&_a=summary
## Integration Plan
After this gets merged, the Azure side stuff needs to be tweaked for this config to have any effect. Suggested process:
1. Disable the triggers (CI and PR) for the existing ""classic UI"" pipeline.
2. Create a new pipeline, point it at the `azure-pipelines/tests_pipeline.yml` file (would be in trunk at this point).
3. Test (???) not sure what to cover here, but at least the CI and PR triggers should be validated:
- commit + push to trunk, make sure a pipeline run starts
- make a new PR, make sure a pipeline run starts
4. Ask for review from a few eyes to compare the two pipelines
5. Once everyone's satisfied, delete the old pipeline
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9768
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
885,https://api.github.com/repos/twisted/twisted/issues/1222,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1222/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1222/comments,https://api.github.com/repos/twisted/twisted/issues/1222/events,https://github.com/twisted/twisted/pull/1222,569261623,MDExOlB1bGxSZXF1ZXN0Mzc4NTM2MjYz,1222,Adding BrowserLikePolicyForHTTPS to __all__,"{'login': 'pappacena', 'id': 1213561, 'node_id': 'MDQ6VXNlcjEyMTM1NjE=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/1213561?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/pappacena', 'html_url': 'https://github.com/pappacena', 'followers_url': 'https://api.github.com/users/pappacena/followers', 'following_url': 'https://api.github.com/users/pappacena/following{/other_user}', 'gists_url': 'https://api.github.com/users/pappacena/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/pappacena/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/pappacena/subscriptions', 'organizations_url': 'https://api.github.com/users/pappacena/orgs', 'repos_url': 'https://api.github.com/users/pappacena/repos', 'events_url': 'https://api.github.com/users/pappacena/events{/privacy}', 'received_events_url': 'https://api.github.com/users/pappacena/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,4,2020-02-22T01:44:50Z,2020-03-04T11:11:53Z,2020-03-04T05:54:52Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1222', 'html_url': 'https://github.com/twisted/twisted/pull/1222', 'diff_url': 'https://github.com/twisted/twisted/pull/1222.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1222.patch'}","On twisted.web.client, `BrowserLikePolicyForHTTPS` is not listed on `__all__`, although the user is explicitly told to use it on `WebClientContextFactory` comments, for example. The ticket on trac is here: https://twistedmatrix.com/trac/ticket/9769 .
I know this is a super small kind of irrelevant PR, but I'm proposing it for the sake of consistency and to suppress some warning messages I'm having in Launchpad.net development. :-)",
886,https://api.github.com/repos/twisted/twisted/issues/1221,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1221/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1221/comments,https://api.github.com/repos/twisted/twisted/issues/1221/events,https://github.com/twisted/twisted/pull/1221,567958664,MDExOlB1bGxSZXF1ZXN0Mzc3NDczNjYz,1221,Merge pull request #1 from twisted/trunk,"{'login': 'eevelweezel', 'id': 5155920, 'node_id': 'MDQ6VXNlcjUxNTU5MjA=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/5155920?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/eevelweezel', 'html_url': 'https://github.com/eevelweezel', 'followers_url': 'https://api.github.com/users/eevelweezel/followers', 'following_url': 'https://api.github.com/users/eevelweezel/following{/other_user}', 'gists_url': 'https://api.github.com/users/eevelweezel/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/eevelweezel/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/eevelweezel/subscriptions', 'organizations_url': 'https://api.github.com/users/eevelweezel/orgs', 'repos_url': 'https://api.github.com/users/eevelweezel/repos', 'events_url': 'https://api.github.com/users/eevelweezel/events{/privacy}', 'received_events_url': 'https://api.github.com/users/eevelweezel/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-02-20T00:24:56Z,2020-02-20T00:26:37Z,2020-02-20T00:26:37Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1221', 'html_url': 'https://github.com/twisted/twisted/pull/1221', 'diff_url': 'https://github.com/twisted/twisted/pull/1221.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1221.patch'}","update fork
",
887,https://api.github.com/repos/twisted/twisted/issues/1220,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1220/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1220/comments,https://api.github.com/repos/twisted/twisted/issues/1220/events,https://github.com/twisted/twisted/pull/1220,556698999,MDExOlB1bGxSZXF1ZXN0MzY4NDIyMzMx,1220,fix windows build failures,"{'login': 'glyph', 'id': 716529, 'node_id': 'MDQ6VXNlcjcxNjUyOQ==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/716529?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/glyph', 'html_url': 'https://github.com/glyph', 'followers_url': 'https://api.github.com/users/glyph/followers', 'following_url': 'https://api.github.com/users/glyph/following{/other_user}', 'gists_url': 'https://api.github.com/users/glyph/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/glyph/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/glyph/subscriptions', 'organizations_url': 'https://api.github.com/users/glyph/orgs', 'repos_url': 'https://api.github.com/users/glyph/repos', 'events_url': 'https://api.github.com/users/glyph/events{/privacy}', 'received_events_url': 'https://api.github.com/users/glyph/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-01-29T08:00:23Z,2020-02-18T09:46:02Z,2020-02-18T09:45:59Z,MEMBER,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1220', 'html_url': 'https://github.com/twisted/twisted/pull/1220', 'diff_url': 'https://github.com/twisted/twisted/pull/1220.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1220.patch'}","## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9760
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
888,https://api.github.com/repos/twisted/twisted/issues/1219,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1219/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1219/comments,https://api.github.com/repos/twisted/twisted/issues/1219/events,https://github.com/twisted/twisted/pull/1219,548914929,MDExOlB1bGxSZXF1ZXN0MzYyMTA1MjEy,1219,CramMD5ClientAuthenticator now specifies the digestmod argument to hmac.HMAC constructor explicitly.,"{'login': 'mithodin', 'id': 3817786, 'node_id': 'MDQ6VXNlcjM4MTc3ODY=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/3817786?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mithodin', 'html_url': 'https://github.com/mithodin', 'followers_url': 'https://api.github.com/users/mithodin/followers', 'following_url': 'https://api.github.com/users/mithodin/following{/other_user}', 'gists_url': 'https://api.github.com/users/mithodin/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mithodin/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mithodin/subscriptions', 'organizations_url': 'https://api.github.com/users/mithodin/orgs', 'repos_url': 'https://api.github.com/users/mithodin/repos', 'events_url': 'https://api.github.com/users/mithodin/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mithodin/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-01-13T13:01:43Z,2020-01-28T00:44:28Z,2020-01-28T00:44:28Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1219', 'html_url': 'https://github.com/twisted/twisted/pull/1219', 'diff_url': 'https://github.com/twisted/twisted/pull/1219.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1219.patch'}","The e-mail CramMD5ClientAuthenticator class now calls the hmac.HMAC constructor with the digestmod argument, as python 3.8 requires it to be specified explicitly.
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/9733
* [x] The changes pass minimal style checks
* [x] I have created a newsfragment in src/twisted/newsfragments/
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
889,https://api.github.com/repos/twisted/twisted/issues/1218,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1218/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1218/comments,https://api.github.com/repos/twisted/twisted/issues/1218/events,https://github.com/twisted/twisted/pull/1218,548835956,MDExOlB1bGxSZXF1ZXN0MzYyMDQwNTE2,1218,don't return fail() from callRemote(String) on closed connections,"{'login': 'glyph', 'id': 716529, 'node_id': 'MDQ6VXNlcjcxNjUyOQ==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/716529?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/glyph', 'html_url': 'https://github.com/glyph', 'followers_url': 'https://api.github.com/users/glyph/followers', 'following_url': 'https://api.github.com/users/glyph/following{/other_user}', 'gists_url': 'https://api.github.com/users/glyph/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/glyph/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/glyph/subscriptions', 'organizations_url': 'https://api.github.com/users/glyph/orgs', 'repos_url': 'https://api.github.com/users/glyph/repos', 'events_url': 'https://api.github.com/users/glyph/events{/privacy}', 'received_events_url': 'https://api.github.com/users/glyph/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,"{'login': 'glyph', 'id': 716529, 'node_id': 'MDQ6VXNlcjcxNjUyOQ==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/716529?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/glyph', 'html_url': 'https://github.com/glyph', 'followers_url': 'https://api.github.com/users/glyph/followers', 'following_url': 'https://api.github.com/users/glyph/following{/other_user}', 'gists_url': 'https://api.github.com/users/glyph/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/glyph/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/glyph/subscriptions', 'organizations_url': 'https://api.github.com/users/glyph/orgs', 'repos_url': 'https://api.github.com/users/glyph/repos', 'events_url': 'https://api.github.com/users/glyph/events{/privacy}', 'received_events_url': 'https://api.github.com/users/glyph/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'glyph', 'id': 716529, 'node_id': 'MDQ6VXNlcjcxNjUyOQ==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/716529?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/glyph', 'html_url': 'https://github.com/glyph', 'followers_url': 'https://api.github.com/users/glyph/followers', 'following_url': 'https://api.github.com/users/glyph/following{/other_user}', 'gists_url': 'https://api.github.com/users/glyph/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/glyph/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/glyph/subscriptions', 'organizations_url': 'https://api.github.com/users/glyph/orgs', 'repos_url': 'https://api.github.com/users/glyph/repos', 'events_url': 'https://api.github.com/users/glyph/events{/privacy}', 'received_events_url': 'https://api.github.com/users/glyph/received_events', 'type': 'User', 'site_admin': False}]",,0,2020-01-13T10:28:12Z,2020-01-14T18:17:55Z,2020-01-14T18:17:50Z,MEMBER,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1218', 'html_url': 'https://github.com/twisted/twisted/pull/1218', 'diff_url': 'https://github.com/twisted/twisted/pull/1218.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1218.patch'}","## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9756
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
890,https://api.github.com/repos/twisted/twisted/issues/1217,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1217/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1217/comments,https://api.github.com/repos/twisted/twisted/issues/1217/events,https://github.com/twisted/twisted/pull/1217,547399605,MDExOlB1bGxSZXF1ZXN0MzYwODk0MDY3,1217,run atexit handlers when cleanly shutting down twistd Fixes #9755 and #9945,"{'login': 'graingert', 'id': 413772, 'node_id': 'MDQ6VXNlcjQxMzc3Mg==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/413772?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/graingert', 'html_url': 'https://github.com/graingert', 'followers_url': 'https://api.github.com/users/graingert/followers', 'following_url': 'https://api.github.com/users/graingert/following{/other_user}', 'gists_url': 'https://api.github.com/users/graingert/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/graingert/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/graingert/subscriptions', 'organizations_url': 'https://api.github.com/users/graingert/orgs', 'repos_url': 'https://api.github.com/users/graingert/repos', 'events_url': 'https://api.github.com/users/graingert/events{/privacy}', 'received_events_url': 'https://api.github.com/users/graingert/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,3,2020-01-09T10:47:35Z,2020-08-28T09:28:35Z,,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1217', 'html_url': 'https://github.com/twisted/twisted/pull/1217', 'diff_url': 'https://github.com/twisted/twisted/pull/1217.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1217.patch'}","## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://tm.tl/9755
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
891,https://api.github.com/repos/twisted/twisted/issues/1216,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1216/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1216/comments,https://api.github.com/repos/twisted/twisted/issues/1216/events,https://github.com/twisted/twisted/pull/1216,547348654,MDExOlB1bGxSZXF1ZXN0MzYwODUyMjM0,1216,9757 fix coverage version mismatch again,"{'login': 'glyph', 'id': 716529, 'node_id': 'MDQ6VXNlcjcxNjUyOQ==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/716529?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/glyph', 'html_url': 'https://github.com/glyph', 'followers_url': 'https://api.github.com/users/glyph/followers', 'following_url': 'https://api.github.com/users/glyph/following{/other_user}', 'gists_url': 'https://api.github.com/users/glyph/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/glyph/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/glyph/subscriptions', 'organizations_url': 'https://api.github.com/users/glyph/orgs', 'repos_url': 'https://api.github.com/users/glyph/repos', 'events_url': 'https://api.github.com/users/glyph/events{/privacy}', 'received_events_url': 'https://api.github.com/users/glyph/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-01-09T09:18:09Z,2020-01-09T09:46:59Z,2020-01-09T09:46:55Z,MEMBER,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1216', 'html_url': 'https://github.com/twisted/twisted/pull/1216', 'diff_url': 'https://github.com/twisted/twisted/pull/1216.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1216.patch'}","## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9757
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] ~~I have updated the automated tests.~~
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
892,https://api.github.com/repos/twisted/twisted/issues/1215,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1215/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1215/comments,https://api.github.com/repos/twisted/twisted/issues/1215/events,https://github.com/twisted/twisted/pull/1215,547111406,MDExOlB1bGxSZXF1ZXN0MzYwNjYyMzcw,1215,[6647] IPv6 link-local address support for datagramProtocol,"{'login': 'mhoeft', 'id': 1726385, 'node_id': 'MDQ6VXNlcjE3MjYzODU=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1726385?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mhoeft', 'html_url': 'https://github.com/mhoeft', 'followers_url': 'https://api.github.com/users/mhoeft/followers', 'following_url': 'https://api.github.com/users/mhoeft/following{/other_user}', 'gists_url': 'https://api.github.com/users/mhoeft/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mhoeft/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mhoeft/subscriptions', 'organizations_url': 'https://api.github.com/users/mhoeft/orgs', 'repos_url': 'https://api.github.com/users/mhoeft/repos', 'events_url': 'https://api.github.com/users/mhoeft/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mhoeft/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,2,2020-01-08T21:27:18Z,2020-02-07T07:11:26Z,,NONE,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1215', 'html_url': 'https://github.com/twisted/twisted/pull/1215', 'diff_url': 'https://github.com/twisted/twisted/pull/1215.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1215.patch'}"," https://twistedmatrix.com/trac/ticket/6647
",
893,https://api.github.com/repos/twisted/twisted/issues/1214,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1214/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1214/comments,https://api.github.com/repos/twisted/twisted/issues/1214/events,https://github.com/twisted/twisted/pull/1214,544273456,MDExOlB1bGxSZXF1ZXN0MzU4NDIzNzM0,1214,[9752] Cope better with malformed /etc/hosts,"{'login': 'twm', 'id': 43662, 'node_id': 'MDQ6VXNlcjQzNjYy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/43662?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/twm', 'html_url': 'https://github.com/twm', 'followers_url': 'https://api.github.com/users/twm/followers', 'following_url': 'https://api.github.com/users/twm/following{/other_user}', 'gists_url': 'https://api.github.com/users/twm/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/twm/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/twm/subscriptions', 'organizations_url': 'https://api.github.com/users/twm/orgs', 'repos_url': 'https://api.github.com/users/twm/repos', 'events_url': 'https://api.github.com/users/twm/events{/privacy}', 'received_events_url': 'https://api.github.com/users/twm/received_events', 'type': 'User', 'site_admin': False}","[{'id': 641177213, 'node_id': 'MDU6TGFiZWw2NDExNzcyMTM=', 'url': 'https://api.github.com/repos/twisted/twisted/labels/cleared%20to%20land', 'name': 'cleared to land', 'color': '0e8a16', 'default': False, 'description': None}]",closed,False,,[],,2,2019-12-31T21:24:23Z,2020-03-29T01:25:56Z,2020-03-29T01:25:52Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1214', 'html_url': 'https://github.com/twisted/twisted/pull/1214', 'diff_url': 'https://github.com/twisted/twisted/pull/1214.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1214.patch'}","## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9752
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
894,https://api.github.com/repos/twisted/twisted/issues/1213,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1213/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1213/comments,https://api.github.com/repos/twisted/twisted/issues/1213/events,https://github.com/twisted/twisted/pull/1213,544065845,MDExOlB1bGxSZXF1ZXN0MzU4MjU4NTYx,1213,[9751] Fix pydoctor warnings about SSHTransportBase,"{'login': 'twm', 'id': 43662, 'node_id': 'MDQ6VXNlcjQzNjYy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/43662?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/twm', 'html_url': 'https://github.com/twm', 'followers_url': 'https://api.github.com/users/twm/followers', 'following_url': 'https://api.github.com/users/twm/following{/other_user}', 'gists_url': 'https://api.github.com/users/twm/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/twm/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/twm/subscriptions', 'organizations_url': 'https://api.github.com/users/twm/orgs', 'repos_url': 'https://api.github.com/users/twm/repos', 'events_url': 'https://api.github.com/users/twm/events{/privacy}', 'received_events_url': 'https://api.github.com/users/twm/received_events', 'type': 'User', 'site_admin': False}","[{'id': 712759900, 'node_id': 'MDU6TGFiZWw3MTI3NTk5MDA=', 'url': 'https://api.github.com/repos/twisted/twisted/labels/review%20required', 'name': 'review required', 'color': '1d76db', 'default': False, 'description': None}]",closed,False,,[],,1,2019-12-31T02:13:12Z,2020-03-28T22:45:55Z,2020-03-28T22:45:52Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1213', 'html_url': 'https://github.com/twisted/twisted/pull/1213', 'diff_url': 'https://github.com/twisted/twisted/pull/1213.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1213.patch'}","## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9751
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests. (N/A)
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
895,https://api.github.com/repos/twisted/twisted/issues/1212,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1212/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1212/comments,https://api.github.com/repos/twisted/twisted/issues/1212/events,https://github.com/twisted/twisted/pull/1212,543753653,MDExOlB1bGxSZXF1ZXN0MzU4MDA2ODIx,1212,[9496] Names SecondaryAuthority traceback,"{'login': 'twm', 'id': 43662, 'node_id': 'MDQ6VXNlcjQzNjYy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/43662?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/twm', 'html_url': 'https://github.com/twm', 'followers_url': 'https://api.github.com/users/twm/followers', 'following_url': 'https://api.github.com/users/twm/following{/other_user}', 'gists_url': 'https://api.github.com/users/twm/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/twm/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/twm/subscriptions', 'organizations_url': 'https://api.github.com/users/twm/orgs', 'repos_url': 'https://api.github.com/users/twm/repos', 'events_url': 'https://api.github.com/users/twm/events{/privacy}', 'received_events_url': 'https://api.github.com/users/twm/received_events', 'type': 'User', 'site_admin': False}","[{'id': 712759900, 'node_id': 'MDU6TGFiZWw3MTI3NTk5MDA=', 'url': 'https://api.github.com/repos/twisted/twisted/labels/review%20required', 'name': 'review required', 'color': '1d76db', 'default': False, 'description': None}]",closed,False,,[],,7,2019-12-30T05:56:43Z,2020-01-10T05:21:51Z,2020-01-10T05:21:43Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1212', 'html_url': 'https://github.com/twisted/twisted/pull/1212', 'diff_url': 'https://github.com/twisted/twisted/pull/1212.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1212.patch'}","There is a lot of string type confusion in `twisted.names`. This is mostly about how domain names (and labels) are represented.
I'll be using the Python 3 names for types here: `bytes` and `str`.
The `twisted.internet.interfaces.IResolver` interface defines a bunch of methods, about one per DNS record type. These all take the same arguments, most importantly `name`, but the types aren't consistent — the `lookupAddress()` method defines `name` as `bytes`, but every other method (including `lookupIPV6Address()` documents it as `str`. Presumably this is a Python 3 porting oversight, but the confusion goes deeper.
Since `IResolver` has so many methods all of the implementers in Twisted subclass `twisted.names.common.ResolverBase`, which maps all the methods to a `_lookup()` bottleneck method that can be easily overridden. This includes `lookupAddress()`, so clearly its type signature is supposed to align with the rest.
Internally the query is usually translated into a `dns.Query` instance, which represents the name as a `dns.Name` instance. `dns.Name` coerces the name to `bytes`, encoding Unicode using the `idna` codec. So most implementations simply deal with bytes.
However, some implementers override a few methods directly. For example, `twisted.names.hosts.Resolver` only deals in IP addresses, so it overrides `lookupAddress()` and `lookupIPV6Address()` directly. This produces inconsistent behavior: the hosts implementation _only_ accepts `bytes`, not `str`.
All of this confusion is borne out in the tests: some pass `name` as `str`, a few as `bytes`. There is no systematic coverage of both types.
This is basically what's going on in `twisted.names.secondary.SecondaryAuthority` in Twisted #9496: it's not coercing the type of its `domain` parameter to `bytes`, so it doesn't match the query.
The design intent here seems to be that everything is `bytes`. However, the reality is that most things support both `bytes` and `str`, so code relies on that. I tried rejecting `str`, but stuff broke (and that wouldn't be backwards compatible anyway. I have therefore:
1. Updated `IResolver` to permit ""`bytes` and `str`"" for _name_ parameters. We should not mislead third-party implementers.
2. Added a public function, `twisted.names.dns.domainString()`, to do the coercion in a consistent way. It's public so third-party `IResolver` implementations can use it.
3. Added coercion to all of the `common.BaseResolver` wrapper methods, and document `_lookup()`'s type to be _only_ `bytes`. This makes it easier for third-party implementers.
4. Updated miscellaneous `IResolver` implementers to also do coercion using `domainString()`.
5. Use the `dns.Name.name` attribute instead of calling `str()` to coerce `dns.Name` to a string, the former being `bytes`.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9496
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
896,https://api.github.com/repos/twisted/twisted/issues/1211,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1211/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1211/comments,https://api.github.com/repos/twisted/twisted/issues/1211/events,https://github.com/twisted/twisted/pull/1211,543303313,MDExOlB1bGxSZXF1ZXN0MzU3NTk5NjE5,1211,[9749] Fix twisted.names example testing,"{'login': 'twm', 'id': 43662, 'node_id': 'MDQ6VXNlcjQzNjYy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/43662?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/twm', 'html_url': 'https://github.com/twm', 'followers_url': 'https://api.github.com/users/twm/followers', 'following_url': 'https://api.github.com/users/twm/following{/other_user}', 'gists_url': 'https://api.github.com/users/twm/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/twm/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/twm/subscriptions', 'organizations_url': 'https://api.github.com/users/twm/orgs', 'repos_url': 'https://api.github.com/users/twm/repos', 'events_url': 'https://api.github.com/users/twm/events{/privacy}', 'received_events_url': 'https://api.github.com/users/twm/received_events', 'type': 'User', 'site_admin': False}","[{'id': 641177213, 'node_id': 'MDU6TGFiZWw2NDExNzcyMTM=', 'url': 'https://api.github.com/repos/twisted/twisted/labels/cleared%20to%20land', 'name': 'cleared to land', 'color': '0e8a16', 'default': False, 'description': None}]",closed,False,,[],,0,2019-12-29T01:41:09Z,2020-03-25T06:41:08Z,2020-03-25T05:46:56Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1211', 'html_url': 'https://github.com/twisted/twisted/pull/1211', 'diff_url': 'https://github.com/twisted/twisted/pull/1211.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1211.patch'}","## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9749
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
897,https://api.github.com/repos/twisted/twisted/issues/1210,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1210/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1210/comments,https://api.github.com/repos/twisted/twisted/issues/1210/events,https://github.com/twisted/twisted/pull/1210,541507688,MDExOlB1bGxSZXF1ZXN0MzU2MTI1NDk3,1210,Add support for Ed25519 SSH keys,"{'login': 'cjwatson', 'id': 2429141, 'node_id': 'MDQ6VXNlcjI0MjkxNDE=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/2429141?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/cjwatson', 'html_url': 'https://github.com/cjwatson', 'followers_url': 'https://api.github.com/users/cjwatson/followers', 'following_url': 'https://api.github.com/users/cjwatson/following{/other_user}', 'gists_url': 'https://api.github.com/users/cjwatson/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/cjwatson/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/cjwatson/subscriptions', 'organizations_url': 'https://api.github.com/users/cjwatson/orgs', 'repos_url': 'https://api.github.com/users/cjwatson/repos', 'events_url': 'https://api.github.com/users/cjwatson/events{/privacy}', 'received_events_url': 'https://api.github.com/users/cjwatson/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2019-12-22T22:18:11Z,2020-03-28T06:46:19Z,2020-03-28T06:46:19Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1210', 'html_url': 'https://github.com/twisted/twisted/pull/1210', 'diff_url': 'https://github.com/twisted/twisted/pull/1210.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1210.patch'}","Portions of this are based on work by the0id in
https://github.com/twisted/twisted/pull/644.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/8966
* [x] The changes pass minimal style checks
* [x] I have created a newsfragment in src/twisted/conch/newsfragments/
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.",
898,https://api.github.com/repos/twisted/twisted/issues/1209,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1209/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1209/comments,https://api.github.com/repos/twisted/twisted/issues/1209/events,https://github.com/twisted/twisted/pull/1209,541045076,MDExOlB1bGxSZXF1ZXN0MzU1NzcyMTQy,1209,cancel the old channel's timeout only once,"{'login': 'graingert', 'id': 413772, 'node_id': 'MDQ6VXNlcjQxMzc3Mg==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/413772?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/graingert', 'html_url': 'https://github.com/graingert', 'followers_url': 'https://api.github.com/users/graingert/followers', 'following_url': 'https://api.github.com/users/graingert/following{/other_user}', 'gists_url': 'https://api.github.com/users/graingert/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/graingert/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/graingert/subscriptions', 'organizations_url': 'https://api.github.com/users/graingert/orgs', 'repos_url': 'https://api.github.com/users/graingert/repos', 'events_url': 'https://api.github.com/users/graingert/events{/privacy}', 'received_events_url': 'https://api.github.com/users/graingert/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-12-20T15:15:36Z,2020-04-12T07:56:43Z,2020-04-12T07:56:43Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1209', 'html_url': 'https://github.com/twisted/twisted/pull/1209', 'diff_url': 'https://github.com/twisted/twisted/pull/1209.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1209.patch'}","## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9758/trac/ticket/
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [ ] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
899,https://api.github.com/repos/twisted/twisted/issues/1208,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1208/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1208/comments,https://api.github.com/repos/twisted/twisted/issues/1208/events,https://github.com/twisted/twisted/pull/1208,539362707,MDExOlB1bGxSZXF1ZXN0MzU0MzUzNzYx,1208,fix MemoryReactor import in test_runner to be from twisted.internet.t…,"{'login': 'threexc', 'id': 6044719, 'node_id': 'MDQ6VXNlcjYwNDQ3MTk=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/6044719?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/threexc', 'html_url': 'https://github.com/threexc', 'followers_url': 'https://api.github.com/users/threexc/followers', 'following_url': 'https://api.github.com/users/threexc/following{/other_user}', 'gists_url': 'https://api.github.com/users/threexc/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/threexc/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/threexc/subscriptions', 'organizations_url': 'https://api.github.com/users/threexc/orgs', 'repos_url': 'https://api.github.com/users/threexc/repos', 'events_url': 'https://api.github.com/users/threexc/events{/privacy}', 'received_events_url': 'https://api.github.com/users/threexc/received_events', 'type': 'User', 'site_admin': False}","[{'id': 641177213, 'node_id': 'MDU6TGFiZWw2NDExNzcyMTM=', 'url': 'https://api.github.com/repos/twisted/twisted/labels/cleared%20to%20land', 'name': 'cleared to land', 'color': '0e8a16', 'default': False, 'description': None}]",closed,False,,[],,1,2019-12-17T23:18:08Z,2019-12-31T00:47:53Z,2019-12-31T00:47:52Z,NONE,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1208', 'html_url': 'https://github.com/twisted/twisted/pull/1208', 'diff_url': 'https://github.com/twisted/twisted/pull/1208.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1208.patch'}","https://twistedmatrix.com/trac/ticket/9746
",
900,https://api.github.com/repos/twisted/twisted/issues/1207,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1207/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1207/comments,https://api.github.com/repos/twisted/twisted/issues/1207/events,https://github.com/twisted/twisted/pull/1207,538147555,MDExOlB1bGxSZXF1ZXN0MzUzMzQ1MTc5,1207,[9678] Fix HTTP multipart parsing of chunked requests on Py3.7+,"{'login': 'twm', 'id': 43662, 'node_id': 'MDQ6VXNlcjQzNjYy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/43662?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/twm', 'html_url': 'https://github.com/twm', 'followers_url': 'https://api.github.com/users/twm/followers', 'following_url': 'https://api.github.com/users/twm/following{/other_user}', 'gists_url': 'https://api.github.com/users/twm/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/twm/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/twm/subscriptions', 'organizations_url': 'https://api.github.com/users/twm/orgs', 'repos_url': 'https://api.github.com/users/twm/repos', 'events_url': 'https://api.github.com/users/twm/events{/privacy}', 'received_events_url': 'https://api.github.com/users/twm/received_events', 'type': 'User', 'site_admin': False}","[{'id': 712759900, 'node_id': 'MDU6TGFiZWw3MTI3NTk5MDA=', 'url': 'https://api.github.com/repos/twisted/twisted/labels/review%20required', 'name': 'review required', 'color': '1d76db', 'default': False, 'description': None}]",closed,False,,[],,0,2019-12-16T02:11:01Z,2020-01-09T10:21:49Z,2020-01-09T10:21:45Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1207', 'html_url': 'https://github.com/twisted/twisted/pull/1207', 'diff_url': 'https://github.com/twisted/twisted/pull/1207.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1207.patch'}","See a562242 for a detailed explanation. This is the simplest possible fix. I do think that we should probably ditch the `cgi` module for multipart parsing eventually because it is very `str`-oriented, but we want `bytes`.
This includes the tests from #1180. Thank you @msdemlei!
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9678
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
901,https://api.github.com/repos/twisted/twisted/issues/1206,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1206/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1206/comments,https://api.github.com/repos/twisted/twisted/issues/1206/events,https://github.com/twisted/twisted/pull/1206,537988321,MDExOlB1bGxSZXF1ZXN0MzUzMjI5MjI2,1206,[9744] Clean up pywin32-related apidocs errors,"{'login': 'twm', 'id': 43662, 'node_id': 'MDQ6VXNlcjQzNjYy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/43662?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/twm', 'html_url': 'https://github.com/twm', 'followers_url': 'https://api.github.com/users/twm/followers', 'following_url': 'https://api.github.com/users/twm/following{/other_user}', 'gists_url': 'https://api.github.com/users/twm/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/twm/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/twm/subscriptions', 'organizations_url': 'https://api.github.com/users/twm/orgs', 'repos_url': 'https://api.github.com/users/twm/repos', 'events_url': 'https://api.github.com/users/twm/events{/privacy}', 'received_events_url': 'https://api.github.com/users/twm/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,4,2019-12-15T01:31:39Z,2020-03-28T03:14:19Z,2020-03-28T03:14:13Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1206', 'html_url': 'https://github.com/twisted/twisted/pull/1206', 'diff_url': 'https://github.com/twisted/twisted/pull/1206.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1206.patch'}","Remove the logic to generate links to pywin32's API docs as they have been a 404 for over a year and I cannot find a replacement.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9744
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
902,https://api.github.com/repos/twisted/twisted/issues/1205,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1205/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1205/comments,https://api.github.com/repos/twisted/twisted/issues/1205/events,https://github.com/twisted/twisted/pull/1205,537985631,MDExOlB1bGxSZXF1ZXN0MzUzMjI3Mjc5,1205,[9742] Improve ContentDecoderAgent docs,"{'login': 'twm', 'id': 43662, 'node_id': 'MDQ6VXNlcjQzNjYy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/43662?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/twm', 'html_url': 'https://github.com/twm', 'followers_url': 'https://api.github.com/users/twm/followers', 'following_url': 'https://api.github.com/users/twm/following{/other_user}', 'gists_url': 'https://api.github.com/users/twm/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/twm/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/twm/subscriptions', 'organizations_url': 'https://api.github.com/users/twm/orgs', 'repos_url': 'https://api.github.com/users/twm/repos', 'events_url': 'https://api.github.com/users/twm/events{/privacy}', 'received_events_url': 'https://api.github.com/users/twm/received_events', 'type': 'User', 'site_admin': False}","[{'id': 712759900, 'node_id': 'MDU6TGFiZWw3MTI3NTk5MDA=', 'url': 'https://api.github.com/repos/twisted/twisted/labels/review%20required', 'name': 'review required', 'color': '1d76db', 'default': False, 'description': None}]",closed,False,,[],,1,2019-12-15T00:58:13Z,2020-03-28T04:58:14Z,2020-03-28T04:58:10Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1205', 'html_url': 'https://github.com/twisted/twisted/pull/1205', 'diff_url': 'https://github.com/twisted/twisted/pull/1205.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1205.patch'}","![image](https://user-images.githubusercontent.com/43662/70856689-171e2280-1e96-11ea-8261-f7b986b3446a.png)
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9742
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests. (N/A)
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
903,https://api.github.com/repos/twisted/twisted/issues/1204,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1204/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1204/comments,https://api.github.com/repos/twisted/twisted/issues/1204/events,https://github.com/twisted/twisted/pull/1204,529137730,MDExOlB1bGxSZXF1ZXN0MzQ2MDY5MTUw,1204,fix exception from multiple calls to FileBodyProducer.stop,"{'login': 'jlitzingerdev', 'id': 1496650, 'node_id': 'MDQ6VXNlcjE0OTY2NTA=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/1496650?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jlitzingerdev', 'html_url': 'https://github.com/jlitzingerdev', 'followers_url': 'https://api.github.com/users/jlitzingerdev/followers', 'following_url': 'https://api.github.com/users/jlitzingerdev/following{/other_user}', 'gists_url': 'https://api.github.com/users/jlitzingerdev/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jlitzingerdev/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jlitzingerdev/subscriptions', 'organizations_url': 'https://api.github.com/users/jlitzingerdev/orgs', 'repos_url': 'https://api.github.com/users/jlitzingerdev/repos', 'events_url': 'https://api.github.com/users/jlitzingerdev/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jlitzingerdev/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2019-11-27T06:08:28Z,2020-05-03T06:30:21Z,2020-05-03T06:30:21Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1204', 'html_url': 'https://github.com/twisted/twisted/pull/1204', 'diff_url': 'https://github.com/twisted/twisted/pull/1204.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1204.patch'}","The current specification for IBodyProducer states that
implementations need to be written to allow simultaneous calls to
pauseProducing, resumeProducing, and stopProducing. FileBodyProducer
currently only complies with that for pause and resumeProducing (where
comply is interpreted here as not raising an error).
Instead of allowing the TaskFinished exception to be raised on
multiple calls to stopProducing, catch and drop the exception. The
use of ""pass"" is not ideal, but this avoids an internal book-keeping
variable to track the stop state and a branch for the normal flow.
The use of ""pass"" to handle stopped also appears within the inner
maybeStopped function of startProducing, so it isn't without precedent.
This has been discussed in several forums:
* https://github.com/twisted/treq/issues/185#issuecomment-555596421
* https://twistedmatrix.com/pipermail/twisted-python/2017-November/031730.html
Related ticket(s): 7457
Regression risk: Existing uses of FileBodyProducer that rely on
multiple calls to stopProducing to raise an exception will break.
## Contributor Checklist:
* [x] The associated ticket in Trac is here:https://twistedmatrix.com/trac/ticket/6528
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [X] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [X] I have updated the automated tests.
* [X] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
904,https://api.github.com/repos/twisted/twisted/issues/1203,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1203/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1203/comments,https://api.github.com/repos/twisted/twisted/issues/1203/events,https://github.com/twisted/twisted/pull/1203,527696902,MDExOlB1bGxSZXF1ZXN0MzQ0OTA2Mjkz,1203,Run pycodestyle-twisted against merge-base with trunk,"{'login': 'cjwatson', 'id': 2429141, 'node_id': 'MDQ6VXNlcjI0MjkxNDE=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/2429141?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/cjwatson', 'html_url': 'https://github.com/cjwatson', 'followers_url': 'https://api.github.com/users/cjwatson/followers', 'following_url': 'https://api.github.com/users/cjwatson/following{/other_user}', 'gists_url': 'https://api.github.com/users/cjwatson/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/cjwatson/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/cjwatson/subscriptions', 'organizations_url': 'https://api.github.com/users/cjwatson/orgs', 'repos_url': 'https://api.github.com/users/cjwatson/repos', 'events_url': 'https://api.github.com/users/cjwatson/events{/privacy}', 'received_events_url': 'https://api.github.com/users/cjwatson/received_events', 'type': 'User', 'site_admin': False}","[{'id': 641177213, 'node_id': 'MDU6TGFiZWw2NDExNzcyMTM=', 'url': 'https://api.github.com/repos/twisted/twisted/labels/cleared%20to%20land', 'name': 'cleared to land', 'color': '0e8a16', 'default': False, 'description': None}]",closed,False,,[],,0,2019-11-24T13:20:48Z,2019-12-16T11:03:13Z,2019-12-16T05:44:18Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1203', 'html_url': 'https://github.com/twisted/twisted/pull/1203', 'diff_url': 'https://github.com/twisted/twisted/pull/1203.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1203.patch'}","`git diff trunk` includes changes on trunk since the common ancestor of
the current branch and trunk, which is unreasonably confusing if you're
looking at `tox -e lint` output on an out-of-date branch. Instead, use
`git diff $(git merge-base trunk HEAD)`, which diffs against the common ancestor of the
current branch and trunk.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9737
* [x] The changes pass minimal style checks
* [x] I have created a newsfragment in src/twisted/newsfragments/
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.",
905,https://api.github.com/repos/twisted/twisted/issues/1202,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1202/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1202/comments,https://api.github.com/repos/twisted/twisted/issues/1202/events,https://github.com/twisted/twisted/pull/1202,527690515,MDExOlB1bGxSZXF1ZXN0MzQ0OTAxNzcw,1202,Add curve25519-sha256 key exchange support,"{'login': 'cjwatson', 'id': 2429141, 'node_id': 'MDQ6VXNlcjI0MjkxNDE=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/2429141?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/cjwatson', 'html_url': 'https://github.com/cjwatson', 'followers_url': 'https://api.github.com/users/cjwatson/followers', 'following_url': 'https://api.github.com/users/cjwatson/following{/other_user}', 'gists_url': 'https://api.github.com/users/cjwatson/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/cjwatson/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/cjwatson/subscriptions', 'organizations_url': 'https://api.github.com/users/cjwatson/orgs', 'repos_url': 'https://api.github.com/users/cjwatson/repos', 'events_url': 'https://api.github.com/users/cjwatson/events{/privacy}', 'received_events_url': 'https://api.github.com/users/cjwatson/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-11-24T12:26:32Z,2019-12-22T21:01:29Z,2019-12-22T06:38:58Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1202', 'html_url': 'https://github.com/twisted/twisted/pull/1202', 'diff_url': 'https://github.com/twisted/twisted/pull/1202.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1202.patch'}","Portions of this are based on work by the0id in
https://github.com/twisted/twisted/pull/644.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/6814
* [x] The changes pass minimal style checks
* [x] I have created a newsfragment in src/twisted/conch/newsfragments/
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.",
906,https://api.github.com/repos/twisted/twisted/issues/1201,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1201/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1201/comments,https://api.github.com/repos/twisted/twisted/issues/1201/events,https://github.com/twisted/twisted/pull/1201,527687619,MDExOlB1bGxSZXF1ZXN0MzQ0ODk5NjUw,1201,Normalize Unicode passphrases for SSH keys,"{'login': 'cjwatson', 'id': 2429141, 'node_id': 'MDQ6VXNlcjI0MjkxNDE=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/2429141?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/cjwatson', 'html_url': 'https://github.com/cjwatson', 'followers_url': 'https://api.github.com/users/cjwatson/followers', 'following_url': 'https://api.github.com/users/cjwatson/following{/other_user}', 'gists_url': 'https://api.github.com/users/cjwatson/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/cjwatson/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/cjwatson/subscriptions', 'organizations_url': 'https://api.github.com/users/cjwatson/orgs', 'repos_url': 'https://api.github.com/users/cjwatson/repos', 'events_url': 'https://api.github.com/users/cjwatson/events{/privacy}', 'received_events_url': 'https://api.github.com/users/cjwatson/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2019-11-24T11:59:20Z,2020-07-18T22:08:48Z,2020-07-18T22:08:48Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1201', 'html_url': 'https://github.com/twisted/twisted/pull/1201', 'diff_url': 'https://github.com/twisted/twisted/pull/1201.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1201.patch'}","This is required by NIST 800-63B. We choose NFKC normalization here.
It is possible, though unlikely, that some existing key files will have
passphrases that are the UTF-8 encoding of a Unicode string not in NFKC;
twisted.conch.ssh.keys.Key.fromString will fail to load those keys if
given such a passphrase as a Unicode string. In that case the
workaround is to provide the passphrase as bytes instead.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9736
* [x] The changes pass minimal style checks
* [x] I have created a newsfragment in src/twisted/conch/newsfragments/
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.",
907,https://api.github.com/repos/twisted/twisted/issues/1200,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1200/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1200/comments,https://api.github.com/repos/twisted/twisted/issues/1200/events,https://github.com/twisted/twisted/pull/1200,527655053,MDExOlB1bGxSZXF1ZXN0MzQ0ODc2ODQ4,1200,update tox.ini,"{'login': 'glyph', 'id': 716529, 'node_id': 'MDQ6VXNlcjcxNjUyOQ==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/716529?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/glyph', 'html_url': 'https://github.com/glyph', 'followers_url': 'https://api.github.com/users/glyph/followers', 'following_url': 'https://api.github.com/users/glyph/following{/other_user}', 'gists_url': 'https://api.github.com/users/glyph/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/glyph/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/glyph/subscriptions', 'organizations_url': 'https://api.github.com/users/glyph/orgs', 'repos_url': 'https://api.github.com/users/glyph/repos', 'events_url': 'https://api.github.com/users/glyph/events{/privacy}', 'received_events_url': 'https://api.github.com/users/glyph/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-11-24T06:07:24Z,2019-11-26T23:22:17Z,2019-11-26T23:22:14Z,MEMBER,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1200', 'html_url': 'https://github.com/twisted/twisted/pull/1200', 'diff_url': 'https://github.com/twisted/twisted/pull/1200.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1200.patch'}","## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9735
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
908,https://api.github.com/repos/twisted/twisted/issues/1199,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1199/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1199/comments,https://api.github.com/repos/twisted/twisted/issues/1199/events,https://github.com/twisted/twisted/pull/1199,524128969,MDExOlB1bGxSZXF1ZXN0MzQxOTU5MjMy,1199,Depend on attrs ≥19.2.0; use eq instead of cmp,"{'login': 'twm', 'id': 43662, 'node_id': 'MDQ6VXNlcjQzNjYy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/43662?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/twm', 'html_url': 'https://github.com/twm', 'followers_url': 'https://api.github.com/users/twm/followers', 'following_url': 'https://api.github.com/users/twm/following{/other_user}', 'gists_url': 'https://api.github.com/users/twm/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/twm/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/twm/subscriptions', 'organizations_url': 'https://api.github.com/users/twm/orgs', 'repos_url': 'https://api.github.com/users/twm/repos', 'events_url': 'https://api.github.com/users/twm/events{/privacy}', 'received_events_url': 'https://api.github.com/users/twm/received_events', 'type': 'User', 'site_admin': False}","[{'id': 641177213, 'node_id': 'MDU6TGFiZWw2NDExNzcyMTM=', 'url': 'https://api.github.com/repos/twisted/twisted/labels/cleared%20to%20land', 'name': 'cleared to land', 'color': '0e8a16', 'default': False, 'description': None}]",closed,False,,[],,1,2019-11-18T04:34:41Z,2019-12-16T01:49:04Z,2019-12-16T01:48:59Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1199', 'html_url': 'https://github.com/twisted/twisted/pull/1199', 'diff_url': 'https://github.com/twisted/twisted/pull/1199.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1199.patch'}","Set the minimal dependency to attrs 19.2.0, which provides `eq` and deprecates `cmp`.
See the [attrs changelog](https://www.attrs.org/en/stable/changelog.html#id2).
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9710
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests. (N/A)
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
909,https://api.github.com/repos/twisted/twisted/issues/1198,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1198/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1198/comments,https://api.github.com/repos/twisted/twisted/issues/1198/events,https://github.com/twisted/twisted/pull/1198,524028172,MDExOlB1bGxSZXF1ZXN0MzQxODgzNDA5,1198,Fix parsing of namespaced attributes with Python 3.8 in twisted.words…,"{'login': 'goffi-contrib', 'id': 22869331, 'node_id': 'MDQ6VXNlcjIyODY5MzMx', 'avatar_url': 'https://avatars0.githubusercontent.com/u/22869331?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/goffi-contrib', 'html_url': 'https://github.com/goffi-contrib', 'followers_url': 'https://api.github.com/users/goffi-contrib/followers', 'following_url': 'https://api.github.com/users/goffi-contrib/following{/other_user}', 'gists_url': 'https://api.github.com/users/goffi-contrib/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/goffi-contrib/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/goffi-contrib/subscriptions', 'organizations_url': 'https://api.github.com/users/goffi-contrib/orgs', 'repos_url': 'https://api.github.com/users/goffi-contrib/repos', 'events_url': 'https://api.github.com/users/goffi-contrib/events{/privacy}', 'received_events_url': 'https://api.github.com/users/goffi-contrib/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2019-11-17T19:02:07Z,2020-03-01T06:08:28Z,2020-03-01T06:08:27Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1198', 'html_url': 'https://github.com/twisted/twisted/pull/1198', 'diff_url': 'https://github.com/twisted/twisted/pull/1198.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1198.patch'}","….xish.domish.ExpatElementStream
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9730
* [x] The changes pass minimal style checks
* [x] I have created a newsfragment in src/twisted/words/newsfragments/9730.bugfix
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
910,https://api.github.com/repos/twisted/twisted/issues/1197,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1197/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1197/comments,https://api.github.com/repos/twisted/twisted/issues/1197/events,https://github.com/twisted/twisted/pull/1197,521395771,MDExOlB1bGxSZXF1ZXN0MzM5NzgyMTM2,1197,[compat] Add support of Python 3.8 (now official release),"{'login': 'Djailla', 'id': 576608, 'node_id': 'MDQ6VXNlcjU3NjYwOA==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/576608?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Djailla', 'html_url': 'https://github.com/Djailla', 'followers_url': 'https://api.github.com/users/Djailla/followers', 'following_url': 'https://api.github.com/users/Djailla/following{/other_user}', 'gists_url': 'https://api.github.com/users/Djailla/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Djailla/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Djailla/subscriptions', 'organizations_url': 'https://api.github.com/users/Djailla/orgs', 'repos_url': 'https://api.github.com/users/Djailla/repos', 'events_url': 'https://api.github.com/users/Djailla/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Djailla/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-11-12T08:18:51Z,2020-01-06T10:23:26Z,2020-01-06T10:23:26Z,NONE,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1197', 'html_url': 'https://github.com/twisted/twisted/pull/1197', 'diff_url': 'https://github.com/twisted/twisted/pull/1197.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1197.patch'}",Add support for python 3.8 in travis test matrix,
911,https://api.github.com/repos/twisted/twisted/issues/1196,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1196/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1196/comments,https://api.github.com/repos/twisted/twisted/issues/1196/events,https://github.com/twisted/twisted/pull/1196,520755750,MDExOlB1bGxSZXF1ZXN0MzM5MjY2NzU5,1196,pywin32 breaks virtualenv and thus our builds,"{'login': 'glyph', 'id': 716529, 'node_id': 'MDQ6VXNlcjcxNjUyOQ==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/716529?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/glyph', 'html_url': 'https://github.com/glyph', 'followers_url': 'https://api.github.com/users/glyph/followers', 'following_url': 'https://api.github.com/users/glyph/following{/other_user}', 'gists_url': 'https://api.github.com/users/glyph/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/glyph/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/glyph/subscriptions', 'organizations_url': 'https://api.github.com/users/glyph/orgs', 'repos_url': 'https://api.github.com/users/glyph/repos', 'events_url': 'https://api.github.com/users/glyph/events{/privacy}', 'received_events_url': 'https://api.github.com/users/glyph/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2019-11-11T05:57:32Z,2019-11-12T07:04:39Z,2019-11-12T07:04:36Z,MEMBER,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1196', 'html_url': 'https://github.com/twisted/twisted/pull/1196', 'diff_url': 'https://github.com/twisted/twisted/pull/1196.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1196.patch'}","## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9729
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
912,https://api.github.com/repos/twisted/twisted/issues/1195,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1195/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1195/comments,https://api.github.com/repos/twisted/twisted/issues/1195/events,https://github.com/twisted/twisted/pull/1195,520742042,MDExOlB1bGxSZXF1ZXN0MzM5MjU1ODAy,1195,"move the `chmod` back to the parent, simplify, fix","{'login': 'glyph', 'id': 716529, 'node_id': 'MDQ6VXNlcjcxNjUyOQ==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/716529?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/glyph', 'html_url': 'https://github.com/glyph', 'followers_url': 'https://api.github.com/users/glyph/followers', 'following_url': 'https://api.github.com/users/glyph/following{/other_user}', 'gists_url': 'https://api.github.com/users/glyph/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/glyph/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/glyph/subscriptions', 'organizations_url': 'https://api.github.com/users/glyph/orgs', 'repos_url': 'https://api.github.com/users/glyph/repos', 'events_url': 'https://api.github.com/users/glyph/events{/privacy}', 'received_events_url': 'https://api.github.com/users/glyph/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-11-11T05:04:44Z,2019-11-12T09:28:21Z,2019-11-12T09:28:17Z,MEMBER,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1195', 'html_url': 'https://github.com/twisted/twisted/pull/1195', 'diff_url': 'https://github.com/twisted/twisted/pull/1195.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1195.patch'}","## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9728
* [ ] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
913,https://api.github.com/repos/twisted/twisted/issues/1194,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1194/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1194/comments,https://api.github.com/repos/twisted/twisted/issues/1194/events,https://github.com/twisted/twisted/pull/1194,519056402,MDExOlB1bGxSZXF1ZXN0MzM3ODY3NDA4,1194,[9724] twisted.cred.checkers API documentation improvements,"{'login': 'twm', 'id': 43662, 'node_id': 'MDQ6VXNlcjQzNjYy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/43662?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/twm', 'html_url': 'https://github.com/twm', 'followers_url': 'https://api.github.com/users/twm/followers', 'following_url': 'https://api.github.com/users/twm/following{/other_user}', 'gists_url': 'https://api.github.com/users/twm/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/twm/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/twm/subscriptions', 'organizations_url': 'https://api.github.com/users/twm/orgs', 'repos_url': 'https://api.github.com/users/twm/repos', 'events_url': 'https://api.github.com/users/twm/events{/privacy}', 'received_events_url': 'https://api.github.com/users/twm/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-11-07T05:51:03Z,2019-11-09T07:48:39Z,2019-11-09T07:48:34Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1194', 'html_url': 'https://github.com/twisted/twisted/pull/1194', 'diff_url': 'https://github.com/twisted/twisted/pull/1194.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1194.patch'}","Document some undocumented things, use more epytext syntax, add an example, and fix missing or incorrect types (see [#9721](https://twistedmatrix.com/trac/ticket/9721)).
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9724
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [x] I have updated the automated tests. (N/A)
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
914,https://api.github.com/repos/twisted/twisted/issues/1193,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1193/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1193/comments,https://api.github.com/repos/twisted/twisted/issues/1193/events,https://github.com/twisted/twisted/pull/1193,509900289,MDExOlB1bGxSZXF1ZXN0MzMwMzU0ODE2,1193,Support encoding to new OpenSSH private key format,"{'login': 'cjwatson', 'id': 2429141, 'node_id': 'MDQ6VXNlcjI0MjkxNDE=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/2429141?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/cjwatson', 'html_url': 'https://github.com/cjwatson', 'followers_url': 'https://api.github.com/users/cjwatson/followers', 'following_url': 'https://api.github.com/users/cjwatson/following{/other_user}', 'gists_url': 'https://api.github.com/users/cjwatson/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/cjwatson/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/cjwatson/subscriptions', 'organizations_url': 'https://api.github.com/users/cjwatson/orgs', 'repos_url': 'https://api.github.com/users/cjwatson/repos', 'events_url': 'https://api.github.com/users/cjwatson/events{/privacy}', 'received_events_url': 'https://api.github.com/users/cjwatson/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2019-10-21T11:24:51Z,2019-11-24T12:01:55Z,2019-11-24T05:50:28Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1193', 'html_url': 'https://github.com/twisted/twisted/pull/1193', 'diff_url': 'https://github.com/twisted/twisted/pull/1193.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1193.patch'}","This is the other half of 4b6a2a2d85bc1493d8d0d1eb90a3896ac220da5c, and
is a prerequisite for adding support for Ed25519 keys which OpenSSH only
ever writes in the new format.
OpenSSH refuses to load keys in this format that lack a trailing
newline, so I adjusted the test data accordingly.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9683
* [x] The changes pass minimal style checks
* [x] I have created a newsfragment in src/twisted/conch/newsfragments/
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.",
915,https://api.github.com/repos/twisted/twisted/issues/1192,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1192/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1192/comments,https://api.github.com/repos/twisted/twisted/issues/1192/events,https://github.com/twisted/twisted/pull/1192,509587803,MDExOlB1bGxSZXF1ZXN0MzMwMTEyMDE1,1192,[#9719] Support contextvars in coroutines,"{'login': 'hawkowl', 'id': 3307100, 'node_id': 'MDQ6VXNlcjMzMDcxMDA=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/3307100?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/hawkowl', 'html_url': 'https://github.com/hawkowl', 'followers_url': 'https://api.github.com/users/hawkowl/followers', 'following_url': 'https://api.github.com/users/hawkowl/following{/other_user}', 'gists_url': 'https://api.github.com/users/hawkowl/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/hawkowl/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/hawkowl/subscriptions', 'organizations_url': 'https://api.github.com/users/hawkowl/orgs', 'repos_url': 'https://api.github.com/users/hawkowl/repos', 'events_url': 'https://api.github.com/users/hawkowl/events{/privacy}', 'received_events_url': 'https://api.github.com/users/hawkowl/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,4,2019-10-20T12:20:58Z,2020-05-01T08:55:28Z,2020-05-01T08:55:25Z,MEMBER,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1192', 'html_url': 'https://github.com/twisted/twisted/pull/1192', 'diff_url': 'https://github.com/twisted/twisted/pull/1192.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1192.patch'}",Ticket: https://twistedmatrix.com/trac/ticket/9719,
916,https://api.github.com/repos/twisted/twisted/issues/1191,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1191/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1191/comments,https://api.github.com/repos/twisted/twisted/issues/1191/events,https://github.com/twisted/twisted/pull/1191,508459806,MDExOlB1bGxSZXF1ZXN0MzI5MjQ4MzQ2,1191,"Fix serialization of date, time, and timedelta objects in python 3","{'login': 'mathieui', 'id': 634815, 'node_id': 'MDQ6VXNlcjYzNDgxNQ==', 'avatar_url': 'https://avatars1.githubusercontent.com/u/634815?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mathieui', 'html_url': 'https://github.com/mathieui', 'followers_url': 'https://api.github.com/users/mathieui/followers', 'following_url': 'https://api.github.com/users/mathieui/following{/other_user}', 'gists_url': 'https://api.github.com/users/mathieui/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mathieui/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mathieui/subscriptions', 'organizations_url': 'https://api.github.com/users/mathieui/orgs', 'repos_url': 'https://api.github.com/users/mathieui/repos', 'events_url': 'https://api.github.com/users/mathieui/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mathieui/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2019-10-17T13:00:38Z,2020-07-11T19:28:58Z,2020-07-11T19:28:46Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1191', 'html_url': 'https://github.com/twisted/twisted/pull/1191', 'diff_url': 'https://github.com/twisted/twisted/pull/1191.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1191.patch'}","Unicode strings cannot be sent as is in Banana, and need to be
byte-encoded. In python 3, this would fail for the date, time and
timedelta objects as the jellyfication would use a unicode string and
not a byte string.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9716
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (see: https://twistedmatrix.com/trac/wiki/ReviewProcess#Newsfiles )
* [ ] I have updated the automated tests. (I do not know where to start writing such tests)
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
917,https://api.github.com/repos/twisted/twisted/issues/1190,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1190/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1190/comments,https://api.github.com/repos/twisted/twisted/issues/1190/events,https://github.com/twisted/twisted/pull/1190,507014288,MDExOlB1bGxSZXF1ZXN0MzI4MDgzMjYx,1190,Fix most lint in twisted.protocols.ftp,"{'login': 'cjwatson', 'id': 2429141, 'node_id': 'MDQ6VXNlcjI0MjkxNDE=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/2429141?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/cjwatson', 'html_url': 'https://github.com/cjwatson', 'followers_url': 'https://api.github.com/users/cjwatson/followers', 'following_url': 'https://api.github.com/users/cjwatson/following{/other_user}', 'gists_url': 'https://api.github.com/users/cjwatson/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/cjwatson/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/cjwatson/subscriptions', 'organizations_url': 'https://api.github.com/users/cjwatson/orgs', 'repos_url': 'https://api.github.com/users/cjwatson/repos', 'events_url': 'https://api.github.com/users/cjwatson/events{/privacy}', 'received_events_url': 'https://api.github.com/users/cjwatson/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2019-10-15T05:29:20Z,2019-10-21T09:10:25Z,2019-10-19T19:32:08Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1190', 'html_url': 'https://github.com/twisted/twisted/pull/1190', 'diff_url': 'https://github.com/twisted/twisted/pull/1190.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1190.patch'}","No functional change. I've left bare excepts as they are for now since
fixing those might introduce functional changes.
I also replaced an offensive and rather useless comment with something more informative.
## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9715
* [x] The changes pass minimal style checks
* [x] I have created a newsfragment in src/twisted/newsfragments/
* [x] I have updated the automated tests.
* [x] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.
",
918,https://api.github.com/repos/twisted/twisted/issues/1189,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1189/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1189/comments,https://api.github.com/repos/twisted/twisted/issues/1189/events,https://github.com/twisted/twisted/pull/1189,506488277,MDExOlB1bGxSZXF1ZXN0MzI3Njc0Njg2,1189,Release 19.10.0 (DO NOT MERGE),"{'login': 'hawkowl', 'id': 3307100, 'node_id': 'MDQ6VXNlcjMzMDcxMDA=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/3307100?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/hawkowl', 'html_url': 'https://github.com/hawkowl', 'followers_url': 'https://api.github.com/users/hawkowl/followers', 'following_url': 'https://api.github.com/users/hawkowl/following{/other_user}', 'gists_url': 'https://api.github.com/users/hawkowl/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/hawkowl/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/hawkowl/subscriptions', 'organizations_url': 'https://api.github.com/users/hawkowl/orgs', 'repos_url': 'https://api.github.com/users/hawkowl/repos', 'events_url': 'https://api.github.com/users/hawkowl/events{/privacy}', 'received_events_url': 'https://api.github.com/users/hawkowl/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2019-10-14T07:28:10Z,2019-11-11T04:19:47Z,2019-11-11T04:19:42Z,MEMBER,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1189', 'html_url': 'https://github.com/twisted/twisted/pull/1189', 'diff_url': 'https://github.com/twisted/twisted/pull/1189.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1189.patch'}",,
919,https://api.github.com/repos/twisted/twisted/issues/1188,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1188/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1188/comments,https://api.github.com/repos/twisted/twisted/issues/1188/events,https://github.com/twisted/twisted/pull/1188,495600054,MDExOlB1bGxSZXF1ZXN0MzE5MTE1NjI0,1188,Fixed invalid escape sequence \d,"{'login': 'boxed', 'id': 332428, 'node_id': 'MDQ6VXNlcjMzMjQyOA==', 'avatar_url': 'https://avatars1.githubusercontent.com/u/332428?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/boxed', 'html_url': 'https://github.com/boxed', 'followers_url': 'https://api.github.com/users/boxed/followers', 'following_url': 'https://api.github.com/users/boxed/following{/other_user}', 'gists_url': 'https://api.github.com/users/boxed/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/boxed/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/boxed/subscriptions', 'organizations_url': 'https://api.github.com/users/boxed/orgs', 'repos_url': 'https://api.github.com/users/boxed/repos', 'events_url': 'https://api.github.com/users/boxed/events{/privacy}', 'received_events_url': 'https://api.github.com/users/boxed/received_events', 'type': 'User', 'site_admin': False}","[{'id': 641177213, 'node_id': 'MDU6TGFiZWw2NDExNzcyMTM=', 'url': 'https://api.github.com/repos/twisted/twisted/labels/cleared%20to%20land', 'name': 'cleared to land', 'color': '0e8a16', 'default': False, 'description': None}]",closed,False,,[],,2,2019-09-19T06:30:44Z,2019-12-16T03:43:03Z,2019-12-16T03:43:03Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1188', 'html_url': 'https://github.com/twisted/twisted/pull/1188', 'diff_url': 'https://github.com/twisted/twisted/pull/1188.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1188.patch'}","## Contributor Checklist:
* [x] The associated ticket in Trac is here: https://twistedmatrix.com/trac/ticket/9707#ticket
* [x] The changes pass minimal style checks (see: https://twistedmatrix.com/trac/wiki/TwistedDevelopment#GettingYourPatchAccepted )
* [x] I have created a newsfragment in src/twisted/newsfragments/ (I haven't, because it's a trivial change with no behavioral change for the current version of python!)
* [X] I have updated the automated tests. (Again, I haven't, but you get the idea)
* [X] I have submitted the associated Trac ticket for review by adding the word `review` to the keywords field in Trac, and putting a link to this PR in the comment; it shows up in https://twisted.reviews/ now.",
920,https://api.github.com/repos/twisted/twisted/issues/1187,https://api.github.com/repos/twisted/twisted,https://api.github.com/repos/twisted/twisted/issues/1187/labels{/name},https://api.github.com/repos/twisted/twisted/issues/1187/comments,https://api.github.com/repos/twisted/twisted/issues/1187/events,https://github.com/twisted/twisted/pull/1187,494022279,MDExOlB1bGxSZXF1ZXN0MzE3ODU3NzU1,1187,Fixed invalid escape sequence \d,"{'login': 'boxed', 'id': 332428, 'node_id': 'MDQ6VXNlcjMzMjQyOA==', 'avatar_url': 'https://avatars1.githubusercontent.com/u/332428?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/boxed', 'html_url': 'https://github.com/boxed', 'followers_url': 'https://api.github.com/users/boxed/followers', 'following_url': 'https://api.github.com/users/boxed/following{/other_user}', 'gists_url': 'https://api.github.com/users/boxed/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/boxed/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/boxed/subscriptions', 'organizations_url': 'https://api.github.com/users/boxed/orgs', 'repos_url': 'https://api.github.com/users/boxed/repos', 'events_url': 'https://api.github.com/users/boxed/events{/privacy}', 'received_events_url': 'https://api.github.com/users/boxed/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,4,2019-09-16T12:35:51Z,2019-11-11T06:34:39Z,2019-09-19T04:26:11Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/twisted/twisted/pulls/1187', 'html_url': 'https://github.com/twisted/twisted/pull/1187', 'diff_url': 'https://github.com/twisted/twisted/pull/1187.diff', 'patch_url': 'https://github.com/twisted/twisted/pull/1187.patch'}",,
921,https://api.github.com/repos/iNPUTmice/Conversations/issues/3873,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3873/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3873/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3873/events,https://github.com/iNPUTmice/Conversations/issues/3873,691435874,MDU6SXNzdWU2OTE0MzU4NzQ=,3873,[Feature Request] Per-contact notification settings,"{'login': 'carastro', 'id': 67982772, 'node_id': 'MDQ6VXNlcjY3OTgyNzcy', 'avatar_url': 'https://avatars2.githubusercontent.com/u/67982772?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/carastro', 'html_url': 'https://github.com/carastro', 'followers_url': 'https://api.github.com/users/carastro/followers', 'following_url': 'https://api.github.com/users/carastro/following{/other_user}', 'gists_url': 'https://api.github.com/users/carastro/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/carastro/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/carastro/subscriptions', 'organizations_url': 'https://api.github.com/users/carastro/orgs', 'repos_url': 'https://api.github.com/users/carastro/repos', 'events_url': 'https://api.github.com/users/carastro/events{/privacy}', 'received_events_url': 'https://api.github.com/users/carastro/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-09-02T21:32:18Z,2020-09-03T05:46:34Z,2020-09-03T05:46:34Z,NONE,,,"Same as #2002
I feel being able to set different notification sounds for different contacts is really useful.",
922,https://api.github.com/repos/iNPUTmice/Conversations/issues/3872,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3872/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3872/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3872/events,https://github.com/iNPUTmice/Conversations/issues/3872,691332518,MDU6SXNzdWU2OTEzMzI1MTg=,3872,[Small change] Move search icon on main conversation area,"{'login': 'oathzed', 'id': 52545913, 'node_id': 'MDQ6VXNlcjUyNTQ1OTEz', 'avatar_url': 'https://avatars3.githubusercontent.com/u/52545913?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/oathzed', 'html_url': 'https://github.com/oathzed', 'followers_url': 'https://api.github.com/users/oathzed/followers', 'following_url': 'https://api.github.com/users/oathzed/following{/other_user}', 'gists_url': 'https://api.github.com/users/oathzed/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/oathzed/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/oathzed/subscriptions', 'organizations_url': 'https://api.github.com/users/oathzed/orgs', 'repos_url': 'https://api.github.com/users/oathzed/repos', 'events_url': 'https://api.github.com/users/oathzed/events{/privacy}', 'received_events_url': 'https://api.github.com/users/oathzed/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,6,2020-09-02T18:53:29Z,2020-09-03T05:49:30Z,2020-09-03T05:47:13Z,NONE,,,"Move a search icon to here instead of inside the 3 dot menu (see circled area) :
![Screenshot_20200902-115141](https://user-images.githubusercontent.com/52545913/92024312-e4150b00-ed12-11ea-98d3-8840f45510fa.png)
",
923,https://api.github.com/repos/iNPUTmice/Conversations/issues/3871,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3871/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3871/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3871/events,https://github.com/iNPUTmice/Conversations/issues/3871,691109952,MDU6SXNzdWU2OTExMDk5NTI=,3871,Incoming Jingle call rings even if user is on a call in another app,"{'login': 'singpolyma-shopify', 'id': 22897326, 'node_id': 'MDQ6VXNlcjIyODk3MzI2', 'avatar_url': 'https://avatars2.githubusercontent.com/u/22897326?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/singpolyma-shopify', 'html_url': 'https://github.com/singpolyma-shopify', 'followers_url': 'https://api.github.com/users/singpolyma-shopify/followers', 'following_url': 'https://api.github.com/users/singpolyma-shopify/following{/other_user}', 'gists_url': 'https://api.github.com/users/singpolyma-shopify/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/singpolyma-shopify/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/singpolyma-shopify/subscriptions', 'organizations_url': 'https://api.github.com/users/singpolyma-shopify/orgs', 'repos_url': 'https://api.github.com/users/singpolyma-shopify/repos', 'events_url': 'https://api.github.com/users/singpolyma-shopify/events{/privacy}', 'received_events_url': 'https://api.github.com/users/singpolyma-shopify/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-09-02T15:17:51Z,2020-09-02T15:32:01Z,2020-09-02T15:32:01Z,NONE,,,"Not sure if this can be fixed or not -- does andrioid have a way to detect ""on a call"" generally? Had this happen today where an incoming conversations call basically fully interrupted an ongoing linphone outbound call. Ideally it would return ""busy"" in that case.",
924,https://api.github.com/repos/iNPUTmice/Conversations/issues/3870,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3870/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3870/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3870/events,https://github.com/iNPUTmice/Conversations/issues/3870,689326835,MDU6SXNzdWU2ODkzMjY4MzU=,3870,Upgrade libwebrtc to M85,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-08-31T16:16:38Z,2020-09-01T09:42:13Z,2020-09-01T09:42:13Z,OWNER,,,libwebrtc m85 became stable a week ago. We might want to upgrade to that https://groups.google.com/g/discuss-webrtc/c/Qq3nsR2w2HU/m/7WGLPscPBwAJ,
925,https://api.github.com/repos/iNPUTmice/Conversations/issues/3869,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3869/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3869/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3869/events,https://github.com/iNPUTmice/Conversations/issues/3869,688775167,MDU6SXNzdWU2ODg3NzUxNjc=,3869,Excessive GC pauses and ANR due to growing heap size when unread count gets >2600,"{'login': 'eeeeeta', 'id': 9402870, 'node_id': 'MDQ6VXNlcjk0MDI4NzA=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/9402870?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/eeeeeta', 'html_url': 'https://github.com/eeeeeta', 'followers_url': 'https://api.github.com/users/eeeeeta/followers', 'following_url': 'https://api.github.com/users/eeeeeta/following{/other_user}', 'gists_url': 'https://api.github.com/users/eeeeeta/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/eeeeeta/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/eeeeeta/subscriptions', 'organizations_url': 'https://api.github.com/users/eeeeeta/orgs', 'repos_url': 'https://api.github.com/users/eeeeeta/repos', 'events_url': 'https://api.github.com/users/eeeeeta/events{/privacy}', 'received_events_url': 'https://api.github.com/users/eeeeeta/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,0,2020-08-30T19:17:31Z,2020-08-30T19:17:31Z,,NONE,,,"#### General information
* **Version:** 2.8.10+pcr
* **Device:** Motorola moto g(7) power
* **Android Version:** Android 9 (stock)
* **Server name:** theta.eu.org
* **Server software:** prosody trunk
* **Installed server modules:** CSI, MAM, others
* **Conversations source:** PlayStore Beta Channel
#### Steps to reproduce
1. Start Conversations fresh
2. Do things to raise the unread count above ~2600 (receive lots of PMs, be in a lot of active MUCs, have unread history, ...)
#### Expected result
- Conversations does not slow down or crash
#### Actual result
- Conversations' UI gets slower and slower, until it eventually throws an App Not Responding / quits
From the logcat output, it seems like having a lot of unread messages causes Conversations to use a lot of heap space. Eventually, it hits the Android limit and the OS starts forcing GC pauses on it in order to try and reclaim space, which doesn't work; the app becomes unusable, and eventually dies due to App Not Responding.
After restarting, the app only loads ~50 or so messages for each MUC / conversation, so it doesn't run into the issue.
**Suggested action:** maybe Conversations should evict unread messages from memory when the OS [signals heap space is low](https://developer.android.com/topic/performance/memory#release)? It looks like each `Conversation` keeps around a list of message objects and only gets rid of them after you've read them; it shouldn't be too bad to just deallocate said message objects when memory pressure is encountered, possibly with some logic for not deallocating objects that have caused a push notification.
#### Relevant debug output
```
08-30 19:42:19.130 22008 22042 I s.conversation: Starting a blocking GC Alloc
08-30 19:42:19.130 22008 22008 I s.conversation: WaitForGcToComplete blocked Alloc on HeapTrim for 456.877ms
08-30 19:42:19.130 22008 22008 I s.conversation: Starting a blocking GC Alloc
08-30 19:42:19.137 22008 22042 D conversations: update unread count to 2651
08-30 19:42:19.139 22008 22042 D conversations: eta@theta.eu.org: suppressing notification because turned off
08-30 19:42:19.142 22008 22008 I s.conversation: Waiting for a blocking GC Alloc
08-30 19:42:19.142 22008 22042 I s.conversation: Waiting for a blocking GC Alloc
08-30 19:42:19.608 22008 22018 I s.conversation: Clamp target GC heap from 119MB to 96MB
08-30 19:42:19.608 22008 22018 I s.conversation: Background concurrent copying GC freed 3922(101KB) AllocSpace objects, 0(0B) LOS objects, 0% free, 95MB/96MB, paused 154us total 477.449ms
08-30 19:42:19.608 22008 22008 I s.conversation: WaitForGcToComplete blocked Alloc on HeapTrim for 466.686ms
08-30 19:42:19.608 22008 22008 I s.conversation: Starting a blocking GC Alloc
08-30 19:42:19.608 22008 22042 I s.conversation: WaitForGcToComplete blocked Alloc on HeapTrim for 466.510ms
08-30 19:42:19.608 22008 22042 I s.conversation: Starting a blocking GC Alloc
08-30 19:42:19.610 22008 22008 I s.conversation: Waiting for a blocking GC Alloc
08-30 19:42:19.610 22008 22123 I s.conversation: Waiting for a blocking GC Alloc
08-30 19:42:19.610 22008 22042 I s.conversation: Waiting for a blocking GC Alloc
08-30 19:42:20.067 22008 22018 I s.conversation: Clamp target GC heap from 119MB to 96MB
08-30 19:42:20.067 22008 22018 I s.conversation: Background concurrent copying GC freed 3886(155KB) AllocSpace objects, 0(0B) LOS objects, 0% free, 95MB/96MB, paused 115us total 458.027ms
08-30 19:42:20.067 22008 22008 I s.conversation: WaitForGcToComplete blocked Alloc on HeapTrim for 457.452ms
08-30 19:42:20.067 22008 22008 I s.conversation: Starting a blocking GC Alloc
08-30 19:42:20.067 22008 22123 I s.conversation: WaitForGcToComplete blocked Alloc on HeapTrim for 457.314ms
08-30 19:42:20.067 22008 22123 I s.conversation: Starting a blocking GC Alloc
08-30 19:42:20.067 22008 22042 I s.conversation: WaitForGcToComplete blocked Alloc on HeapTrim for 457.279ms
08-30 19:42:20.067 22008 22042 I s.conversation: Starting a blocking GC Alloc
08-30 19:42:20.071 22008 22008 I s.conversation: Waiting for a blocking GC Alloc
08-30 19:42:20.117 22008 22042 I s.conversation: Waiting for a blocking GC Alloc
08-30 19:42:20.250 22008 22019 I s.conversation: Waiting for a blocking GC Alloc
08-30 19:42:20.532 22008 22018 I s.conversation: Clamp target GC heap from 119MB to 96MB
```
",
926,https://api.github.com/repos/iNPUTmice/Conversations/issues/3868,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3868/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3868/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3868/events,https://github.com/iNPUTmice/Conversations/issues/3868,688744510,MDU6SXNzdWU2ODg3NDQ1MTA=,3868,"[Feature request] option to enable absolute timestamps always, and to show seconds","{'login': 'Soundtoxin', 'id': 3146494, 'node_id': 'MDQ6VXNlcjMxNDY0OTQ=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/3146494?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Soundtoxin', 'html_url': 'https://github.com/Soundtoxin', 'followers_url': 'https://api.github.com/users/Soundtoxin/followers', 'following_url': 'https://api.github.com/users/Soundtoxin/following{/other_user}', 'gists_url': 'https://api.github.com/users/Soundtoxin/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Soundtoxin/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Soundtoxin/subscriptions', 'organizations_url': 'https://api.github.com/users/Soundtoxin/orgs', 'repos_url': 'https://api.github.com/users/Soundtoxin/repos', 'events_url': 'https://api.github.com/users/Soundtoxin/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Soundtoxin/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-08-30T16:03:02Z,2020-08-31T11:39:02Z,2020-08-31T06:32:06Z,NONE,,,"I would like to see the exact second a message was sent, and I would like to see a full timestamp for a message just sent (instead of relative timestamps like ""just now"" or ""5 mins ago""). It can be useful for things like checking the latency of a bridge by seeing the seconds on both ends. Maybe it could be under expert settings if it's controversial.
I also think it would be worth having a way to see a full timestamp in the message options popup. Element (Matrix) has something like this when you long-press a message.",
927,https://api.github.com/repos/iNPUTmice/Conversations/issues/3867,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3867/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3867/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3867/events,https://github.com/iNPUTmice/Conversations/issues/3867,683889181,MDU6SXNzdWU2ODM4ODkxODE=,3867,Jingle audio session-accept rejected and then Conversations crashes,"{'login': 'singpolyma', 'id': 12770, 'node_id': 'MDQ6VXNlcjEyNzcw', 'avatar_url': 'https://avatars2.githubusercontent.com/u/12770?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/singpolyma', 'html_url': 'https://github.com/singpolyma', 'followers_url': 'https://api.github.com/users/singpolyma/followers', 'following_url': 'https://api.github.com/users/singpolyma/following{/other_user}', 'gists_url': 'https://api.github.com/users/singpolyma/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/singpolyma/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/singpolyma/subscriptions', 'organizations_url': 'https://api.github.com/users/singpolyma/orgs', 'repos_url': 'https://api.github.com/users/singpolyma/repos', 'events_url': 'https://api.github.com/users/singpolyma/events{/privacy}', 'received_events_url': 'https://api.github.com/users/singpolyma/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-08-22T00:29:47Z,2020-08-22T06:12:50Z,2020-08-22T06:12:50Z,CONTRIBUTOR,,,"So, I'm working on a SIP <-> Jingle gateway (sip.cheogram.com) and inbound calls (SIP -> Conversations) are working great. I've been working on getting outbound (Conversations -> SIP) to work. I think I'm pretty close, but I've hit a wall in my understanding I think.
When my gateway sends back a session-accept like this:
```
FE:D7:8E:5C:37:15:B2:34:8C:FF:A1:14:70:9C:69:5C:FB:32:E5:7B:96:E2:44:5B:A9:69:39:26:46:E4:E6:62FE:D7:8E:5C:37:15:B2:34:8C:FF:A1:14:70:9C:69:5C:FB:32:E5:7B:96:E2:44:5B:A9:69:39:26:46:E4:E6:62
```
Then Conversations' adb logcat shows:
```
08-21 20:15:24.395 10457 10485 D conversations: processing session-accept with 1 contents
08-21 20:15:24.395 10457 10485 D conversations: singpolyma@singpolyma.net: transitioned into SESSION_ACCEPTED
08-21 20:15:24.398 10457 10485 D conversations: onJingleRtpConnectionUpdate(CONNECTING)
08-21 20:15:24.437 10457 10485 D conversations: ForegroundService: on
08-21 20:15:24.476 10457 10485 D conversations: singpolyma@singpolyma.net: unable to set remote description after receiving session-accept
08-21 20:15:24.476 10457 10485 D conversations: java.lang.IllegalArgumentException: unable to set remote session description: Failed to set remote answer sdp: Failed to apply the description for audio: Answerer must use either active or passive value for setup attribute.
08-21 20:15:24.476 10457 10485 D conversations: at eu.siacs.conversations.xmpp.jingle.WebRTCWrapper$7.onSetFailure(WebRTCWrapper.java:478)
08-21 20:15:24.478 10457 11024 D conversations: singpolyma@singpolyma.net: PeerConnectionState changed to CLOSED
08-21 20:15:24.480 10457 11024 D conversations: eu.siacs.conversations.xmpp.jingle.ToneManager.transition(ENDING_CALL)
08-21 20:15:24.480 10457 11024 D conversations: eu.siacs.conversations.xmpp.jingle.ToneManager: do not configure audio manager because RTC has control
08-21 20:15:24.481 10457 11024 D conversations: onJingleRtpConnectionUpdate(ENDING_CALL)
08-21 20:15:24.503 10457 10485 D conversations: singpolyma@singpolyma.net: transitioned into TERMINATED_APPLICATION_FAILURE
08-21 20:15:24.504 10457 10485 D conversations: onJingleRtpConnectionUpdate(APPLICATION_ERROR)
08-21 20:15:24.504 10457 10485 D conversations: end card reached
08-21 20:15:24.504 10457 10485 D conversations: releasing proximity wake lock
08-21 20:15:24.509 10457 10457 D conversations: eu.siacs.conversations.services.AppRTCAudioManager.stop()
08-21 20:15:24.511 10457 10457 D conversations: stop: BT state=HEADSET_UNAVAILABLE
08-21 20:15:24.512 10457 10457 D conversations: stopScoAudio: BT state=HEADSET_UNAVAILABLE, SCO is on: false
08-21 20:15:24.521 10457 10457 D conversations: cancelTimer
08-21 20:15:24.522 10457 10457 D conversations: stop done: BT state=UNINITIALIZED
08-21 20:15:24.535 10457 10485 D conversations: ForegroundService: on
08-21 20:15:24.540 10457 10485 D conversations:
08-21 20:15:24.549 10457 10485 D conversations: received candidate: audio:0:candidate:15066244 1 udp 2130706431 192.99.233.116 18606 typ host generation 0 ufrag 12d3eed324f0c7b5269cb62d7ec2eb34::UNKNOWN
08-21 20:15:24.716 10457 10457 D conversations: Abandoned audio focus for VOICE_CALL streams
08-21 20:15:24.716 10457 10457 D conversations: stop@[name=main, id=1]
```
at which point the app crashes:
```
eu.siacs.conversations.xmpp.jingle.WebRTCWrapper$PeerConnectionNotInitialized: initialize PeerConnection first
at eu.siacs.conversations.xmpp.jingle.WebRTCWrapper.requirePeerConnection(WebRTCWrapper.java:555)
at eu.siacs.conversations.xmpp.jingle.WebRTCWrapper.addIceCandidate(WebRTCWrapper.java:497)
at eu.siacs.conversations.xmpp.jingle.JingleRtpConnection.processCandidates(JingleRtpConnection.java:286)
at eu.siacs.conversations.xmpp.jingle.JingleRtpConnection.receiveSessionAccept(JingleRtpConnection.java:375)
at eu.siacs.conversations.xmpp.jingle.JingleRtpConnection.deliverPacket(JingleRtpConnection.java:181)
at eu.siacs.conversations.xmpp.jingle.JingleConnectionManager.deliverPacket(JingleConnectionManager.java:85)
at eu.siacs.conversations.services.XmppConnectionService.lambda$createConnection$11$XmppConnectionService(XmppConnectionService.java:1359)
at eu.siacs.conversations.services.-$$Lambda$XmppConnectionService$VYN9drkH9aobUCuwT-F_1u6C7v8.onJinglePacketReceived(lambda)
at eu.siacs.conversations.xmpp.XmppConnection.processIq(XmppConnection.java:730)
at eu.siacs.conversations.xmpp.XmppConnection.processStream(XmppConnection.java:635)
at eu.siacs.conversations.xmpp.XmppConnection.processStream(XmppConnection.java:483)
at eu.siacs.conversations.xmpp.XmppConnection.switchOverToTls(XmppConnection.java:803)
at eu.siacs.conversations.xmpp.XmppConnection.processStream(XmppConnection.java:467)
at eu.siacs.conversations.xmpp.XmppConnection.connect(XmppConnection.java:375)
at eu.siacs.conversations.xmpp.XmppConnection.run(XmppConnection.java:454)
at java.lang.Thread.run(Thread.java:761)
```
It is very possible that I am doing something wrong that causes the rejection, but Googling ""Answerer must use either active or passive value for setup attribute"" is not being very enlightening as to what I'm missing, so if you have any guesses that would be super helpful :)
And of course the crash should probably not happen even if I send garbage back, but my main focus is sending something that will work.",
928,https://api.github.com/repos/iNPUTmice/Conversations/issues/3866,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3866/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3866/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3866/events,https://github.com/iNPUTmice/Conversations/issues/3866,681179285,MDU6SXNzdWU2ODExNzkyODU=,3866,Add support for SVG avatars,"{'login': 'quinao', 'id': 17725347, 'node_id': 'MDQ6VXNlcjE3NzI1MzQ3', 'avatar_url': 'https://avatars0.githubusercontent.com/u/17725347?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/quinao', 'html_url': 'https://github.com/quinao', 'followers_url': 'https://api.github.com/users/quinao/followers', 'following_url': 'https://api.github.com/users/quinao/following{/other_user}', 'gists_url': 'https://api.github.com/users/quinao/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/quinao/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/quinao/subscriptions', 'organizations_url': 'https://api.github.com/users/quinao/orgs', 'repos_url': 'https://api.github.com/users/quinao/repos', 'events_url': 'https://api.github.com/users/quinao/events{/privacy}', 'received_events_url': 'https://api.github.com/users/quinao/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-08-18T16:34:53Z,2020-08-18T17:21:50Z,2020-08-18T17:21:50Z,NONE,,,"#### General information
* **Version:** 2.8.10+pcr
* **Device:** FairPhone2
* **Android Version:** Android 7.1.2
* **Server name:** jabber.fr
* **Conversations source:** PlayStore
#### Steps to reproduce
1. Send messages to someone with a SVG avatar.
2. The avatar is not shown. Instead, there's a single letter as if this person didn't have an avatar at all.
However, I can see PNG avatars.
Also, I can see these SVG avatars if I use another XMPP client (e.g. Dino).
",
929,https://api.github.com/repos/iNPUTmice/Conversations/issues/3865,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3865/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3865/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3865/events,https://github.com/iNPUTmice/Conversations/issues/3865,680978837,MDU6SXNzdWU2ODA5Nzg4Mzc=,3865,How to toggle between group chat name and list of participants in roster?,"{'login': 'magoralczyk', 'id': 10485439, 'node_id': 'MDQ6VXNlcjEwNDg1NDM5', 'avatar_url': 'https://avatars1.githubusercontent.com/u/10485439?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/magoralczyk', 'html_url': 'https://github.com/magoralczyk', 'followers_url': 'https://api.github.com/users/magoralczyk/followers', 'following_url': 'https://api.github.com/users/magoralczyk/following{/other_user}', 'gists_url': 'https://api.github.com/users/magoralczyk/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/magoralczyk/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/magoralczyk/subscriptions', 'organizations_url': 'https://api.github.com/users/magoralczyk/orgs', 'repos_url': 'https://api.github.com/users/magoralczyk/repos', 'events_url': 'https://api.github.com/users/magoralczyk/events{/privacy}', 'received_events_url': 'https://api.github.com/users/magoralczyk/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-08-18T11:51:33Z,2020-08-18T17:22:49Z,2020-08-18T17:22:48Z,NONE,,,"It seems to me, that for group name lables conversations shows initially the comma seperated participants names (""alice, bob"") instead of the rooms name (""Alice and Bob discuss sausages""). Just for fun: gajim shows the internal room name like ""eyebelol"": perfect!
But in conversations the has to be a switch, because on my phone I see the right name, and my childeren just see the participants. Both the same versions (current: x.x.10), both identically configured, both connected to the same server.
Help?",
930,https://api.github.com/repos/iNPUTmice/Conversations/issues/3864,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3864/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3864/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3864/events,https://github.com/iNPUTmice/Conversations/issues/3864,680474684,MDU6SXNzdWU2ODA0NzQ2ODQ=,3864,compliance test: A/V call XEPs not tested,"{'login': 'mickroll', 'id': 9883575, 'node_id': 'MDQ6VXNlcjk4ODM1NzU=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/9883575?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mickroll', 'html_url': 'https://github.com/mickroll', 'followers_url': 'https://api.github.com/users/mickroll/followers', 'following_url': 'https://api.github.com/users/mickroll/following{/other_user}', 'gists_url': 'https://api.github.com/users/mickroll/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mickroll/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mickroll/subscriptions', 'organizations_url': 'https://api.github.com/users/mickroll/orgs', 'repos_url': 'https://api.github.com/users/mickroll/repos', 'events_url': 'https://api.github.com/users/mickroll/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mickroll/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-08-17T19:28:41Z,2020-08-17T19:52:09Z,2020-08-17T19:52:09Z,NONE,,,"#### General information
* **Version:** 2.8.10
* **Device:** Ulefone Armor X5
* **Android Version:** Android 9 (stock)
* **Server name:** draugr.de
* **Server capabilities:** https://www.draugr.de/features/
* **Conversations source:** F-Droid
I can't make an a/v call to any contact. I guess this is because the server draugr.de does not support the required XEPs. However, running the compliance test for this server gives a 100% result.
#### Steps to reproduce
1. visit https://compliance.conversations.im/server/draugr.de/
#### Expected result
The compliance test should at least mention a missing XEP for a/v calls.
I am not sure if a 100% compliance is the correct output, either.
#### Actual result
No mention of a/v features whatsoever.
100% compliance",
931,https://api.github.com/repos/iNPUTmice/Conversations/issues/3862,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3862/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3862/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3862/events,https://github.com/iNPUTmice/Conversations/issues/3862,679603805,MDU6SXNzdWU2Nzk2MDM4MDU=,3862,Minor confusing translation error: 'QR-Code' (English) becomes 'Barcode' in German translation,"{'login': 'CEHitchens', 'id': 44501098, 'node_id': 'MDQ6VXNlcjQ0NTAxMDk4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/44501098?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/CEHitchens', 'html_url': 'https://github.com/CEHitchens', 'followers_url': 'https://api.github.com/users/CEHitchens/followers', 'following_url': 'https://api.github.com/users/CEHitchens/following{/other_user}', 'gists_url': 'https://api.github.com/users/CEHitchens/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/CEHitchens/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/CEHitchens/subscriptions', 'organizations_url': 'https://api.github.com/users/CEHitchens/orgs', 'repos_url': 'https://api.github.com/users/CEHitchens/repos', 'events_url': 'https://api.github.com/users/CEHitchens/events{/privacy}', 'received_events_url': 'https://api.github.com/users/CEHitchens/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-08-15T16:24:13Z,2020-08-15T18:17:37Z,2020-08-15T18:17:37Z,NONE,,,"/Edit: just spotted that this in fact is an already known ""issue"". How would one get this change request to the translators?
Yes, Aztec, Data Matrix, MaxiCode, PDF417,CyberCode ... and QR-Codes are all 2D barcodes, but somehow I am under the impression that ""QR code"" might be the equivalent to a ""Kleenex"" or ""to xerox"".
#### General information
* **Version:** 2.8.10+fcr
* **Android Version:** LineageOS 16.0
* **Conversations source:** F-Droid
#### Steps to reproduce
1. 3.dot menu
2. Manage accounts
3. Tap on respective account
4. Tap on "" < "" share icon
5. Spot that ""QR-Code"" is translated to ""Barcode"" in German there.
#### Expected result
A minor translation adjustment for ""QR-Code"" to actually remain ""QR-Code"" as a bar code is something else and I could imagine others finding this confusing as well.
i.e. ""Als QR-Code teilen"" and ""QR-Code anzeigen""
#### Actual result
Well, the term ""Barcode"" is used in the German translation
",
932,https://api.github.com/repos/iNPUTmice/Conversations/issues/3861,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3861/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3861/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3861/events,https://github.com/iNPUTmice/Conversations/issues/3861,678349269,MDU6SXNzdWU2NzgzNDkyNjk=,3861,How to restart ICE servers?,"{'login': 'mical892524', 'id': 33045863, 'node_id': 'MDQ6VXNlcjMzMDQ1ODYz', 'avatar_url': 'https://avatars3.githubusercontent.com/u/33045863?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mical892524', 'html_url': 'https://github.com/mical892524', 'followers_url': 'https://api.github.com/users/mical892524/followers', 'following_url': 'https://api.github.com/users/mical892524/following{/other_user}', 'gists_url': 'https://api.github.com/users/mical892524/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mical892524/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mical892524/subscriptions', 'organizations_url': 'https://api.github.com/users/mical892524/orgs', 'repos_url': 'https://api.github.com/users/mical892524/repos', 'events_url': 'https://api.github.com/users/mical892524/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mical892524/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-08-13T11:01:59Z,2020-08-13T17:22:34Z,2020-08-13T17:22:34Z,NONE,,,"when ICE servers is down, then I need replace new dynamic ICE servers and resume call. How to do?",
933,https://api.github.com/repos/iNPUTmice/Conversations/issues/3860,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3860/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3860/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3860/events,https://github.com/iNPUTmice/Conversations/issues/3860,677765938,MDU6SXNzdWU2Nzc3NjU5Mzg=,3860,Images sent from another client appear as text link and vice versa,"{'login': 'anyuta1166', 'id': 726409, 'node_id': 'MDQ6VXNlcjcyNjQwOQ==', 'avatar_url': 'https://avatars1.githubusercontent.com/u/726409?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/anyuta1166', 'html_url': 'https://github.com/anyuta1166', 'followers_url': 'https://api.github.com/users/anyuta1166/followers', 'following_url': 'https://api.github.com/users/anyuta1166/following{/other_user}', 'gists_url': 'https://api.github.com/users/anyuta1166/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/anyuta1166/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/anyuta1166/subscriptions', 'organizations_url': 'https://api.github.com/users/anyuta1166/orgs', 'repos_url': 'https://api.github.com/users/anyuta1166/repos', 'events_url': 'https://api.github.com/users/anyuta1166/events{/privacy}', 'received_events_url': 'https://api.github.com/users/anyuta1166/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,13,2020-08-12T15:03:06Z,2020-08-14T16:31:44Z,2020-08-12T19:46:41Z,CONTRIBUTOR,,,"#### General information
* **Version:** 2.8.10
* **Device:** Motorola G7 +
* **Android Version:** Android 9 (stock)
* **Server name:** self hosted
* **Server software:** ejabberd 20.04
* **Conversations source:** PlayStore
Hmm... I use Xabber Web XMPP client to chat through the desktop sometimes.
And there is an issue with message history.
Images sent from Conversations appears as an image in Conversations, but as a text link in Xabber Web.
And vice versa.
Images sent from Xabber Web appears as an image in Xabber Web, but as a text link in Conversations.
What is this? Different implementation of XEP-0363: HTTP File Upload?
Any fix possible, and on which side it should be done?
",
934,https://api.github.com/repos/iNPUTmice/Conversations/issues/3859,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3859/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3859/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3859/events,https://github.com/iNPUTmice/Conversations/issues/3859,676802090,MDU6SXNzdWU2NzY4MDIwOTA=,3859,Links with Dollar symbols are not correctly recognized,"{'login': 'jhaye', 'id': 7195008, 'node_id': 'MDQ6VXNlcjcxOTUwMDg=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/7195008?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jhaye', 'html_url': 'https://github.com/jhaye', 'followers_url': 'https://api.github.com/users/jhaye/followers', 'following_url': 'https://api.github.com/users/jhaye/following{/other_user}', 'gists_url': 'https://api.github.com/users/jhaye/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jhaye/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jhaye/subscriptions', 'organizations_url': 'https://api.github.com/users/jhaye/orgs', 'repos_url': 'https://api.github.com/users/jhaye/repos', 'events_url': 'https://api.github.com/users/jhaye/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jhaye/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2315524880, 'node_id': 'MDU6TGFiZWwyMzE1NTI0ODgw', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/pr-welccome', 'name': 'pr-welccome', 'color': '491291', 'default': False, 'description': ''}]",open,False,,[],,0,2020-08-11T11:31:06Z,2020-09-01T06:01:55Z,,NONE,,,"#### General information
* **Version:** 2.8.9+fcr
* **Device:** Google Pixel
* **Android Version:** Android 10 (stock)
#### Steps to reproduce
Paste a link like https://epetitionen.bundestag.de/petitionen/_2020/_07/_06/Petition_113349.nc.$$$.a.u.html into a conversation.
#### Expected result
While dollar symbols in web links are uncommon, it should be properly recognized and turned into a link.
#### Actual result
The URL gets turned into a link, but only up until the first Dollar symbol occurs.",
935,https://api.github.com/repos/iNPUTmice/Conversations/issues/3858,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3858/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3858/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3858/events,https://github.com/iNPUTmice/Conversations/issues/3858,676074589,MDU6SXNzdWU2NzYwNzQ1ODk=,3858,Unable to reach server,"{'login': 'jarvisv4', 'id': 45689507, 'node_id': 'MDQ6VXNlcjQ1Njg5NTA3', 'avatar_url': 'https://avatars2.githubusercontent.com/u/45689507?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jarvisv4', 'html_url': 'https://github.com/jarvisv4', 'followers_url': 'https://api.github.com/users/jarvisv4/followers', 'following_url': 'https://api.github.com/users/jarvisv4/following{/other_user}', 'gists_url': 'https://api.github.com/users/jarvisv4/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jarvisv4/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jarvisv4/subscriptions', 'organizations_url': 'https://api.github.com/users/jarvisv4/orgs', 'repos_url': 'https://api.github.com/users/jarvisv4/repos', 'events_url': 'https://api.github.com/users/jarvisv4/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jarvisv4/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-08-10T11:46:34Z,2020-08-10T12:03:20Z,2020-08-10T12:03:20Z,NONE,,,"#### General information
* **Version:** NA
* **Device:** Android 8.0+ version devices
* **Android Version:** Android 8.0+ version
* **Server name:** self hosted
* **Server software:** ejabberd 20.04
* **Installed server modules:** Stream Managment, CSI, MAM
* **Conversations source:** self build (latest HEAD)
#### Steps to reproduce
1. …On devices targeting Android 8.0+ and mostly observed on android 10 just turn off internet connection and keep the app idle for 2-4 hours.
2. Reconnect to the Internet and open app again.
#### Expected result
Accounts should be reconnected and able to perform chat.
#### Actual result
Instead of the app is unable to reach the server until the app is reopened or cleared data and restarted.
#### Debug output
-> Resolver: error resolving SRV record (direct TLS)[0m
-> de.measite.minidns.util.MultipleIoException: Poll timed out, failed to connect to /59.144.144.46 (port 53) from /:: (port 0) after 3000ms: connect failed: ENETUNREACH (Network is unreachable), sendto failed: ENETUNREACH (Network is unreachable), failed to connect to /122.169.123.80 (port 53) from /:: (port 0) after 3000ms: connect failed: ENETUNREACH (Network is unreachable), sendto failed: ENETUNREACH (Network is unreachable), failed to connect to /2404:a800:0:14::1:1019 (port 53) from /:: (port 0) after 3000ms: connect failed: ENETUNREACH (Network is unreachable), sendto failed: ENETUNREACH (Network is unreachable), failed to connect to /2401:4900:50:9::28 (port 53) from /:: (port 0) after 3000ms: connect failed: ENETUNREACH (Network is unreachable), sendto failed: ENETUNREACH (Network is unreachable), failed to connect to /8.8.8.8 (port 53) from /:: (port 0) after 3000ms: connect failed: ENETUNREACH (Network is unreachable), sendto failed: ENETUNREACH (Network is unreachable), failed to connect to e.root-servers.net/192.203.230.10 (port 53) from /:: (port 0) after 5000ms: connect failed: ENETUNREACH (Network is unreachable), sendto failed: ENETUNREACH (Network is unreachable), failed to connect to c.root-servers.net/2001:500:2::c (port 53) from /:: (port 0) after 5000ms: connect failed: ENETUNREACH (Network is unreachable)[0m
````
",
936,https://api.github.com/repos/iNPUTmice/Conversations/issues/3857,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3857/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3857/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3857/events,https://github.com/iNPUTmice/Conversations/pull/3857,675673204,MDExOlB1bGxSZXF1ZXN0NDY1MTMyODAy,3857,Missed call notifications,"{'login': 'dmitry-markin', 'id': 6322171, 'node_id': 'MDQ6VXNlcjYzMjIxNzE=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/6322171?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dmitry-markin', 'html_url': 'https://github.com/dmitry-markin', 'followers_url': 'https://api.github.com/users/dmitry-markin/followers', 'following_url': 'https://api.github.com/users/dmitry-markin/following{/other_user}', 'gists_url': 'https://api.github.com/users/dmitry-markin/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dmitry-markin/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dmitry-markin/subscriptions', 'organizations_url': 'https://api.github.com/users/dmitry-markin/orgs', 'repos_url': 'https://api.github.com/users/dmitry-markin/repos', 'events_url': 'https://api.github.com/users/dmitry-markin/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dmitry-markin/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,0,2020-08-09T10:09:17Z,2020-08-24T07:40:14Z,,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/pulls/3857', 'html_url': 'https://github.com/iNPUTmice/Conversations/pull/3857', 'diff_url': 'https://github.com/iNPUTmice/Conversations/pull/3857.diff', 'patch_url': 'https://github.com/iNPUTmice/Conversations/pull/3857.patch'}",Hope this may be helpful,
937,https://api.github.com/repos/iNPUTmice/Conversations/issues/3856,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3856/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3856/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3856/events,https://github.com/iNPUTmice/Conversations/issues/3856,675541047,MDU6SXNzdWU2NzU1NDEwNDc=,3856,Conversations - Show last know nick for Quicksy contacts,"{'login': 'licaon-kter', 'id': 2282799, 'node_id': 'MDQ6VXNlcjIyODI3OTk=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2282799?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/licaon-kter', 'html_url': 'https://github.com/licaon-kter', 'followers_url': 'https://api.github.com/users/licaon-kter/followers', 'following_url': 'https://api.github.com/users/licaon-kter/following{/other_user}', 'gists_url': 'https://api.github.com/users/licaon-kter/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/licaon-kter/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/licaon-kter/subscriptions', 'organizations_url': 'https://api.github.com/users/licaon-kter/orgs', 'repos_url': 'https://api.github.com/users/licaon-kter/repos', 'events_url': 'https://api.github.com/users/licaon-kter/events{/privacy}', 'received_events_url': 'https://api.github.com/users/licaon-kter/received_events', 'type': 'User', 'site_admin': False}","[{'id': 76683388, 'node_id': 'MDU6TGFiZWw3NjY4MzM4OA==', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/feature', 'name': 'feature', 'color': '128a00', 'default': False, 'description': 'Accepted feature request'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/10', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/10', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/10/labels', 'id': 5715881, 'node_id': 'MDk6TWlsZXN0b25lNTcxNTg4MQ==', 'number': 10, 'title': '2.8.11', 'description': '', 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 7, 'state': 'open', 'created_at': '2020-07-30T15:09:08Z', 'updated_at': '2020-09-01T12:04:49Z', 'due_on': None, 'closed_at': None}",0,2020-08-08T15:18:15Z,2020-08-31T07:05:11Z,2020-08-31T07:05:11Z,CONTRIBUTOR,,,"...if not connected
Steps:
* disconnect account
* force kill app or reboot device
* open Conversations (but don't connect account)
Expected:
* Chat view with nicks
Actual:
* A bunch of +XXXXXXXXXX entries",
938,https://api.github.com/repos/iNPUTmice/Conversations/issues/3855,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3855/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3855/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3855/events,https://github.com/iNPUTmice/Conversations/issues/3855,673772482,MDU6SXNzdWU2NzM3NzI0ODI=,3855,Record voice does not use bluetooth,"{'login': 'tyler71', 'id': 4926565, 'node_id': 'MDQ6VXNlcjQ5MjY1NjU=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/4926565?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/tyler71', 'html_url': 'https://github.com/tyler71', 'followers_url': 'https://api.github.com/users/tyler71/followers', 'following_url': 'https://api.github.com/users/tyler71/following{/other_user}', 'gists_url': 'https://api.github.com/users/tyler71/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/tyler71/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/tyler71/subscriptions', 'organizations_url': 'https://api.github.com/users/tyler71/orgs', 'repos_url': 'https://api.github.com/users/tyler71/repos', 'events_url': 'https://api.github.com/users/tyler71/events{/privacy}', 'received_events_url': 'https://api.github.com/users/tyler71/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,0,2020-08-05T18:55:03Z,2020-08-05T18:55:03Z,,NONE,,,"#### General information
* **Version:** 2.8.10+pcr
* **Device:** Nokia 7.1 (Android 10), Samsung J3 (Android 8.1)
* **Conversations source:** PlayStore Beta Channel
#### Steps to reproduce
* Select attachment, Record voice
* (or) Attempt to call contact, get busy status, tap on voicemail button
#### Expected result
I am able to make calls just fine with bluetooth.
However Recording audio uses the phones mic.
This is confusing behavior, as Conversations will offer to record a voicemail if the contact is busy and the user may not expect the mic source to change
Here is a logcat of answering a call with bluetooth, followed by Recording audio.
logcat
```
08-05 11:38:54.943 5643 10173 D conversations: user1@domain.tld: delivered message to JingleRtpConnection
08-05 11:38:54.943 5643 10173 D conversations: user1@domain.tld: received session proposal from user2@domain.tld/Conversations.MXYQ for [audio]
08-05 11:38:54.943 5643 10173 D conversations: user1@domain.tld: transitioned into PROPOSED
08-05 11:38:54.946 5643 10173 D conversations: ForegroundService: on
08-05 11:38:54.946 5643 10173 D conversations: user1@domain.tld: received call from user2@domain.tld/Conversations.MXYQ. start ringing
08-05 11:38:57.531 5643 5643 D conversations: intent action was accept
08-05 11:38:57.532 5643 5643 D conversations: acquiring proximity wake lock
08-05 11:38:57.535 5643 5643 D conversations: user1@domain.tld: transitioned into PROCEED
08-05 11:38:57.535 5643 5643 D conversations: onJingleRtpConnectionUpdate(ACCEPTING_CALL)
08-05 11:38:57.553 5643 5643 D conversations: ForegroundService: on
08-05 11:38:57.604 5643 10173 D conversations: user1@domain.tld: delivered message to JingleRtpConnection
08-05 11:38:57.604 5643 10173 D conversations: user1@domain.tld: unable to transition to accept because already in state=PROCEED
08-05 11:38:57.819 5643 13948 D conversations: checking microphone availability took 283ms
08-05 11:38:57.878 5643 10173 D conversations: user1@domain.tld: packet delivered to JingleRtpConnection
08-05 11:38:57.878 5643 10173 D conversations: processing session-init with 1 contents
08-05 11:38:57.878 5643 10173 D conversations: user1@domain.tld: transitioned into SESSION_INITIALIZED_PRE_APPROVED
08-05 11:38:57.878 5643 10173 D conversations: onJingleRtpConnectionUpdate(CONNECTING)
08-05 11:38:57.882 5643 10173 D conversations: ForegroundService: on
08-05 11:38:57.882 5643 10173 D conversations: user1@domain.tld: automatically accepting session-initiate
08-05 11:38:57.910 5643 10173 D conversations: user1@domain.tld: packet delivered to JingleRtpConnection
08-05 11:38:57.955 5643 10173 D conversations: user1@domain.tld: discovered ICE Server: [stun:turn.domain.tld:443?transport=udp] [:] [TLS_CERT_POLICY_INSECURE_NO_CHECK] [] [null] [null]
08-05 11:38:57.955 5643 10173 D conversations: user1@domain.tld: discovered ICE Server: [stun:xmpp.domain.tld:443?transport=udp] [:] [TLS_CERT_POLICY_INSECURE_NO_CHECK] [] [null] [null]
08-05 11:38:57.956 5643 10173 D conversations: user1@domain.tld: discovered ICE Server: [turn:turn.domain.tld:443?transport=udp] [4235235:sdafadsfd:JFE8ykk1LkeJa8qO/8Ea4lxgGGY=] [TLS_CERT_POLICY_INSECURE_NO_CHECK] [] [null] [null]
08-05 11:38:57.956 5643 10173 D conversations: user1@domain.tld: discovered ICE Server: [turn:xmpp.domain.tld:443?transport=udp] [4235235:sdafadsfd:JFE8ykk1LkeJa8qO/8Ea4lxgGGY=] [TLS_CERT_POLICY_INSECURE_NO_CHECK] [] [null] [null]
08-05 11:38:57.958 5643 5643 D conversations: ctor
08-05 11:38:57.958 5643 5643 D conversations: create@[name=main, id=2]
08-05 11:38:57.958 5643 5643 D conversations: ctor
08-05 11:38:57.958 5643 10173 D conversations: setUseHardwareAcousticEchoCanceler(true) model=Nokia 7.1
08-05 11:38:57.959 5643 5643 D conversations: AppRTCProximitySensor@[name=main, id=2]
08-05 11:38:57.959 5643 5643 D conversations: defaultAudioDevice: EARPIECE
08-05 11:38:57.959 5643 5643 D conversations: Android SDK: 29, Release: 10, Brand: Nokia, Device: CTL_sprout, Id: QKQ1.190828.002, Hardware: qcom, Manufacturer: HMD Global, Model: Nokia 7.1, Product: Crystal_00WW
08-05 11:38:57.959 5643 5643 D conversations: eu.siacs.conversations.services.AppRTCAudioManager.start()
08-05 11:38:57.963 5643 5643 D conversations: Audio focus request granted for VOICE_CALL streams
08-05 11:38:57.978 5643 13956 D conversations: no remote video tracks found
08-05 11:38:57.979 5643 10173 D conversations: received candidate: audio:0:candidate:3690124833 1 udp 2122260223 192.168.1.147 43878 typ host generation 0 ufrag uBFE::UNKNOWN
08-05 11:38:57.980 5643 10173 D conversations: user1@domain.tld: added candidates from back log
08-05 11:38:57.980 5643 10173 D conversations: user1@domain.tld: added candidates from back log
08-05 11:38:57.985 5643 10173 D conversations: user1@domain.tld: transitioned into SESSION_ACCEPTED
08-05 11:38:57.990 5643 10173 D conversations: onJingleRtpConnectionUpdate(CONNECTING)
08-05 11:38:57.994 5643 10173 D conversations: ForegroundService: on
08-05 11:38:58.615 5643 5643 D conversations: start
08-05 11:38:58.619 5643 5643 D conversations: BluetoothAdapter: enabled=true, state=ON, name=Nokia 7.1, address=02:00:00:00:00:00
08-05 11:38:58.621 5643 5643 D conversations: paired devices:
08-05 11:38:58.622 5643 5643 D conversations: name=Echo Dot-KJA, address=FC:65:DE:DE:8A:57
08-05 11:38:58.623 5643 5643 D conversations: name=ufo, address=00:00:00:00:9F:22
08-05 11:38:58.624 5643 5643 D conversations: name=TaoTronics TT-BR04, address=00:6A:8E:17:2B:FE
08-05 11:38:58.629 5643 5643 D conversations: HEADSET profile state: CONNECTED
08-05 11:38:58.629 5643 5643 D conversations: Bluetooth proxy for headset profile has started
08-05 11:38:58.629 5643 5643 D conversations: start done: BT state=HEADSET_UNAVAILABLE
08-05 11:38:58.629 5643 5643 D conversations: --- updateAudioDeviceState: wired headset=false, BT state=HEADSET_UNAVAILABLE
08-05 11:38:58.629 5643 5643 D conversations: Device status: available=[], selected=NONE, user selected=NONE
08-05 11:38:58.629 5643 5643 D conversations: setAudioDeviceInternal(device=EARPIECE)
08-05 11:38:58.630 5643 5643 D conversations: New device status: available=[SPEAKER_PHONE, EARPIECE], selected=EARPIECE
08-05 11:38:58.630 5643 5643 D conversations: onAudioDeviceChanged in activity: selected:EARPIECE, available:[SPEAKER_PHONE, EARPIECE]
08-05 11:38:58.635 5643 5643 D conversations: --- updateAudioDeviceState done
08-05 11:38:58.636 5643 10173 D conversations: user1@domain.tld: packet delivered to JingleRtpConnection
08-05 11:38:58.637 5643 10173 D conversations: received candidate: audio:0:candidate:842163049 1 udp 1686052607 s 43878 typ srflx raddr 192.168.1.147 rport 43878 generation 0 ufrag uBFE::UNKNOWN
08-05 11:38:58.638 5643 5643 D conversations: AudioManager started
08-05 11:38:58.638 5643 5643 D conversations: onAudioDeviceChanged in activity: selected:EARPIECE, available:[SPEAKER_PHONE, EARPIECE]
08-05 11:38:58.641 5643 10173 D conversations: user1@domain.tld: packet delivered to JingleRtpConnection
08-05 11:38:58.641 5643 10173 D conversations: received candidate: audio:0:candidate:3364722087 1 udp 41885695 192.184.90.30 62309 typ relay raddr 97.113.202.196 rport 43878 generation 0 ufrag uBFE::UNKNOWN
08-05 11:38:58.646 5643 13956 D conversations: user1@domain.tld: PeerConnectionState changed to CONNECTING
08-05 11:38:58.646 5643 13956 D conversations: onJingleRtpConnectionUpdate(CONNECTING)
08-05 11:38:58.647 5643 13956 D conversations: sending candidate: audio:0:candidate:3203526599 1 udp 2122260223 192.168.1.158 46733 typ host generation 0 ufrag jpnZ network-id 4 network-cost 10::UNKNOWN
08-05 11:38:58.650 5643 13956 D conversations: remote candidate selected: :-1:candidate:3690124833 1 udp 2122260223 192.168.1.147 43878 typ host generation 0 ufrag uBFE::UNKNOWN
08-05 11:38:58.650 5643 13956 D conversations: local candidate selected: :-1:candidate:3203526599 1 udp 2122260223 192.168.1.158 46733 typ host generation 0 ufrag jpnZ network-id 4 network-cost 10::WIFI
08-05 11:38:58.689 5643 13956 D conversations: user1@domain.tld: PeerConnectionState changed to CONNECTED
08-05 11:38:58.689 5643 13956 D conversations: eu.siacs.conversations.xmpp.jingle.ToneManager.transition(CONNECTED)
08-05 11:38:58.690 5643 13956 D conversations: eu.siacs.conversations.xmpp.jingle.ToneManager: do not configure audio manager because RTC has control
08-05 11:38:58.690 5643 13956 D conversations: onJingleRtpConnectionUpdate(CONNECTED)
08-05 11:38:58.727 5643 5643 D conversations: BluetoothServiceListener.onServiceConnected: BT state=HEADSET_UNAVAILABLE
08-05 11:38:58.727 5643 5643 D conversations: updateAudioDeviceState
08-05 11:38:58.727 5643 5643 D conversations: --- updateAudioDeviceState: wired headset=false, BT state=HEADSET_UNAVAILABLE
08-05 11:38:58.727 5643 5643 D conversations: Device status: available=[SPEAKER_PHONE, EARPIECE], selected=EARPIECE, user selected=NONE
08-05 11:38:58.727 5643 5643 D conversations: updateDevice
08-05 11:38:58.733 5643 5643 D conversations: Connected bluetooth headset: name=ufo, state=CONNECTED, SCO audio=false
08-05 11:38:58.733 5643 5643 D conversations: updateDevice done: BT state=HEADSET_AVAILABLE
08-05 11:38:58.733 5643 5643 D conversations: Need BT audio: start=true, stop=false, BT state=HEADSET_AVAILABLE
08-05 11:38:58.734 5643 5643 D conversations: startSco: BT state=HEADSET_AVAILABLE, attempts: 0, SCO is on: false
08-05 11:38:58.734 5643 5643 D conversations: Starting Bluetooth SCO and waits for ACTION_AUDIO_STATE_CHANGED...
08-05 11:38:58.743 5643 5643 D conversations: startTimer
08-05 11:38:58.744 5643 5643 D conversations: startScoAudio done: BT state=SCO_CONNECTING, SCO is on: true
08-05 11:38:58.744 5643 5643 D conversations: setAudioDeviceInternal(device=EARPIECE)
08-05 11:38:58.744 5643 5643 D conversations: New device status: available=[BLUETOOTH, SPEAKER_PHONE, EARPIECE], selected=EARPIECE
08-05 11:38:58.744 5643 5643 D conversations: onAudioDeviceChanged in activity: selected:EARPIECE, available:[BLUETOOTH, SPEAKER_PHONE, EARPIECE]
08-05 11:38:58.745 5643 5643 D conversations: --- updateAudioDeviceState done
08-05 11:38:58.745 5643 5643 D conversations: onServiceConnected done: BT state=SCO_CONNECTING
08-05 11:38:58.804 5643 5643 D conversations: BluetoothHeadsetBroadcastReceiver.onReceive: a=ACTION_AUDIO_STATE_CHANGED, s=TURNING_ON, sb=false, BT state: SCO_CONNECTING
08-05 11:38:58.804 5643 5643 D conversations: +++ Bluetooth audio SCO is now connecting...
08-05 11:38:58.804 5643 5643 D conversations: onReceive done: BT state=SCO_CONNECTING
08-05 11:38:58.921 5643 5643 D conversations: BluetoothHeadsetBroadcastReceiver.onReceive: a=ACTION_AUDIO_STATE_CHANGED, s=ON, sb=false, BT state: SCO_CONNECTING
08-05 11:38:58.921 5643 5643 D conversations: cancelTimer
08-05 11:38:58.921 5643 5643 D conversations: +++ Bluetooth audio SCO is now connected
08-05 11:38:58.921 5643 5643 D conversations: updateAudioDeviceState
08-05 11:38:58.921 5643 5643 D conversations: --- updateAudioDeviceState: wired headset=false, BT state=SCO_CONNECTED
08-05 11:38:58.921 5643 5643 D conversations: Device status: available=[BLUETOOTH, SPEAKER_PHONE, EARPIECE], selected=EARPIECE, user selected=NONE
08-05 11:38:58.922 5643 5643 D conversations: Need BT audio: start=false, stop=false, BT state=SCO_CONNECTED
08-05 11:38:58.922 5643 5643 D conversations: setAudioDeviceInternal(device=BLUETOOTH)
08-05 11:38:58.925 5643 5643 D conversations: New device status: available=[BLUETOOTH, SPEAKER_PHONE, EARPIECE], selected=BLUETOOTH
08-05 11:38:58.925 5643 5643 D conversations: onAudioDeviceChanged in activity: selected:BLUETOOTH, available:[BLUETOOTH, SPEAKER_PHONE, EARPIECE]
08-05 11:38:58.927 5643 5643 D conversations: --- updateAudioDeviceState done
08-05 11:38:58.927 5643 5643 D conversations: onReceive done: BT state=SCO_CONNECTED
08-05 11:39:04.918 5643 10173 D conversations: user1@domain.tld: packet delivered to JingleRtpConnection
08-05 11:39:04.918 5643 10173 D conversations: user1@domain.tld: received session terminate reason=success() while in state SESSION_ACCEPTED
08-05 11:39:04.921 5643 13956 D conversations: user1@domain.tld: PeerConnectionState changed to CLOSED
08-05 11:39:04.921 5643 13956 D conversations: eu.siacs.conversations.xmpp.jingle.ToneManager.transition(ENDING_CALL)
08-05 11:39:04.921 5643 13956 D conversations: eu.siacs.conversations.xmpp.jingle.ToneManager: do not configure audio manager because RTC has control
08-05 11:39:04.921 5643 13956 D conversations: onJingleRtpConnectionUpdate(ENDING_CALL)
08-05 11:39:05.020 5643 10173 D conversations: user1@domain.tld: transitioned into TERMINATED_SUCCESS
08-05 11:39:05.020 5643 10173 D conversations: onJingleRtpConnectionUpdate(ENDED)
08-05 11:39:05.024 5643 5643 D conversations: eu.siacs.conversations.services.AppRTCAudioManager.stop()
08-05 11:39:05.024 5643 5643 D conversations: stop: BT state=SCO_CONNECTED
08-05 11:39:05.025 5643 5643 D conversations: stopScoAudio: BT state=SCO_CONNECTED, SCO is on: true
08-05 11:39:05.025 5643 5643 D conversations: cancelTimer
08-05 11:39:05.031 5643 10173 D conversations: ForegroundService: on
08-05 11:39:05.034 5643 5643 D conversations: stopScoAudio done: BT state=SCO_DISCONNECTING, SCO is on: false
08-05 11:39:05.034 5643 5643 D conversations: cancelTimer
08-05 11:39:05.036 5643 5643 D conversations: stop done: BT state=UNINITIALIZED
08-05 11:39:05.075 5643 5643 D conversations: Abandoned audio focus for VOICE_CALL streams
08-05 11:39:05.075 5643 5643 D conversations: stop@[name=main, id=2]
08-05 11:39:05.097 5643 5643 D conversations: reInit(hasExtras=false)
08-05 11:39:05.099 5643 5643 D conversations: scrolledToBottomAndNoPending=true
08-05 11:39:05.100 5643 5643 D conversations: jump to first unread message
08-05 11:39:05.142 5643 5643 D conversations: ConversationFragment.onBackendConnected()
08-05 11:39:05.212 5643 5643 D conversations: releasing proximity wake lock
08-05 11:39:05.296 5643 14213 D conversations: eu.siacs.conversations.xmpp.jingle.ToneManager: putting AudioManager back into normal mode
08-05 11:39:15.563 5643 5643 D conversations: guessMimeTypeFromUriAndMime file:///storage/emulated/0/Conversations/Media/Conversations%20Recordings/RECORDING_20200805_113908962.m4a and mime=null
```
>> eu.siacs.conversations <<<
07-23 21:35:38.259 13754 13754 F DEBUG : signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
07-23 21:35:38.259 13754 13754 F DEBUG : Abort message: 'Failed to set damage region on surface 0x75db0c5880, error=EGL_BAD_ACCESS'
07-23 21:35:38.259 13754 13754 F DEBUG : x0 0000000000000000 x1 0000000000001c23 x2 0000000000000006 x3 0000000000000008
07-23 21:35:38.259 13754 13754 F DEBUG : x4 feff71647164636d x5 feff71647164636d x6 feff71647164636d x7 7f7f7f7f7f7f7f7f
07-23 21:35:38.259 13754 13754 F DEBUG : x8 0000000000000083 x9 a208e0b119efa6a1 x10 fffffff87ffffbdf x11 0000000000000001
07-23 21:35:38.259 13754 13754 F DEBUG : x12 fffffffc7ffffbdf x13 ffffffffffffffff x14 ffffffffff000000 x15 ffffffffffffffff
07-23 21:35:38.259 13754 13754 F DEBUG : x16 000000768d2b32a8 x17 000000768d1f2540 x18 00000000ffffffff x19 0000000000001817
07-23 21:35:38.259 13754 13754 F DEBUG : x20 0000000000001c23 x21 0000000000000083 x22 00000075ee0fe1b0 x23 00000075e83a14b0
07-23 21:35:38.259 13754 13754 F DEBUG : x24 0000000000000001 x25 00000075e83a1424 x26 00000075ee0fe198 x27 00000075e83a1422
07-23 21:35:38.259 13754 13754 F DEBUG : x28 0000000000000000 x29 00000075ee0fdaf0
07-23 21:35:38.259 13754 13754 F DEBUG : sp 00000075ee0fdab0 lr 000000768d1e6210 pc 000000768d1e6230
07-23 21:35:38.329 13754 13754 F DEBUG :
07-23 21:35:38.329 13754 13754 F DEBUG : backtrace:
07-23 21:35:38.329 13754 13754 F DEBUG : #00 pc 0000000000022230 /system/lib64/libc.so (abort+112)
07-23 21:35:38.329 13754 13754 F DEBUG : #01 pc 0000000000008388 /system/lib64/liblog.so (__android_log_assert+328)
07-23 21:35:38.329 13754 13754 F DEBUG : #02 pc 00000000004ad034 /system/lib64/libhwui.so (android::uirenderer::renderthread::EglManager::damageFrame(android::uirenderer::renderthread::Frame const&, SkRect const&)+180)
07-23 21:35:38.329 13754 13754 F DEBUG : #03 pc 00000000004a65fc /system/lib64/libhwui.so (android::uirenderer::skiapipeline::SkiaOpenGLPipeline::draw(android::uirenderer::renderthread::Frame const&, SkRect const&, SkRect const&, android::uirenderer::FrameBuilder::LightGeometry const&, android::uirenderer::LayerUpdateQueue*, android::uirenderer::Rect const&, bool, bool, android::uirenderer::BakedOpRenderer::LightInfo const&, std::__1::vector, std::__1::allocator>> eu.siacs.conversations <<<
07-24 07:56:16.486 32495 32495 F DEBUG : signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
07-24 07:56:16.486 32495 32495 F DEBUG : Abort message: 'Failed to set damage region on surface 0x75e88ad180, error=EGL_BAD_ACCESS'
07-24 07:56:16.486 32495 32495 F DEBUG : x0 0000000000000000 x1 00000000000035e7 x2 0000000000000006 x3 0000000000000008
07-24 07:56:16.486 32495 32495 F DEBUG : x4 feff71647164636d x5 feff71647164636d x6 feff71647164636d x7 7f7f7f7f7f7f7f7f
07-24 07:56:16.486 32495 32495 F DEBUG : x8 0000000000000083 x9 a208e0b119efa6a1 x10 fffffff87ffffbdf x11 0000000000000001
07-24 07:56:16.486 32495 32495 F DEBUG : x12 fffffffc7ffffbdf x13 ffffffffffffffff x14 ffffffffff000000 x15 ffffffffffffffff
07-24 07:56:16.486 32495 32495 F DEBUG : x16 000000768d2b32a8 x17 000000768d1f2540 x18 00000000ffffffff x19 00000000000035c7
07-24 07:56:16.486 32495 32495 F DEBUG : x20 00000000000035e7 x21 0000000000000083 x22 00000075ef3af1b0 x23 00000075ea5a1e70
07-24 07:56:16.486 32495 32495 F DEBUG : x24 0000000000000001 x25 00000075ea5a1de4 x26 00000075ef3af198 x27 00000075ea5a1de2
07-24 07:56:16.486 32495 32495 F DEBUG : x28 0000000000000000 x29 00000075ef3aeaf0
07-24 07:56:16.486 32495 32495 F DEBUG : sp 00000075ef3aeab0 lr 000000768d1e6210 pc 000000768d1e6230
07-24 07:56:16.575 32495 32495 F DEBUG :
07-24 07:56:16.575 32495 32495 F DEBUG : backtrace:
07-24 07:56:16.575 32495 32495 F DEBUG : #00 pc 0000000000022230 /system/lib64/libc.so (abort+112)
07-24 07:56:16.575 32495 32495 F DEBUG : #01 pc 0000000000008388 /system/lib64/liblog.so (__android_log_assert+328)
07-24 07:56:16.575 32495 32495 F DEBUG : #02 pc 00000000004ad034 /system/lib64/libhwui.so (android::uirenderer::renderthread::EglManager::damageFrame(android::uirenderer::renderthread::Frame const&, SkRect const&)+180)
07-24 07:56:16.575 32495 32495 F DEBUG : #03 pc 00000000004a65fc /system/lib64/libhwui.so (android::uirenderer::skiapipeline::SkiaOpenGLPipeline::draw(android::uirenderer::renderthread::Frame const&, SkRect const&, SkRect const&, android::uirenderer::FrameBuilder::LightGeometry const&, android::uirenderer::LayerUpdateQueue*, android::uirenderer::Rect const&, bool, bool, android::uirenderer::BakedOpRenderer::LightInfo const&, std::__1::vector, std::__1::allocator>> eu.siacs.conversations <<<
07-24 18:16:57.589 19068 19068 F DEBUG : signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
07-24 18:16:57.589 19068 19068 F DEBUG : Abort message: 'Failed to set damage region on surface 0x75d14bdc80, error=EGL_BAD_ACCESS'
07-24 18:16:57.589 19068 19068 F DEBUG : x0 0000000000000000 x1 0000000000007f1e x2 0000000000000006 x3 0000000000000008
07-24 18:16:57.589 19068 19068 F DEBUG : x4 feff71647164636d x5 feff71647164636d x6 feff71647164636d x7 7f7f7f7f7f7f7f7f
07-24 18:16:57.589 19068 19068 F DEBUG : x8 0000000000000083 x9 a208e0b119efa6a1 x10 fffffff87ffffbdf x11 0000000000000001
07-24 18:16:57.589 19068 19068 F DEBUG : x12 fffffffc7ffffbdf x13 ffffffffffffffff x14 ffffffffff000000 x15 ffffffffffffffff
07-24 18:16:57.589 19068 19068 F DEBUG : x16 000000768d2b32a8 x17 000000768d1f2540 x18 00000000ffffffff x19 0000000000007efd
07-24 18:16:57.589 19068 19068 F DEBUG : x20 0000000000007f1e x21 0000000000000083 x22 00000075ef3771b0 x23 00000075ee936a30
07-24 18:16:57.589 19068 19068 F DEBUG : x24 0000000000000001 x25 00000075ee9369a4 x26 00000075ef377198 x27 00000075ee9369a2
07-24 18:16:57.589 19068 19068 F DEBUG : x28 0000000000000000 x29 00000075ef376af0
07-24 18:16:57.590 19068 19068 F DEBUG : sp 00000075ef376ab0 lr 000000768d1e6210 pc 000000768d1e6230
07-24 18:16:57.674 19068 19068 F DEBUG :
07-24 18:16:57.674 19068 19068 F DEBUG : backtrace:
07-24 18:16:57.674 19068 19068 F DEBUG : #00 pc 0000000000022230 /system/lib64/libc.so (abort+112)
07-24 18:16:57.674 19068 19068 F DEBUG : #01 pc 0000000000008388 /system/lib64/liblog.so (__android_log_assert+328)
07-24 18:16:57.674 19068 19068 F DEBUG : #02 pc 00000000004ad034 /system/lib64/libhwui.so (android::uirenderer::renderthread::EglManager::damageFrame(android::uirenderer::renderthread::Frame const&, SkRect const&)+180)
07-24 18:16:57.674 19068 19068 F DEBUG : #03 pc 00000000004a65fc /system/lib64/libhwui.so (android::uirenderer::skiapipeline::SkiaOpenGLPipeline::draw(android::uirenderer::renderthread::Frame const&, SkRect const&, SkRect const&, android::uirenderer::FrameBuilder::LightGeometry const&, android::uirenderer::LayerUpdateQueue*, android::uirenderer::Rect const&, bool, bool, android::uirenderer::BakedOpRenderer::LightInfo const&, std::__1::vector, std::__1::allocator2600,"{'login': 'eeeeeta', 'id': 9402870, 'node_id': 'MDQ6VXNlcjk0MDI4NzA=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/9402870?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/eeeeeta', 'html_url': 'https://github.com/eeeeeta', 'followers_url': 'https://api.github.com/users/eeeeeta/followers', 'following_url': 'https://api.github.com/users/eeeeeta/following{/other_user}', 'gists_url': 'https://api.github.com/users/eeeeeta/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/eeeeeta/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/eeeeeta/subscriptions', 'organizations_url': 'https://api.github.com/users/eeeeeta/orgs', 'repos_url': 'https://api.github.com/users/eeeeeta/repos', 'events_url': 'https://api.github.com/users/eeeeeta/events{/privacy}', 'received_events_url': 'https://api.github.com/users/eeeeeta/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,0,2020-08-30T19:17:31Z,2020-08-30T19:17:31Z,,NONE,,,"#### General information
* **Version:** 2.8.10+pcr
* **Device:** Motorola moto g(7) power
* **Android Version:** Android 9 (stock)
* **Server name:** theta.eu.org
* **Server software:** prosody trunk
* **Installed server modules:** CSI, MAM, others
* **Conversations source:** PlayStore Beta Channel
#### Steps to reproduce
1. Start Conversations fresh
2. Do things to raise the unread count above ~2600 (receive lots of PMs, be in a lot of active MUCs, have unread history, ...)
#### Expected result
- Conversations does not slow down or crash
#### Actual result
- Conversations' UI gets slower and slower, until it eventually throws an App Not Responding / quits
From the logcat output, it seems like having a lot of unread messages causes Conversations to use a lot of heap space. Eventually, it hits the Android limit and the OS starts forcing GC pauses on it in order to try and reclaim space, which doesn't work; the app becomes unusable, and eventually dies due to App Not Responding.
After restarting, the app only loads ~50 or so messages for each MUC / conversation, so it doesn't run into the issue.
**Suggested action:** maybe Conversations should evict unread messages from memory when the OS [signals heap space is low](https://developer.android.com/topic/performance/memory#release)? It looks like each `Conversation` keeps around a list of message objects and only gets rid of them after you've read them; it shouldn't be too bad to just deallocate said message objects when memory pressure is encountered, possibly with some logic for not deallocating objects that have caused a push notification.
#### Relevant debug output
```
08-30 19:42:19.130 22008 22042 I s.conversation: Starting a blocking GC Alloc
08-30 19:42:19.130 22008 22008 I s.conversation: WaitForGcToComplete blocked Alloc on HeapTrim for 456.877ms
08-30 19:42:19.130 22008 22008 I s.conversation: Starting a blocking GC Alloc
08-30 19:42:19.137 22008 22042 D conversations: update unread count to 2651
08-30 19:42:19.139 22008 22042 D conversations: eta@theta.eu.org: suppressing notification because turned off
08-30 19:42:19.142 22008 22008 I s.conversation: Waiting for a blocking GC Alloc
08-30 19:42:19.142 22008 22042 I s.conversation: Waiting for a blocking GC Alloc
08-30 19:42:19.608 22008 22018 I s.conversation: Clamp target GC heap from 119MB to 96MB
08-30 19:42:19.608 22008 22018 I s.conversation: Background concurrent copying GC freed 3922(101KB) AllocSpace objects, 0(0B) LOS objects, 0% free, 95MB/96MB, paused 154us total 477.449ms
08-30 19:42:19.608 22008 22008 I s.conversation: WaitForGcToComplete blocked Alloc on HeapTrim for 466.686ms
08-30 19:42:19.608 22008 22008 I s.conversation: Starting a blocking GC Alloc
08-30 19:42:19.608 22008 22042 I s.conversation: WaitForGcToComplete blocked Alloc on HeapTrim for 466.510ms
08-30 19:42:19.608 22008 22042 I s.conversation: Starting a blocking GC Alloc
08-30 19:42:19.610 22008 22008 I s.conversation: Waiting for a blocking GC Alloc
08-30 19:42:19.610 22008 22123 I s.conversation: Waiting for a blocking GC Alloc
08-30 19:42:19.610 22008 22042 I s.conversation: Waiting for a blocking GC Alloc
08-30 19:42:20.067 22008 22018 I s.conversation: Clamp target GC heap from 119MB to 96MB
08-30 19:42:20.067 22008 22018 I s.conversation: Background concurrent copying GC freed 3886(155KB) AllocSpace objects, 0(0B) LOS objects, 0% free, 95MB/96MB, paused 115us total 458.027ms
08-30 19:42:20.067 22008 22008 I s.conversation: WaitForGcToComplete blocked Alloc on HeapTrim for 457.452ms
08-30 19:42:20.067 22008 22008 I s.conversation: Starting a blocking GC Alloc
08-30 19:42:20.067 22008 22123 I s.conversation: WaitForGcToComplete blocked Alloc on HeapTrim for 457.314ms
08-30 19:42:20.067 22008 22123 I s.conversation: Starting a blocking GC Alloc
08-30 19:42:20.067 22008 22042 I s.conversation: WaitForGcToComplete blocked Alloc on HeapTrim for 457.279ms
08-30 19:42:20.067 22008 22042 I s.conversation: Starting a blocking GC Alloc
08-30 19:42:20.071 22008 22008 I s.conversation: Waiting for a blocking GC Alloc
08-30 19:42:20.117 22008 22042 I s.conversation: Waiting for a blocking GC Alloc
08-30 19:42:20.250 22008 22019 I s.conversation: Waiting for a blocking GC Alloc
08-30 19:42:20.532 22008 22018 I s.conversation: Clamp target GC heap from 119MB to 96MB
```
",
956,https://api.github.com/repos/iNPUTmice/Conversations/issues/3868,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3868/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3868/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3868/events,https://github.com/iNPUTmice/Conversations/issues/3868,688744510,MDU6SXNzdWU2ODg3NDQ1MTA=,3868,"[Feature request] option to enable absolute timestamps always, and to show seconds","{'login': 'Soundtoxin', 'id': 3146494, 'node_id': 'MDQ6VXNlcjMxNDY0OTQ=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/3146494?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Soundtoxin', 'html_url': 'https://github.com/Soundtoxin', 'followers_url': 'https://api.github.com/users/Soundtoxin/followers', 'following_url': 'https://api.github.com/users/Soundtoxin/following{/other_user}', 'gists_url': 'https://api.github.com/users/Soundtoxin/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Soundtoxin/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Soundtoxin/subscriptions', 'organizations_url': 'https://api.github.com/users/Soundtoxin/orgs', 'repos_url': 'https://api.github.com/users/Soundtoxin/repos', 'events_url': 'https://api.github.com/users/Soundtoxin/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Soundtoxin/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-08-30T16:03:02Z,2020-08-31T11:39:02Z,2020-08-31T06:32:06Z,NONE,,,"I would like to see the exact second a message was sent, and I would like to see a full timestamp for a message just sent (instead of relative timestamps like ""just now"" or ""5 mins ago""). It can be useful for things like checking the latency of a bridge by seeing the seconds on both ends. Maybe it could be under expert settings if it's controversial.
I also think it would be worth having a way to see a full timestamp in the message options popup. Element (Matrix) has something like this when you long-press a message.",
957,https://api.github.com/repos/iNPUTmice/Conversations/issues/3867,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3867/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3867/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3867/events,https://github.com/iNPUTmice/Conversations/issues/3867,683889181,MDU6SXNzdWU2ODM4ODkxODE=,3867,Jingle audio session-accept rejected and then Conversations crashes,"{'login': 'singpolyma', 'id': 12770, 'node_id': 'MDQ6VXNlcjEyNzcw', 'avatar_url': 'https://avatars2.githubusercontent.com/u/12770?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/singpolyma', 'html_url': 'https://github.com/singpolyma', 'followers_url': 'https://api.github.com/users/singpolyma/followers', 'following_url': 'https://api.github.com/users/singpolyma/following{/other_user}', 'gists_url': 'https://api.github.com/users/singpolyma/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/singpolyma/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/singpolyma/subscriptions', 'organizations_url': 'https://api.github.com/users/singpolyma/orgs', 'repos_url': 'https://api.github.com/users/singpolyma/repos', 'events_url': 'https://api.github.com/users/singpolyma/events{/privacy}', 'received_events_url': 'https://api.github.com/users/singpolyma/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-08-22T00:29:47Z,2020-08-22T06:12:50Z,2020-08-22T06:12:50Z,CONTRIBUTOR,,,"So, I'm working on a SIP <-> Jingle gateway (sip.cheogram.com) and inbound calls (SIP -> Conversations) are working great. I've been working on getting outbound (Conversations -> SIP) to work. I think I'm pretty close, but I've hit a wall in my understanding I think.
When my gateway sends back a session-accept like this:
```
FE:D7:8E:5C:37:15:B2:34:8C:FF:A1:14:70:9C:69:5C:FB:32:E5:7B:96:E2:44:5B:A9:69:39:26:46:E4:E6:62FE:D7:8E:5C:37:15:B2:34:8C:FF:A1:14:70:9C:69:5C:FB:32:E5:7B:96:E2:44:5B:A9:69:39:26:46:E4:E6:62
```
Then Conversations' adb logcat shows:
```
08-21 20:15:24.395 10457 10485 D conversations: processing session-accept with 1 contents
08-21 20:15:24.395 10457 10485 D conversations: singpolyma@singpolyma.net: transitioned into SESSION_ACCEPTED
08-21 20:15:24.398 10457 10485 D conversations: onJingleRtpConnectionUpdate(CONNECTING)
08-21 20:15:24.437 10457 10485 D conversations: ForegroundService: on
08-21 20:15:24.476 10457 10485 D conversations: singpolyma@singpolyma.net: unable to set remote description after receiving session-accept
08-21 20:15:24.476 10457 10485 D conversations: java.lang.IllegalArgumentException: unable to set remote session description: Failed to set remote answer sdp: Failed to apply the description for audio: Answerer must use either active or passive value for setup attribute.
08-21 20:15:24.476 10457 10485 D conversations: at eu.siacs.conversations.xmpp.jingle.WebRTCWrapper$7.onSetFailure(WebRTCWrapper.java:478)
08-21 20:15:24.478 10457 11024 D conversations: singpolyma@singpolyma.net: PeerConnectionState changed to CLOSED
08-21 20:15:24.480 10457 11024 D conversations: eu.siacs.conversations.xmpp.jingle.ToneManager.transition(ENDING_CALL)
08-21 20:15:24.480 10457 11024 D conversations: eu.siacs.conversations.xmpp.jingle.ToneManager: do not configure audio manager because RTC has control
08-21 20:15:24.481 10457 11024 D conversations: onJingleRtpConnectionUpdate(ENDING_CALL)
08-21 20:15:24.503 10457 10485 D conversations: singpolyma@singpolyma.net: transitioned into TERMINATED_APPLICATION_FAILURE
08-21 20:15:24.504 10457 10485 D conversations: onJingleRtpConnectionUpdate(APPLICATION_ERROR)
08-21 20:15:24.504 10457 10485 D conversations: end card reached
08-21 20:15:24.504 10457 10485 D conversations: releasing proximity wake lock
08-21 20:15:24.509 10457 10457 D conversations: eu.siacs.conversations.services.AppRTCAudioManager.stop()
08-21 20:15:24.511 10457 10457 D conversations: stop: BT state=HEADSET_UNAVAILABLE
08-21 20:15:24.512 10457 10457 D conversations: stopScoAudio: BT state=HEADSET_UNAVAILABLE, SCO is on: false
08-21 20:15:24.521 10457 10457 D conversations: cancelTimer
08-21 20:15:24.522 10457 10457 D conversations: stop done: BT state=UNINITIALIZED
08-21 20:15:24.535 10457 10485 D conversations: ForegroundService: on
08-21 20:15:24.540 10457 10485 D conversations:
08-21 20:15:24.549 10457 10485 D conversations: received candidate: audio:0:candidate:15066244 1 udp 2130706431 192.99.233.116 18606 typ host generation 0 ufrag 12d3eed324f0c7b5269cb62d7ec2eb34::UNKNOWN
08-21 20:15:24.716 10457 10457 D conversations: Abandoned audio focus for VOICE_CALL streams
08-21 20:15:24.716 10457 10457 D conversations: stop@[name=main, id=1]
```
at which point the app crashes:
```
eu.siacs.conversations.xmpp.jingle.WebRTCWrapper$PeerConnectionNotInitialized: initialize PeerConnection first
at eu.siacs.conversations.xmpp.jingle.WebRTCWrapper.requirePeerConnection(WebRTCWrapper.java:555)
at eu.siacs.conversations.xmpp.jingle.WebRTCWrapper.addIceCandidate(WebRTCWrapper.java:497)
at eu.siacs.conversations.xmpp.jingle.JingleRtpConnection.processCandidates(JingleRtpConnection.java:286)
at eu.siacs.conversations.xmpp.jingle.JingleRtpConnection.receiveSessionAccept(JingleRtpConnection.java:375)
at eu.siacs.conversations.xmpp.jingle.JingleRtpConnection.deliverPacket(JingleRtpConnection.java:181)
at eu.siacs.conversations.xmpp.jingle.JingleConnectionManager.deliverPacket(JingleConnectionManager.java:85)
at eu.siacs.conversations.services.XmppConnectionService.lambda$createConnection$11$XmppConnectionService(XmppConnectionService.java:1359)
at eu.siacs.conversations.services.-$$Lambda$XmppConnectionService$VYN9drkH9aobUCuwT-F_1u6C7v8.onJinglePacketReceived(lambda)
at eu.siacs.conversations.xmpp.XmppConnection.processIq(XmppConnection.java:730)
at eu.siacs.conversations.xmpp.XmppConnection.processStream(XmppConnection.java:635)
at eu.siacs.conversations.xmpp.XmppConnection.processStream(XmppConnection.java:483)
at eu.siacs.conversations.xmpp.XmppConnection.switchOverToTls(XmppConnection.java:803)
at eu.siacs.conversations.xmpp.XmppConnection.processStream(XmppConnection.java:467)
at eu.siacs.conversations.xmpp.XmppConnection.connect(XmppConnection.java:375)
at eu.siacs.conversations.xmpp.XmppConnection.run(XmppConnection.java:454)
at java.lang.Thread.run(Thread.java:761)
```
It is very possible that I am doing something wrong that causes the rejection, but Googling ""Answerer must use either active or passive value for setup attribute"" is not being very enlightening as to what I'm missing, so if you have any guesses that would be super helpful :)
And of course the crash should probably not happen even if I send garbage back, but my main focus is sending something that will work.",
958,https://api.github.com/repos/iNPUTmice/Conversations/issues/3866,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3866/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3866/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3866/events,https://github.com/iNPUTmice/Conversations/issues/3866,681179285,MDU6SXNzdWU2ODExNzkyODU=,3866,Add support for SVG avatars,"{'login': 'quinao', 'id': 17725347, 'node_id': 'MDQ6VXNlcjE3NzI1MzQ3', 'avatar_url': 'https://avatars0.githubusercontent.com/u/17725347?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/quinao', 'html_url': 'https://github.com/quinao', 'followers_url': 'https://api.github.com/users/quinao/followers', 'following_url': 'https://api.github.com/users/quinao/following{/other_user}', 'gists_url': 'https://api.github.com/users/quinao/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/quinao/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/quinao/subscriptions', 'organizations_url': 'https://api.github.com/users/quinao/orgs', 'repos_url': 'https://api.github.com/users/quinao/repos', 'events_url': 'https://api.github.com/users/quinao/events{/privacy}', 'received_events_url': 'https://api.github.com/users/quinao/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-08-18T16:34:53Z,2020-08-18T17:21:50Z,2020-08-18T17:21:50Z,NONE,,,"#### General information
* **Version:** 2.8.10+pcr
* **Device:** FairPhone2
* **Android Version:** Android 7.1.2
* **Server name:** jabber.fr
* **Conversations source:** PlayStore
#### Steps to reproduce
1. Send messages to someone with a SVG avatar.
2. The avatar is not shown. Instead, there's a single letter as if this person didn't have an avatar at all.
However, I can see PNG avatars.
Also, I can see these SVG avatars if I use another XMPP client (e.g. Dino).
",
959,https://api.github.com/repos/iNPUTmice/Conversations/issues/3865,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3865/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3865/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3865/events,https://github.com/iNPUTmice/Conversations/issues/3865,680978837,MDU6SXNzdWU2ODA5Nzg4Mzc=,3865,How to toggle between group chat name and list of participants in roster?,"{'login': 'magoralczyk', 'id': 10485439, 'node_id': 'MDQ6VXNlcjEwNDg1NDM5', 'avatar_url': 'https://avatars1.githubusercontent.com/u/10485439?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/magoralczyk', 'html_url': 'https://github.com/magoralczyk', 'followers_url': 'https://api.github.com/users/magoralczyk/followers', 'following_url': 'https://api.github.com/users/magoralczyk/following{/other_user}', 'gists_url': 'https://api.github.com/users/magoralczyk/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/magoralczyk/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/magoralczyk/subscriptions', 'organizations_url': 'https://api.github.com/users/magoralczyk/orgs', 'repos_url': 'https://api.github.com/users/magoralczyk/repos', 'events_url': 'https://api.github.com/users/magoralczyk/events{/privacy}', 'received_events_url': 'https://api.github.com/users/magoralczyk/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-08-18T11:51:33Z,2020-08-18T17:22:49Z,2020-08-18T17:22:48Z,NONE,,,"It seems to me, that for group name lables conversations shows initially the comma seperated participants names (""alice, bob"") instead of the rooms name (""Alice and Bob discuss sausages""). Just for fun: gajim shows the internal room name like ""eyebelol"": perfect!
But in conversations the has to be a switch, because on my phone I see the right name, and my childeren just see the participants. Both the same versions (current: x.x.10), both identically configured, both connected to the same server.
Help?",
960,https://api.github.com/repos/iNPUTmice/Conversations/issues/3864,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3864/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3864/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3864/events,https://github.com/iNPUTmice/Conversations/issues/3864,680474684,MDU6SXNzdWU2ODA0NzQ2ODQ=,3864,compliance test: A/V call XEPs not tested,"{'login': 'mickroll', 'id': 9883575, 'node_id': 'MDQ6VXNlcjk4ODM1NzU=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/9883575?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mickroll', 'html_url': 'https://github.com/mickroll', 'followers_url': 'https://api.github.com/users/mickroll/followers', 'following_url': 'https://api.github.com/users/mickroll/following{/other_user}', 'gists_url': 'https://api.github.com/users/mickroll/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mickroll/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mickroll/subscriptions', 'organizations_url': 'https://api.github.com/users/mickroll/orgs', 'repos_url': 'https://api.github.com/users/mickroll/repos', 'events_url': 'https://api.github.com/users/mickroll/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mickroll/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-08-17T19:28:41Z,2020-08-17T19:52:09Z,2020-08-17T19:52:09Z,NONE,,,"#### General information
* **Version:** 2.8.10
* **Device:** Ulefone Armor X5
* **Android Version:** Android 9 (stock)
* **Server name:** draugr.de
* **Server capabilities:** https://www.draugr.de/features/
* **Conversations source:** F-Droid
I can't make an a/v call to any contact. I guess this is because the server draugr.de does not support the required XEPs. However, running the compliance test for this server gives a 100% result.
#### Steps to reproduce
1. visit https://compliance.conversations.im/server/draugr.de/
#### Expected result
The compliance test should at least mention a missing XEP for a/v calls.
I am not sure if a 100% compliance is the correct output, either.
#### Actual result
No mention of a/v features whatsoever.
100% compliance",
961,https://api.github.com/repos/iNPUTmice/Conversations/issues/3862,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3862/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3862/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3862/events,https://github.com/iNPUTmice/Conversations/issues/3862,679603805,MDU6SXNzdWU2Nzk2MDM4MDU=,3862,Minor confusing translation error: 'QR-Code' (English) becomes 'Barcode' in German translation,"{'login': 'CEHitchens', 'id': 44501098, 'node_id': 'MDQ6VXNlcjQ0NTAxMDk4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/44501098?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/CEHitchens', 'html_url': 'https://github.com/CEHitchens', 'followers_url': 'https://api.github.com/users/CEHitchens/followers', 'following_url': 'https://api.github.com/users/CEHitchens/following{/other_user}', 'gists_url': 'https://api.github.com/users/CEHitchens/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/CEHitchens/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/CEHitchens/subscriptions', 'organizations_url': 'https://api.github.com/users/CEHitchens/orgs', 'repos_url': 'https://api.github.com/users/CEHitchens/repos', 'events_url': 'https://api.github.com/users/CEHitchens/events{/privacy}', 'received_events_url': 'https://api.github.com/users/CEHitchens/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-08-15T16:24:13Z,2020-08-15T18:17:37Z,2020-08-15T18:17:37Z,NONE,,,"/Edit: just spotted that this in fact is an already known ""issue"". How would one get this change request to the translators?
Yes, Aztec, Data Matrix, MaxiCode, PDF417,CyberCode ... and QR-Codes are all 2D barcodes, but somehow I am under the impression that ""QR code"" might be the equivalent to a ""Kleenex"" or ""to xerox"".
#### General information
* **Version:** 2.8.10+fcr
* **Android Version:** LineageOS 16.0
* **Conversations source:** F-Droid
#### Steps to reproduce
1. 3.dot menu
2. Manage accounts
3. Tap on respective account
4. Tap on "" < "" share icon
5. Spot that ""QR-Code"" is translated to ""Barcode"" in German there.
#### Expected result
A minor translation adjustment for ""QR-Code"" to actually remain ""QR-Code"" as a bar code is something else and I could imagine others finding this confusing as well.
i.e. ""Als QR-Code teilen"" and ""QR-Code anzeigen""
#### Actual result
Well, the term ""Barcode"" is used in the German translation
",
962,https://api.github.com/repos/iNPUTmice/Conversations/issues/3861,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3861/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3861/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3861/events,https://github.com/iNPUTmice/Conversations/issues/3861,678349269,MDU6SXNzdWU2NzgzNDkyNjk=,3861,How to restart ICE servers?,"{'login': 'mical892524', 'id': 33045863, 'node_id': 'MDQ6VXNlcjMzMDQ1ODYz', 'avatar_url': 'https://avatars3.githubusercontent.com/u/33045863?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mical892524', 'html_url': 'https://github.com/mical892524', 'followers_url': 'https://api.github.com/users/mical892524/followers', 'following_url': 'https://api.github.com/users/mical892524/following{/other_user}', 'gists_url': 'https://api.github.com/users/mical892524/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mical892524/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mical892524/subscriptions', 'organizations_url': 'https://api.github.com/users/mical892524/orgs', 'repos_url': 'https://api.github.com/users/mical892524/repos', 'events_url': 'https://api.github.com/users/mical892524/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mical892524/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-08-13T11:01:59Z,2020-08-13T17:22:34Z,2020-08-13T17:22:34Z,NONE,,,"when ICE servers is down, then I need replace new dynamic ICE servers and resume call. How to do?",
963,https://api.github.com/repos/iNPUTmice/Conversations/issues/3860,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3860/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3860/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3860/events,https://github.com/iNPUTmice/Conversations/issues/3860,677765938,MDU6SXNzdWU2Nzc3NjU5Mzg=,3860,Images sent from another client appear as text link and vice versa,"{'login': 'anyuta1166', 'id': 726409, 'node_id': 'MDQ6VXNlcjcyNjQwOQ==', 'avatar_url': 'https://avatars1.githubusercontent.com/u/726409?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/anyuta1166', 'html_url': 'https://github.com/anyuta1166', 'followers_url': 'https://api.github.com/users/anyuta1166/followers', 'following_url': 'https://api.github.com/users/anyuta1166/following{/other_user}', 'gists_url': 'https://api.github.com/users/anyuta1166/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/anyuta1166/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/anyuta1166/subscriptions', 'organizations_url': 'https://api.github.com/users/anyuta1166/orgs', 'repos_url': 'https://api.github.com/users/anyuta1166/repos', 'events_url': 'https://api.github.com/users/anyuta1166/events{/privacy}', 'received_events_url': 'https://api.github.com/users/anyuta1166/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,13,2020-08-12T15:03:06Z,2020-08-14T16:31:44Z,2020-08-12T19:46:41Z,CONTRIBUTOR,,,"#### General information
* **Version:** 2.8.10
* **Device:** Motorola G7 +
* **Android Version:** Android 9 (stock)
* **Server name:** self hosted
* **Server software:** ejabberd 20.04
* **Conversations source:** PlayStore
Hmm... I use Xabber Web XMPP client to chat through the desktop sometimes.
And there is an issue with message history.
Images sent from Conversations appears as an image in Conversations, but as a text link in Xabber Web.
And vice versa.
Images sent from Xabber Web appears as an image in Xabber Web, but as a text link in Conversations.
What is this? Different implementation of XEP-0363: HTTP File Upload?
Any fix possible, and on which side it should be done?
",
964,https://api.github.com/repos/iNPUTmice/Conversations/issues/3859,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3859/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3859/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3859/events,https://github.com/iNPUTmice/Conversations/issues/3859,676802090,MDU6SXNzdWU2NzY4MDIwOTA=,3859,Links with Dollar symbols are not correctly recognized,"{'login': 'jhaye', 'id': 7195008, 'node_id': 'MDQ6VXNlcjcxOTUwMDg=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/7195008?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jhaye', 'html_url': 'https://github.com/jhaye', 'followers_url': 'https://api.github.com/users/jhaye/followers', 'following_url': 'https://api.github.com/users/jhaye/following{/other_user}', 'gists_url': 'https://api.github.com/users/jhaye/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jhaye/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jhaye/subscriptions', 'organizations_url': 'https://api.github.com/users/jhaye/orgs', 'repos_url': 'https://api.github.com/users/jhaye/repos', 'events_url': 'https://api.github.com/users/jhaye/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jhaye/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2315524880, 'node_id': 'MDU6TGFiZWwyMzE1NTI0ODgw', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/pr-welccome', 'name': 'pr-welccome', 'color': '491291', 'default': False, 'description': ''}]",open,False,,[],,0,2020-08-11T11:31:06Z,2020-09-01T06:01:55Z,,NONE,,,"#### General information
* **Version:** 2.8.9+fcr
* **Device:** Google Pixel
* **Android Version:** Android 10 (stock)
#### Steps to reproduce
Paste a link like https://epetitionen.bundestag.de/petitionen/_2020/_07/_06/Petition_113349.nc.$$$.a.u.html into a conversation.
#### Expected result
While dollar symbols in web links are uncommon, it should be properly recognized and turned into a link.
#### Actual result
The URL gets turned into a link, but only up until the first Dollar symbol occurs.",
965,https://api.github.com/repos/iNPUTmice/Conversations/issues/3858,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3858/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3858/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3858/events,https://github.com/iNPUTmice/Conversations/issues/3858,676074589,MDU6SXNzdWU2NzYwNzQ1ODk=,3858,Unable to reach server,"{'login': 'jarvisv4', 'id': 45689507, 'node_id': 'MDQ6VXNlcjQ1Njg5NTA3', 'avatar_url': 'https://avatars2.githubusercontent.com/u/45689507?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jarvisv4', 'html_url': 'https://github.com/jarvisv4', 'followers_url': 'https://api.github.com/users/jarvisv4/followers', 'following_url': 'https://api.github.com/users/jarvisv4/following{/other_user}', 'gists_url': 'https://api.github.com/users/jarvisv4/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jarvisv4/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jarvisv4/subscriptions', 'organizations_url': 'https://api.github.com/users/jarvisv4/orgs', 'repos_url': 'https://api.github.com/users/jarvisv4/repos', 'events_url': 'https://api.github.com/users/jarvisv4/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jarvisv4/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-08-10T11:46:34Z,2020-08-10T12:03:20Z,2020-08-10T12:03:20Z,NONE,,,"#### General information
* **Version:** NA
* **Device:** Android 8.0+ version devices
* **Android Version:** Android 8.0+ version
* **Server name:** self hosted
* **Server software:** ejabberd 20.04
* **Installed server modules:** Stream Managment, CSI, MAM
* **Conversations source:** self build (latest HEAD)
#### Steps to reproduce
1. …On devices targeting Android 8.0+ and mostly observed on android 10 just turn off internet connection and keep the app idle for 2-4 hours.
2. Reconnect to the Internet and open app again.
#### Expected result
Accounts should be reconnected and able to perform chat.
#### Actual result
Instead of the app is unable to reach the server until the app is reopened or cleared data and restarted.
#### Debug output
-> Resolver: error resolving SRV record (direct TLS)[0m
-> de.measite.minidns.util.MultipleIoException: Poll timed out, failed to connect to /59.144.144.46 (port 53) from /:: (port 0) after 3000ms: connect failed: ENETUNREACH (Network is unreachable), sendto failed: ENETUNREACH (Network is unreachable), failed to connect to /122.169.123.80 (port 53) from /:: (port 0) after 3000ms: connect failed: ENETUNREACH (Network is unreachable), sendto failed: ENETUNREACH (Network is unreachable), failed to connect to /2404:a800:0:14::1:1019 (port 53) from /:: (port 0) after 3000ms: connect failed: ENETUNREACH (Network is unreachable), sendto failed: ENETUNREACH (Network is unreachable), failed to connect to /2401:4900:50:9::28 (port 53) from /:: (port 0) after 3000ms: connect failed: ENETUNREACH (Network is unreachable), sendto failed: ENETUNREACH (Network is unreachable), failed to connect to /8.8.8.8 (port 53) from /:: (port 0) after 3000ms: connect failed: ENETUNREACH (Network is unreachable), sendto failed: ENETUNREACH (Network is unreachable), failed to connect to e.root-servers.net/192.203.230.10 (port 53) from /:: (port 0) after 5000ms: connect failed: ENETUNREACH (Network is unreachable), sendto failed: ENETUNREACH (Network is unreachable), failed to connect to c.root-servers.net/2001:500:2::c (port 53) from /:: (port 0) after 5000ms: connect failed: ENETUNREACH (Network is unreachable)[0m
````
",
966,https://api.github.com/repos/iNPUTmice/Conversations/issues/3857,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3857/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3857/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3857/events,https://github.com/iNPUTmice/Conversations/pull/3857,675673204,MDExOlB1bGxSZXF1ZXN0NDY1MTMyODAy,3857,Missed call notifications,"{'login': 'dmitry-markin', 'id': 6322171, 'node_id': 'MDQ6VXNlcjYzMjIxNzE=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/6322171?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dmitry-markin', 'html_url': 'https://github.com/dmitry-markin', 'followers_url': 'https://api.github.com/users/dmitry-markin/followers', 'following_url': 'https://api.github.com/users/dmitry-markin/following{/other_user}', 'gists_url': 'https://api.github.com/users/dmitry-markin/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dmitry-markin/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dmitry-markin/subscriptions', 'organizations_url': 'https://api.github.com/users/dmitry-markin/orgs', 'repos_url': 'https://api.github.com/users/dmitry-markin/repos', 'events_url': 'https://api.github.com/users/dmitry-markin/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dmitry-markin/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,0,2020-08-09T10:09:17Z,2020-08-24T07:40:14Z,,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/pulls/3857', 'html_url': 'https://github.com/iNPUTmice/Conversations/pull/3857', 'diff_url': 'https://github.com/iNPUTmice/Conversations/pull/3857.diff', 'patch_url': 'https://github.com/iNPUTmice/Conversations/pull/3857.patch'}",Hope this may be helpful,
967,https://api.github.com/repos/iNPUTmice/Conversations/issues/3856,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3856/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3856/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3856/events,https://github.com/iNPUTmice/Conversations/issues/3856,675541047,MDU6SXNzdWU2NzU1NDEwNDc=,3856,Conversations - Show last know nick for Quicksy contacts,"{'login': 'licaon-kter', 'id': 2282799, 'node_id': 'MDQ6VXNlcjIyODI3OTk=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2282799?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/licaon-kter', 'html_url': 'https://github.com/licaon-kter', 'followers_url': 'https://api.github.com/users/licaon-kter/followers', 'following_url': 'https://api.github.com/users/licaon-kter/following{/other_user}', 'gists_url': 'https://api.github.com/users/licaon-kter/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/licaon-kter/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/licaon-kter/subscriptions', 'organizations_url': 'https://api.github.com/users/licaon-kter/orgs', 'repos_url': 'https://api.github.com/users/licaon-kter/repos', 'events_url': 'https://api.github.com/users/licaon-kter/events{/privacy}', 'received_events_url': 'https://api.github.com/users/licaon-kter/received_events', 'type': 'User', 'site_admin': False}","[{'id': 76683388, 'node_id': 'MDU6TGFiZWw3NjY4MzM4OA==', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/feature', 'name': 'feature', 'color': '128a00', 'default': False, 'description': 'Accepted feature request'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/10', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/10', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/10/labels', 'id': 5715881, 'node_id': 'MDk6TWlsZXN0b25lNTcxNTg4MQ==', 'number': 10, 'title': '2.8.11', 'description': '', 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 7, 'state': 'open', 'created_at': '2020-07-30T15:09:08Z', 'updated_at': '2020-09-01T12:04:49Z', 'due_on': None, 'closed_at': None}",0,2020-08-08T15:18:15Z,2020-08-31T07:05:11Z,2020-08-31T07:05:11Z,CONTRIBUTOR,,,"...if not connected
Steps:
* disconnect account
* force kill app or reboot device
* open Conversations (but don't connect account)
Expected:
* Chat view with nicks
Actual:
* A bunch of +XXXXXXXXXX entries",
968,https://api.github.com/repos/iNPUTmice/Conversations/issues/3855,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3855/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3855/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3855/events,https://github.com/iNPUTmice/Conversations/issues/3855,673772482,MDU6SXNzdWU2NzM3NzI0ODI=,3855,Record voice does not use bluetooth,"{'login': 'tyler71', 'id': 4926565, 'node_id': 'MDQ6VXNlcjQ5MjY1NjU=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/4926565?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/tyler71', 'html_url': 'https://github.com/tyler71', 'followers_url': 'https://api.github.com/users/tyler71/followers', 'following_url': 'https://api.github.com/users/tyler71/following{/other_user}', 'gists_url': 'https://api.github.com/users/tyler71/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/tyler71/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/tyler71/subscriptions', 'organizations_url': 'https://api.github.com/users/tyler71/orgs', 'repos_url': 'https://api.github.com/users/tyler71/repos', 'events_url': 'https://api.github.com/users/tyler71/events{/privacy}', 'received_events_url': 'https://api.github.com/users/tyler71/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,0,2020-08-05T18:55:03Z,2020-08-05T18:55:03Z,,NONE,,,"#### General information
* **Version:** 2.8.10+pcr
* **Device:** Nokia 7.1 (Android 10), Samsung J3 (Android 8.1)
* **Conversations source:** PlayStore Beta Channel
#### Steps to reproduce
* Select attachment, Record voice
* (or) Attempt to call contact, get busy status, tap on voicemail button
#### Expected result
I am able to make calls just fine with bluetooth.
However Recording audio uses the phones mic.
This is confusing behavior, as Conversations will offer to record a voicemail if the contact is busy and the user may not expect the mic source to change
Here is a logcat of answering a call with bluetooth, followed by Recording audio.
logcat
```
08-05 11:38:54.943 5643 10173 D conversations: user1@domain.tld: delivered message to JingleRtpConnection
08-05 11:38:54.943 5643 10173 D conversations: user1@domain.tld: received session proposal from user2@domain.tld/Conversations.MXYQ for [audio]
08-05 11:38:54.943 5643 10173 D conversations: user1@domain.tld: transitioned into PROPOSED
08-05 11:38:54.946 5643 10173 D conversations: ForegroundService: on
08-05 11:38:54.946 5643 10173 D conversations: user1@domain.tld: received call from user2@domain.tld/Conversations.MXYQ. start ringing
08-05 11:38:57.531 5643 5643 D conversations: intent action was accept
08-05 11:38:57.532 5643 5643 D conversations: acquiring proximity wake lock
08-05 11:38:57.535 5643 5643 D conversations: user1@domain.tld: transitioned into PROCEED
08-05 11:38:57.535 5643 5643 D conversations: onJingleRtpConnectionUpdate(ACCEPTING_CALL)
08-05 11:38:57.553 5643 5643 D conversations: ForegroundService: on
08-05 11:38:57.604 5643 10173 D conversations: user1@domain.tld: delivered message to JingleRtpConnection
08-05 11:38:57.604 5643 10173 D conversations: user1@domain.tld: unable to transition to accept because already in state=PROCEED
08-05 11:38:57.819 5643 13948 D conversations: checking microphone availability took 283ms
08-05 11:38:57.878 5643 10173 D conversations: user1@domain.tld: packet delivered to JingleRtpConnection
08-05 11:38:57.878 5643 10173 D conversations: processing session-init with 1 contents
08-05 11:38:57.878 5643 10173 D conversations: user1@domain.tld: transitioned into SESSION_INITIALIZED_PRE_APPROVED
08-05 11:38:57.878 5643 10173 D conversations: onJingleRtpConnectionUpdate(CONNECTING)
08-05 11:38:57.882 5643 10173 D conversations: ForegroundService: on
08-05 11:38:57.882 5643 10173 D conversations: user1@domain.tld: automatically accepting session-initiate
08-05 11:38:57.910 5643 10173 D conversations: user1@domain.tld: packet delivered to JingleRtpConnection
08-05 11:38:57.955 5643 10173 D conversations: user1@domain.tld: discovered ICE Server: [stun:turn.domain.tld:443?transport=udp] [:] [TLS_CERT_POLICY_INSECURE_NO_CHECK] [] [null] [null]
08-05 11:38:57.955 5643 10173 D conversations: user1@domain.tld: discovered ICE Server: [stun:xmpp.domain.tld:443?transport=udp] [:] [TLS_CERT_POLICY_INSECURE_NO_CHECK] [] [null] [null]
08-05 11:38:57.956 5643 10173 D conversations: user1@domain.tld: discovered ICE Server: [turn:turn.domain.tld:443?transport=udp] [4235235:sdafadsfd:JFE8ykk1LkeJa8qO/8Ea4lxgGGY=] [TLS_CERT_POLICY_INSECURE_NO_CHECK] [] [null] [null]
08-05 11:38:57.956 5643 10173 D conversations: user1@domain.tld: discovered ICE Server: [turn:xmpp.domain.tld:443?transport=udp] [4235235:sdafadsfd:JFE8ykk1LkeJa8qO/8Ea4lxgGGY=] [TLS_CERT_POLICY_INSECURE_NO_CHECK] [] [null] [null]
08-05 11:38:57.958 5643 5643 D conversations: ctor
08-05 11:38:57.958 5643 5643 D conversations: create@[name=main, id=2]
08-05 11:38:57.958 5643 5643 D conversations: ctor
08-05 11:38:57.958 5643 10173 D conversations: setUseHardwareAcousticEchoCanceler(true) model=Nokia 7.1
08-05 11:38:57.959 5643 5643 D conversations: AppRTCProximitySensor@[name=main, id=2]
08-05 11:38:57.959 5643 5643 D conversations: defaultAudioDevice: EARPIECE
08-05 11:38:57.959 5643 5643 D conversations: Android SDK: 29, Release: 10, Brand: Nokia, Device: CTL_sprout, Id: QKQ1.190828.002, Hardware: qcom, Manufacturer: HMD Global, Model: Nokia 7.1, Product: Crystal_00WW
08-05 11:38:57.959 5643 5643 D conversations: eu.siacs.conversations.services.AppRTCAudioManager.start()
08-05 11:38:57.963 5643 5643 D conversations: Audio focus request granted for VOICE_CALL streams
08-05 11:38:57.978 5643 13956 D conversations: no remote video tracks found
08-05 11:38:57.979 5643 10173 D conversations: received candidate: audio:0:candidate:3690124833 1 udp 2122260223 192.168.1.147 43878 typ host generation 0 ufrag uBFE::UNKNOWN
08-05 11:38:57.980 5643 10173 D conversations: user1@domain.tld: added candidates from back log
08-05 11:38:57.980 5643 10173 D conversations: user1@domain.tld: added candidates from back log
08-05 11:38:57.985 5643 10173 D conversations: user1@domain.tld: transitioned into SESSION_ACCEPTED
08-05 11:38:57.990 5643 10173 D conversations: onJingleRtpConnectionUpdate(CONNECTING)
08-05 11:38:57.994 5643 10173 D conversations: ForegroundService: on
08-05 11:38:58.615 5643 5643 D conversations: start
08-05 11:38:58.619 5643 5643 D conversations: BluetoothAdapter: enabled=true, state=ON, name=Nokia 7.1, address=02:00:00:00:00:00
08-05 11:38:58.621 5643 5643 D conversations: paired devices:
08-05 11:38:58.622 5643 5643 D conversations: name=Echo Dot-KJA, address=FC:65:DE:DE:8A:57
08-05 11:38:58.623 5643 5643 D conversations: name=ufo, address=00:00:00:00:9F:22
08-05 11:38:58.624 5643 5643 D conversations: name=TaoTronics TT-BR04, address=00:6A:8E:17:2B:FE
08-05 11:38:58.629 5643 5643 D conversations: HEADSET profile state: CONNECTED
08-05 11:38:58.629 5643 5643 D conversations: Bluetooth proxy for headset profile has started
08-05 11:38:58.629 5643 5643 D conversations: start done: BT state=HEADSET_UNAVAILABLE
08-05 11:38:58.629 5643 5643 D conversations: --- updateAudioDeviceState: wired headset=false, BT state=HEADSET_UNAVAILABLE
08-05 11:38:58.629 5643 5643 D conversations: Device status: available=[], selected=NONE, user selected=NONE
08-05 11:38:58.629 5643 5643 D conversations: setAudioDeviceInternal(device=EARPIECE)
08-05 11:38:58.630 5643 5643 D conversations: New device status: available=[SPEAKER_PHONE, EARPIECE], selected=EARPIECE
08-05 11:38:58.630 5643 5643 D conversations: onAudioDeviceChanged in activity: selected:EARPIECE, available:[SPEAKER_PHONE, EARPIECE]
08-05 11:38:58.635 5643 5643 D conversations: --- updateAudioDeviceState done
08-05 11:38:58.636 5643 10173 D conversations: user1@domain.tld: packet delivered to JingleRtpConnection
08-05 11:38:58.637 5643 10173 D conversations: received candidate: audio:0:candidate:842163049 1 udp 1686052607 s 43878 typ srflx raddr 192.168.1.147 rport 43878 generation 0 ufrag uBFE::UNKNOWN
08-05 11:38:58.638 5643 5643 D conversations: AudioManager started
08-05 11:38:58.638 5643 5643 D conversations: onAudioDeviceChanged in activity: selected:EARPIECE, available:[SPEAKER_PHONE, EARPIECE]
08-05 11:38:58.641 5643 10173 D conversations: user1@domain.tld: packet delivered to JingleRtpConnection
08-05 11:38:58.641 5643 10173 D conversations: received candidate: audio:0:candidate:3364722087 1 udp 41885695 192.184.90.30 62309 typ relay raddr 97.113.202.196 rport 43878 generation 0 ufrag uBFE::UNKNOWN
08-05 11:38:58.646 5643 13956 D conversations: user1@domain.tld: PeerConnectionState changed to CONNECTING
08-05 11:38:58.646 5643 13956 D conversations: onJingleRtpConnectionUpdate(CONNECTING)
08-05 11:38:58.647 5643 13956 D conversations: sending candidate: audio:0:candidate:3203526599 1 udp 2122260223 192.168.1.158 46733 typ host generation 0 ufrag jpnZ network-id 4 network-cost 10::UNKNOWN
08-05 11:38:58.650 5643 13956 D conversations: remote candidate selected: :-1:candidate:3690124833 1 udp 2122260223 192.168.1.147 43878 typ host generation 0 ufrag uBFE::UNKNOWN
08-05 11:38:58.650 5643 13956 D conversations: local candidate selected: :-1:candidate:3203526599 1 udp 2122260223 192.168.1.158 46733 typ host generation 0 ufrag jpnZ network-id 4 network-cost 10::WIFI
08-05 11:38:58.689 5643 13956 D conversations: user1@domain.tld: PeerConnectionState changed to CONNECTED
08-05 11:38:58.689 5643 13956 D conversations: eu.siacs.conversations.xmpp.jingle.ToneManager.transition(CONNECTED)
08-05 11:38:58.690 5643 13956 D conversations: eu.siacs.conversations.xmpp.jingle.ToneManager: do not configure audio manager because RTC has control
08-05 11:38:58.690 5643 13956 D conversations: onJingleRtpConnectionUpdate(CONNECTED)
08-05 11:38:58.727 5643 5643 D conversations: BluetoothServiceListener.onServiceConnected: BT state=HEADSET_UNAVAILABLE
08-05 11:38:58.727 5643 5643 D conversations: updateAudioDeviceState
08-05 11:38:58.727 5643 5643 D conversations: --- updateAudioDeviceState: wired headset=false, BT state=HEADSET_UNAVAILABLE
08-05 11:38:58.727 5643 5643 D conversations: Device status: available=[SPEAKER_PHONE, EARPIECE], selected=EARPIECE, user selected=NONE
08-05 11:38:58.727 5643 5643 D conversations: updateDevice
08-05 11:38:58.733 5643 5643 D conversations: Connected bluetooth headset: name=ufo, state=CONNECTED, SCO audio=false
08-05 11:38:58.733 5643 5643 D conversations: updateDevice done: BT state=HEADSET_AVAILABLE
08-05 11:38:58.733 5643 5643 D conversations: Need BT audio: start=true, stop=false, BT state=HEADSET_AVAILABLE
08-05 11:38:58.734 5643 5643 D conversations: startSco: BT state=HEADSET_AVAILABLE, attempts: 0, SCO is on: false
08-05 11:38:58.734 5643 5643 D conversations: Starting Bluetooth SCO and waits for ACTION_AUDIO_STATE_CHANGED...
08-05 11:38:58.743 5643 5643 D conversations: startTimer
08-05 11:38:58.744 5643 5643 D conversations: startScoAudio done: BT state=SCO_CONNECTING, SCO is on: true
08-05 11:38:58.744 5643 5643 D conversations: setAudioDeviceInternal(device=EARPIECE)
08-05 11:38:58.744 5643 5643 D conversations: New device status: available=[BLUETOOTH, SPEAKER_PHONE, EARPIECE], selected=EARPIECE
08-05 11:38:58.744 5643 5643 D conversations: onAudioDeviceChanged in activity: selected:EARPIECE, available:[BLUETOOTH, SPEAKER_PHONE, EARPIECE]
08-05 11:38:58.745 5643 5643 D conversations: --- updateAudioDeviceState done
08-05 11:38:58.745 5643 5643 D conversations: onServiceConnected done: BT state=SCO_CONNECTING
08-05 11:38:58.804 5643 5643 D conversations: BluetoothHeadsetBroadcastReceiver.onReceive: a=ACTION_AUDIO_STATE_CHANGED, s=TURNING_ON, sb=false, BT state: SCO_CONNECTING
08-05 11:38:58.804 5643 5643 D conversations: +++ Bluetooth audio SCO is now connecting...
08-05 11:38:58.804 5643 5643 D conversations: onReceive done: BT state=SCO_CONNECTING
08-05 11:38:58.921 5643 5643 D conversations: BluetoothHeadsetBroadcastReceiver.onReceive: a=ACTION_AUDIO_STATE_CHANGED, s=ON, sb=false, BT state: SCO_CONNECTING
08-05 11:38:58.921 5643 5643 D conversations: cancelTimer
08-05 11:38:58.921 5643 5643 D conversations: +++ Bluetooth audio SCO is now connected
08-05 11:38:58.921 5643 5643 D conversations: updateAudioDeviceState
08-05 11:38:58.921 5643 5643 D conversations: --- updateAudioDeviceState: wired headset=false, BT state=SCO_CONNECTED
08-05 11:38:58.921 5643 5643 D conversations: Device status: available=[BLUETOOTH, SPEAKER_PHONE, EARPIECE], selected=EARPIECE, user selected=NONE
08-05 11:38:58.922 5643 5643 D conversations: Need BT audio: start=false, stop=false, BT state=SCO_CONNECTED
08-05 11:38:58.922 5643 5643 D conversations: setAudioDeviceInternal(device=BLUETOOTH)
08-05 11:38:58.925 5643 5643 D conversations: New device status: available=[BLUETOOTH, SPEAKER_PHONE, EARPIECE], selected=BLUETOOTH
08-05 11:38:58.925 5643 5643 D conversations: onAudioDeviceChanged in activity: selected:BLUETOOTH, available:[BLUETOOTH, SPEAKER_PHONE, EARPIECE]
08-05 11:38:58.927 5643 5643 D conversations: --- updateAudioDeviceState done
08-05 11:38:58.927 5643 5643 D conversations: onReceive done: BT state=SCO_CONNECTED
08-05 11:39:04.918 5643 10173 D conversations: user1@domain.tld: packet delivered to JingleRtpConnection
08-05 11:39:04.918 5643 10173 D conversations: user1@domain.tld: received session terminate reason=success() while in state SESSION_ACCEPTED
08-05 11:39:04.921 5643 13956 D conversations: user1@domain.tld: PeerConnectionState changed to CLOSED
08-05 11:39:04.921 5643 13956 D conversations: eu.siacs.conversations.xmpp.jingle.ToneManager.transition(ENDING_CALL)
08-05 11:39:04.921 5643 13956 D conversations: eu.siacs.conversations.xmpp.jingle.ToneManager: do not configure audio manager because RTC has control
08-05 11:39:04.921 5643 13956 D conversations: onJingleRtpConnectionUpdate(ENDING_CALL)
08-05 11:39:05.020 5643 10173 D conversations: user1@domain.tld: transitioned into TERMINATED_SUCCESS
08-05 11:39:05.020 5643 10173 D conversations: onJingleRtpConnectionUpdate(ENDED)
08-05 11:39:05.024 5643 5643 D conversations: eu.siacs.conversations.services.AppRTCAudioManager.stop()
08-05 11:39:05.024 5643 5643 D conversations: stop: BT state=SCO_CONNECTED
08-05 11:39:05.025 5643 5643 D conversations: stopScoAudio: BT state=SCO_CONNECTED, SCO is on: true
08-05 11:39:05.025 5643 5643 D conversations: cancelTimer
08-05 11:39:05.031 5643 10173 D conversations: ForegroundService: on
08-05 11:39:05.034 5643 5643 D conversations: stopScoAudio done: BT state=SCO_DISCONNECTING, SCO is on: false
08-05 11:39:05.034 5643 5643 D conversations: cancelTimer
08-05 11:39:05.036 5643 5643 D conversations: stop done: BT state=UNINITIALIZED
08-05 11:39:05.075 5643 5643 D conversations: Abandoned audio focus for VOICE_CALL streams
08-05 11:39:05.075 5643 5643 D conversations: stop@[name=main, id=2]
08-05 11:39:05.097 5643 5643 D conversations: reInit(hasExtras=false)
08-05 11:39:05.099 5643 5643 D conversations: scrolledToBottomAndNoPending=true
08-05 11:39:05.100 5643 5643 D conversations: jump to first unread message
08-05 11:39:05.142 5643 5643 D conversations: ConversationFragment.onBackendConnected()
08-05 11:39:05.212 5643 5643 D conversations: releasing proximity wake lock
08-05 11:39:05.296 5643 14213 D conversations: eu.siacs.conversations.xmpp.jingle.ToneManager: putting AudioManager back into normal mode
08-05 11:39:15.563 5643 5643 D conversations: guessMimeTypeFromUriAndMime file:///storage/emulated/0/Conversations/Media/Conversations%20Recordings/RECORDING_20200805_113908962.m4a and mime=null
```
>> eu.siacs.conversations <<<
07-23 21:35:38.259 13754 13754 F DEBUG : signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
07-23 21:35:38.259 13754 13754 F DEBUG : Abort message: 'Failed to set damage region on surface 0x75db0c5880, error=EGL_BAD_ACCESS'
07-23 21:35:38.259 13754 13754 F DEBUG : x0 0000000000000000 x1 0000000000001c23 x2 0000000000000006 x3 0000000000000008
07-23 21:35:38.259 13754 13754 F DEBUG : x4 feff71647164636d x5 feff71647164636d x6 feff71647164636d x7 7f7f7f7f7f7f7f7f
07-23 21:35:38.259 13754 13754 F DEBUG : x8 0000000000000083 x9 a208e0b119efa6a1 x10 fffffff87ffffbdf x11 0000000000000001
07-23 21:35:38.259 13754 13754 F DEBUG : x12 fffffffc7ffffbdf x13 ffffffffffffffff x14 ffffffffff000000 x15 ffffffffffffffff
07-23 21:35:38.259 13754 13754 F DEBUG : x16 000000768d2b32a8 x17 000000768d1f2540 x18 00000000ffffffff x19 0000000000001817
07-23 21:35:38.259 13754 13754 F DEBUG : x20 0000000000001c23 x21 0000000000000083 x22 00000075ee0fe1b0 x23 00000075e83a14b0
07-23 21:35:38.259 13754 13754 F DEBUG : x24 0000000000000001 x25 00000075e83a1424 x26 00000075ee0fe198 x27 00000075e83a1422
07-23 21:35:38.259 13754 13754 F DEBUG : x28 0000000000000000 x29 00000075ee0fdaf0
07-23 21:35:38.259 13754 13754 F DEBUG : sp 00000075ee0fdab0 lr 000000768d1e6210 pc 000000768d1e6230
07-23 21:35:38.329 13754 13754 F DEBUG :
07-23 21:35:38.329 13754 13754 F DEBUG : backtrace:
07-23 21:35:38.329 13754 13754 F DEBUG : #00 pc 0000000000022230 /system/lib64/libc.so (abort+112)
07-23 21:35:38.329 13754 13754 F DEBUG : #01 pc 0000000000008388 /system/lib64/liblog.so (__android_log_assert+328)
07-23 21:35:38.329 13754 13754 F DEBUG : #02 pc 00000000004ad034 /system/lib64/libhwui.so (android::uirenderer::renderthread::EglManager::damageFrame(android::uirenderer::renderthread::Frame const&, SkRect const&)+180)
07-23 21:35:38.329 13754 13754 F DEBUG : #03 pc 00000000004a65fc /system/lib64/libhwui.so (android::uirenderer::skiapipeline::SkiaOpenGLPipeline::draw(android::uirenderer::renderthread::Frame const&, SkRect const&, SkRect const&, android::uirenderer::FrameBuilder::LightGeometry const&, android::uirenderer::LayerUpdateQueue*, android::uirenderer::Rect const&, bool, bool, android::uirenderer::BakedOpRenderer::LightInfo const&, std::__1::vector, std::__1::allocator>> eu.siacs.conversations <<<
07-24 07:56:16.486 32495 32495 F DEBUG : signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
07-24 07:56:16.486 32495 32495 F DEBUG : Abort message: 'Failed to set damage region on surface 0x75e88ad180, error=EGL_BAD_ACCESS'
07-24 07:56:16.486 32495 32495 F DEBUG : x0 0000000000000000 x1 00000000000035e7 x2 0000000000000006 x3 0000000000000008
07-24 07:56:16.486 32495 32495 F DEBUG : x4 feff71647164636d x5 feff71647164636d x6 feff71647164636d x7 7f7f7f7f7f7f7f7f
07-24 07:56:16.486 32495 32495 F DEBUG : x8 0000000000000083 x9 a208e0b119efa6a1 x10 fffffff87ffffbdf x11 0000000000000001
07-24 07:56:16.486 32495 32495 F DEBUG : x12 fffffffc7ffffbdf x13 ffffffffffffffff x14 ffffffffff000000 x15 ffffffffffffffff
07-24 07:56:16.486 32495 32495 F DEBUG : x16 000000768d2b32a8 x17 000000768d1f2540 x18 00000000ffffffff x19 00000000000035c7
07-24 07:56:16.486 32495 32495 F DEBUG : x20 00000000000035e7 x21 0000000000000083 x22 00000075ef3af1b0 x23 00000075ea5a1e70
07-24 07:56:16.486 32495 32495 F DEBUG : x24 0000000000000001 x25 00000075ea5a1de4 x26 00000075ef3af198 x27 00000075ea5a1de2
07-24 07:56:16.486 32495 32495 F DEBUG : x28 0000000000000000 x29 00000075ef3aeaf0
07-24 07:56:16.486 32495 32495 F DEBUG : sp 00000075ef3aeab0 lr 000000768d1e6210 pc 000000768d1e6230
07-24 07:56:16.575 32495 32495 F DEBUG :
07-24 07:56:16.575 32495 32495 F DEBUG : backtrace:
07-24 07:56:16.575 32495 32495 F DEBUG : #00 pc 0000000000022230 /system/lib64/libc.so (abort+112)
07-24 07:56:16.575 32495 32495 F DEBUG : #01 pc 0000000000008388 /system/lib64/liblog.so (__android_log_assert+328)
07-24 07:56:16.575 32495 32495 F DEBUG : #02 pc 00000000004ad034 /system/lib64/libhwui.so (android::uirenderer::renderthread::EglManager::damageFrame(android::uirenderer::renderthread::Frame const&, SkRect const&)+180)
07-24 07:56:16.575 32495 32495 F DEBUG : #03 pc 00000000004a65fc /system/lib64/libhwui.so (android::uirenderer::skiapipeline::SkiaOpenGLPipeline::draw(android::uirenderer::renderthread::Frame const&, SkRect const&, SkRect const&, android::uirenderer::FrameBuilder::LightGeometry const&, android::uirenderer::LayerUpdateQueue*, android::uirenderer::Rect const&, bool, bool, android::uirenderer::BakedOpRenderer::LightInfo const&, std::__1::vector, std::__1::allocator>> eu.siacs.conversations <<<
07-24 18:16:57.589 19068 19068 F DEBUG : signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
07-24 18:16:57.589 19068 19068 F DEBUG : Abort message: 'Failed to set damage region on surface 0x75d14bdc80, error=EGL_BAD_ACCESS'
07-24 18:16:57.589 19068 19068 F DEBUG : x0 0000000000000000 x1 0000000000007f1e x2 0000000000000006 x3 0000000000000008
07-24 18:16:57.589 19068 19068 F DEBUG : x4 feff71647164636d x5 feff71647164636d x6 feff71647164636d x7 7f7f7f7f7f7f7f7f
07-24 18:16:57.589 19068 19068 F DEBUG : x8 0000000000000083 x9 a208e0b119efa6a1 x10 fffffff87ffffbdf x11 0000000000000001
07-24 18:16:57.589 19068 19068 F DEBUG : x12 fffffffc7ffffbdf x13 ffffffffffffffff x14 ffffffffff000000 x15 ffffffffffffffff
07-24 18:16:57.589 19068 19068 F DEBUG : x16 000000768d2b32a8 x17 000000768d1f2540 x18 00000000ffffffff x19 0000000000007efd
07-24 18:16:57.589 19068 19068 F DEBUG : x20 0000000000007f1e x21 0000000000000083 x22 00000075ef3771b0 x23 00000075ee936a30
07-24 18:16:57.589 19068 19068 F DEBUG : x24 0000000000000001 x25 00000075ee9369a4 x26 00000075ef377198 x27 00000075ee9369a2
07-24 18:16:57.589 19068 19068 F DEBUG : x28 0000000000000000 x29 00000075ef376af0
07-24 18:16:57.590 19068 19068 F DEBUG : sp 00000075ef376ab0 lr 000000768d1e6210 pc 000000768d1e6230
07-24 18:16:57.674 19068 19068 F DEBUG :
07-24 18:16:57.674 19068 19068 F DEBUG : backtrace:
07-24 18:16:57.674 19068 19068 F DEBUG : #00 pc 0000000000022230 /system/lib64/libc.so (abort+112)
07-24 18:16:57.674 19068 19068 F DEBUG : #01 pc 0000000000008388 /system/lib64/liblog.so (__android_log_assert+328)
07-24 18:16:57.674 19068 19068 F DEBUG : #02 pc 00000000004ad034 /system/lib64/libhwui.so (android::uirenderer::renderthread::EglManager::damageFrame(android::uirenderer::renderthread::Frame const&, SkRect const&)+180)
07-24 18:16:57.674 19068 19068 F DEBUG : #03 pc 00000000004a65fc /system/lib64/libhwui.so (android::uirenderer::skiapipeline::SkiaOpenGLPipeline::draw(android::uirenderer::renderthread::Frame const&, SkRect const&, SkRect const&, android::uirenderer::FrameBuilder::LightGeometry const&, android::uirenderer::LayerUpdateQueue*, android::uirenderer::Rect const&, bool, bool, android::uirenderer::BakedOpRenderer::LightInfo const&, std::__1::vector, std::__1::allocator@jabber.org: xml parser mishandled SSLException(Read error: ssl=0x725fed2508: I/O error during system call, Software caused connection abort)
2020-07-17 08:44:17.430 12551-12551/? D/conversations: toggle forced foreground service after receiving event (action=ping)
2020-07-17 08:44:17.442 12551-12551/? D/conversations: ForegroundService: on
2020-07-17 08:44:18.112 12551-12551/? D/conversations: resetting all attempt counts
2020-07-17 08:44:18.153 12551-8167/? D/conversations: @jabber.org: connecting
2020-07-17 08:44:18.549 12551-8167/? D/conversations: Resolver: [Result{ip='208.68.163.218', hostame='hermes2.jabber.org', port=5222, directTls=false, authenticated=false, priority=30}, Result{ip='2605:da00:5222:5269::2:2', hostame='hermes2.jabber.org', port=5222, directTls=false, authenticated=false, priority=30}]
2020-07-17 08:44:18.557 12551-8167/? D/conversations: verified hostname null
2020-07-17 08:44:18.557 12551-8167/? D/conversations: @jabber.org: using values from resolver hermes2.jabber.org/208.68.163.218:5222 tls: false
2020-07-17 08:44:19.671 12551-8167/? D/conversations: @jabber.org: TLS connection established
2020-07-17 08:44:19.795 12551-8167/? D/conversations: @jabber.org: protocol=TLSv1.2 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
2020-07-17 08:44:19.796 12551-8167/? D/conversations: @jabber.org/17a375be8c62a0c3: Authenticating with SCRAM-SHA-1
2020-07-17 08:44:20.156 12551-8167/? D/conversations: @jabber.org: logged in
2020-07-17 08:44:20.282 12551-8167/? D/conversations: @jabber.org: clearing 3 iq callbacks
2020-07-17 08:44:20.287 12551-8167/? D/conversations: ignoring late delivery of jingle packet to jingle session with status=99:
2020-07-17 08:44:20.287 12551-8167/? D/conversations: @jabber.org: done clearing iq callbacks. 0 left
2020-07-17 08:44:40.312 12551-8167/? D/conversations: @jabber.org: not counting stanza(IqPacket). Not in smacks session.
2020-07-17 08:44:40.313 12551-8167/? D/conversations: @jabber.org: jid changed during bind. updating database
2020-07-17 08:44:40.323 12551-8167/? D/conversations: @jabber.org: starting service discovery
2020-07-17 08:44:40.517 12551-8167/? D/conversations: @jabber.org: stream management(2) enabled
2020-07-17 08:44:40.734 12551-8167/? D/conversations: @jabber.org: Requesting block list
2020-07-17 08:44:41.234 12551-8167/? D/conversations: Received blocklist update from server
2020-07-17 08:44:41.288 12551-8167/? D/conversations: AxolotlService (@jabber.org): Bundle 340145426 in PEP was current
2020-07-17 08:44:41.289 12551-8167/? D/conversations: AxolotlService (@jabber.org): Announcing device 340145426
2020-07-17 08:44:41.290 12551-8167/? D/conversations: @jabber.org: online with resource 1348fc26740bbeb3
2020-07-17 08:44:41.290 12551-8167/? D/conversations: @jabber.org: fetching roster version 7
2020-07-17 08:44:41.749 12551-8167/? D/conversations: @jabber.org: retrieved own device list: [340145426]
2020-07-17 08:44:41.749 12551-8167/? D/conversations: @jabber.org: ignoring duplicate own device id list
2020-07-17 08:44:41.803 12551-8167/? D/conversations: AxolotlService (@jabber.org): Bundle 340145426 in PEP was current
2020-07-17 08:44:41.803 12551-8167/? D/conversations: AxolotlService (@jabber.org): Announcing device 340145426
2020-07-17 08:44:41.806 12551-8167/? D/conversations: send file message
2020-07-17 08:44:41.817 12551-8167/? D/conversations: @jabber.org: sending IBB offer
2020-07-17 08:44:41.818 12551-8167/? D/conversations: AxolotlService (@jabber.org): Received PEP device list [340145426] update from @jabber.org, processing...
2020-07-17 08:44:41.818 12551-8167/? D/conversations: @jabber.org: ignoring duplicate own device id list
2020-07-17 08:44:42.039 12551-8167/? D/conversations: @jabber.org: running mam query to=conversations@conference.siacs.eu, order=NORMAL, after=1594964952771454, catchup=true, ns=urn:xmpp:mam:2
2020-07-17 08:44:42.143 12551-8167/? D/conversations: @jabber.org: retrieved own device list: [340145426]
2020-07-17 08:44:42.143 12551-8167/? D/conversations: @jabber.org: ignoring duplicate own device id list
2020-07-17 08:44:42.382 12551-8167/? D/conversations: @jabber.org: finished mam after 0(0) messages. messages left=true count=37375
2020-07-17 08:44:42.382 12551-8167/? D/conversations: @jabber.org: found 0 pending receipt requests
2020-07-17 08:44:44.618 12551-8167/? D/conversations: unable to route jingle packet: @jabber.org/1348fc26740bbeb3"" from=""@jabber.org/Jolla"">session 6ULCU5YCStwtch2Bb8v3+g is unknown
2020-07-17 08:44:44.927 12551-8167/? D/conversations: auto accepting file from @jabber.org/Jolla
2020-07-17 08:44:44.929 12551-8167/? D/conversations: created output file /storage/emulated/0/Conversations/Media/Conversations Images/7ae3eecb-1f36-46de-8dbe-ed4d137e3d1e.jpg
2020-07-17 08:44:44.930 12551-8167/? D/conversations: receiving file: expecting size of 67755
2020-07-17 08:44:45.646 12551-8167/? D/conversations: @jabber.org: received out of order session-accept (we were responding)
2020-07-17 08:44:50.710 12551-12551/? D/conversations: toggle forced foreground service after receiving event (action=eu.siacs.conversations.POST_CONNECTIVITY_CHANGE)
2020-07-17 08:44:50.729 12551-12551/? D/conversations: ForegroundService: on
2020-07-17 08:44:50.733 12551-12551/? D/conversations: @jabber.org send ping (action=eu.siacs.conversations.POST_CONNECTIVITY_CHANGE,lowTimeout=false)
2020-07-17 08:45:15.259 12551-12551/? D/conversations: toggle forced foreground service after receiving event (action=ping)
2020-07-17 08:45:15.267 12551-12551/? D/conversations: ForegroundService: on
2020-07-17 08:45:26.810 12551-12551/? D/conversations: app switched into background
````
",
989,https://api.github.com/repos/iNPUTmice/Conversations/issues/3833,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3833/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3833/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3833/events,https://github.com/iNPUTmice/Conversations/issues/3833,660071095,MDU6SXNzdWU2NjAwNzEwOTU=,3833,Upside down video calls,"{'login': 'buggymonkey', 'id': 65551172, 'node_id': 'MDQ6VXNlcjY1NTUxMTcy', 'avatar_url': 'https://avatars3.githubusercontent.com/u/65551172?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/buggymonkey', 'html_url': 'https://github.com/buggymonkey', 'followers_url': 'https://api.github.com/users/buggymonkey/followers', 'following_url': 'https://api.github.com/users/buggymonkey/following{/other_user}', 'gists_url': 'https://api.github.com/users/buggymonkey/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/buggymonkey/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/buggymonkey/subscriptions', 'organizations_url': 'https://api.github.com/users/buggymonkey/orgs', 'repos_url': 'https://api.github.com/users/buggymonkey/repos', 'events_url': 'https://api.github.com/users/buggymonkey/events{/privacy}', 'received_events_url': 'https://api.github.com/users/buggymonkey/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028640246, 'node_id': 'MDU6TGFiZWwyMDI4NjQwMjQ2', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/bug', 'name': 'bug', 'color': 'c95100', 'default': True, 'description': 'Accepted, reproducible bug'}]",open,False,,[],,15,2020-07-18T10:43:40Z,2020-08-22T16:33:07Z,,NONE,,,"#### General information
* **Version:** 2.8.8+fcr
* **Device:** Fairphone 2
* **Android Version:** LineageOS 17.1 without google things
* **Server name:** self hosted
* **Server software:** ejabberd
* **Conversations source:** F-Droid
#### Steps to reproduce
1. make a video call
#### Expected result
What is the expected output?
The video of the front cameras should be shown in correct orientation
#### Actual result
What do you see instead?
The video of my front camera is upside down. The video of the other person is oriented correctly. So this might be a Fairphone 2 problem. However, other apps have the front camera oriented correctly.
Thanks for all the effort you spent in this project :heart:",
990,https://api.github.com/repos/iNPUTmice/Conversations/issues/3832,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3832/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3832/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3832/events,https://github.com/iNPUTmice/Conversations/issues/3832,660040492,MDU6SXNzdWU2NjAwNDA0OTI=,3832,Replying to MUC whisper (PM) from the notification bar sends message to the main chat instead,"{'login': 'ValdikSS', 'id': 3054729, 'node_id': 'MDQ6VXNlcjMwNTQ3Mjk=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/3054729?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ValdikSS', 'html_url': 'https://github.com/ValdikSS', 'followers_url': 'https://api.github.com/users/ValdikSS/followers', 'following_url': 'https://api.github.com/users/ValdikSS/following{/other_user}', 'gists_url': 'https://api.github.com/users/ValdikSS/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ValdikSS/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ValdikSS/subscriptions', 'organizations_url': 'https://api.github.com/users/ValdikSS/orgs', 'repos_url': 'https://api.github.com/users/ValdikSS/repos', 'events_url': 'https://api.github.com/users/ValdikSS/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ValdikSS/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028640246, 'node_id': 'MDU6TGFiZWwyMDI4NjQwMjQ2', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/bug', 'name': 'bug', 'color': 'c95100', 'default': True, 'description': 'Accepted, reproducible bug'}]",open,False,,[],,0,2020-07-18T09:40:58Z,2020-07-30T14:55:38Z,,NONE,,,"#### General information
When someone writes you private message over multi-uesr chat (whisper, as Conversations calls it) and Conversations is minimized, you'll receive notification, just as for every usual message. When you reply to this whisper from the notification itself, the message it sent to the chat, as a publicly visible message, not as a whisper to the person who contacted you over MUC.
* **Version:** 2.6.9+pcr
* **Device:** Unihertz Titan
* **Android Version:** Android 9 (stock)
* **Server name:** self hosted
* **Server software:** prosody 0.11
* **Installed server modules:** Stream Managment, CSI, MAM
* **Conversations source:** PlayStore
#### Steps to reproduce
1. Join MUC room with another person
2. Ask the person to write you whisper over this MUC room
3. Minimize Conversations, wait for the message to come
4. Response to the message right from the notifications text input field
5. Open Conversations
#### Expected result
Conversations sends whisper to the person who contacted you.
#### Actual result
Conversations sends message to the main chat.",
991,https://api.github.com/repos/iNPUTmice/Conversations/issues/3831,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3831/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3831/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3831/events,https://github.com/iNPUTmice/Conversations/issues/3831,656399288,MDU6SXNzdWU2NTYzOTkyODg=,3831,Make buttons for loudspeaker and microphone accessible instantly after triggering a call,"{'login': 'Norbert80', 'id': 6921696, 'node_id': 'MDQ6VXNlcjY5MjE2OTY=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/6921696?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Norbert80', 'html_url': 'https://github.com/Norbert80', 'followers_url': 'https://api.github.com/users/Norbert80/followers', 'following_url': 'https://api.github.com/users/Norbert80/following{/other_user}', 'gists_url': 'https://api.github.com/users/Norbert80/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Norbert80/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Norbert80/subscriptions', 'organizations_url': 'https://api.github.com/users/Norbert80/orgs', 'repos_url': 'https://api.github.com/users/Norbert80/repos', 'events_url': 'https://api.github.com/users/Norbert80/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Norbert80/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-07-14T07:39:16Z,2020-07-14T13:11:23Z,2020-07-14T13:11:22Z,NONE,,,"It would be great to change Conversations/Quicksy so that loudspeaker and microphone are already accessible at the very beginning of call initialization.
It is annoying to carefully listen and watch for call initialization procedure with the phone not on the ear until I can turn on the loudspeaker.
Most phone apps have loudspeaker and microphone buttons accessible instantly. Android GSM call app, Signal, Linphone and others...",
992,https://api.github.com/repos/iNPUTmice/Conversations/issues/3830,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3830/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3830/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3830/events,https://github.com/iNPUTmice/Conversations/issues/3830,655363328,MDU6SXNzdWU2NTUzNjMzMjg=,3830,Improve tolerance for bad connections/interruptions,"{'login': 'UniqueActive', 'id': 27487663, 'node_id': 'MDQ6VXNlcjI3NDg3NjYz', 'avatar_url': 'https://avatars0.githubusercontent.com/u/27487663?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/UniqueActive', 'html_url': 'https://github.com/UniqueActive', 'followers_url': 'https://api.github.com/users/UniqueActive/followers', 'following_url': 'https://api.github.com/users/UniqueActive/following{/other_user}', 'gists_url': 'https://api.github.com/users/UniqueActive/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/UniqueActive/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/UniqueActive/subscriptions', 'organizations_url': 'https://api.github.com/users/UniqueActive/orgs', 'repos_url': 'https://api.github.com/users/UniqueActive/repos', 'events_url': 'https://api.github.com/users/UniqueActive/events{/privacy}', 'received_events_url': 'https://api.github.com/users/UniqueActive/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,1,2020-07-12T09:17:15Z,2020-07-14T19:04:22Z,,NONE,,,"Hello!
When calling from Germany with my partner in India, the calls frequently end due to connectivity issues. When using Linphone for the same purpose and in the same situations every day throughout the past year, we found it to be more tolerant to interruptions in the connection, while Conversation seems to terminate the call very quickly once the connection is lost for about a second.
I imagine this would be a general issue for people who live in places with bad connectivity and internet infrastructure, so improving the tolerance for internet drops that last a few seconds would do a great deal for a lot of people who don't live in places with fantastic internet infrastructure. So instead of terminating the call after a second or so, it would be great if it tried to reconnect or just kept waiting for signal for 3-5 seconds before terminating.
I don't know how much control you have over this behaviour since you use an external library for much of the actual calling, but since Linphone is able to provide great tolerance to interruptions, I reckoned I should at least bring it up here because calling again every 5-10 minutes gets old very quickly. :)",
993,https://api.github.com/repos/iNPUTmice/Conversations/issues/3829,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3829/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3829/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3829/events,https://github.com/iNPUTmice/Conversations/issues/3829,655239914,MDU6SXNzdWU2NTUyMzk5MTQ=,3829,"Group Shows ""No members"" and inviting does not work","{'login': 'fymwpm', 'id': 68159890, 'node_id': 'MDQ6VXNlcjY4MTU5ODkw', 'avatar_url': 'https://avatars0.githubusercontent.com/u/68159890?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/fymwpm', 'html_url': 'https://github.com/fymwpm', 'followers_url': 'https://api.github.com/users/fymwpm/followers', 'following_url': 'https://api.github.com/users/fymwpm/following{/other_user}', 'gists_url': 'https://api.github.com/users/fymwpm/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/fymwpm/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/fymwpm/subscriptions', 'organizations_url': 'https://api.github.com/users/fymwpm/orgs', 'repos_url': 'https://api.github.com/users/fymwpm/repos', 'events_url': 'https://api.github.com/users/fymwpm/events{/privacy}', 'received_events_url': 'https://api.github.com/users/fymwpm/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,9,2020-07-11T16:39:28Z,2020-07-23T17:09:23Z,2020-07-12T08:03:09Z,NONE,,,"#### General information
* **Version:** 2.8.8 +fcr
* **Device:** Fairfone 3
* **Android Version:** Android 9
* **Server name:** jabb.im
* **Server software:**
* **Installed server modules:**
* **Conversations source:** F-Droid,
#### Steps to reproduce
1. Created new group
2. Invite participants
3. Post to group
4. Confirm With participants,that Post ist beeing Received.
5. Wait for some time
6. Post to group again
#### Expected result
What is the expected output?
Post will be received by group members.
#### Actual result
Post ist Not beeing sent Error message Shows: only participants to the group are allowed to send. When looking at group Details no participants are shown. When group participants Look at group Details, my Account ist shown as owner and all participants are visible.
#### Debug output
Please post the output of adb logcat. The log should begin with the start of Conversations and include all the
steps it takes to reproduce the problem.
````
adb logcat -s conversations
````
",
994,https://api.github.com/repos/iNPUTmice/Conversations/issues/3828,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3828/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3828/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3828/events,https://github.com/iNPUTmice/Conversations/pull/3828,655188343,MDExOlB1bGxSZXF1ZXN0NDQ3NzU0Mzg1,3828,Support sending messages with ctrl+enter.,"{'login': 'marmistrz', 'id': 2914938, 'node_id': 'MDQ6VXNlcjI5MTQ5Mzg=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2914938?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/marmistrz', 'html_url': 'https://github.com/marmistrz', 'followers_url': 'https://api.github.com/users/marmistrz/followers', 'following_url': 'https://api.github.com/users/marmistrz/following{/other_user}', 'gists_url': 'https://api.github.com/users/marmistrz/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/marmistrz/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/marmistrz/subscriptions', 'organizations_url': 'https://api.github.com/users/marmistrz/orgs', 'repos_url': 'https://api.github.com/users/marmistrz/repos', 'events_url': 'https://api.github.com/users/marmistrz/events{/privacy}', 'received_events_url': 'https://api.github.com/users/marmistrz/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-11T11:06:45Z,2020-07-12T05:18:41Z,2020-07-12T05:18:41Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/pulls/3828', 'html_url': 'https://github.com/iNPUTmice/Conversations/pull/3828', 'diff_url': 'https://github.com/iNPUTmice/Conversations/pull/3828.diff', 'patch_url': 'https://github.com/iNPUTmice/Conversations/pull/3828.patch'}","Currently Conversations lacks any keyboard shortcut to send a message if enter_is_send is disabled.
KeyboardListener has been extended to include the original KeyEvent as an argument.
-------------------------
If passing the whole `KeyEvent` is too much, we can use `getMetaState()` and pass the bitflags of meta keys. Closes #3827.",
995,https://api.github.com/repos/iNPUTmice/Conversations/issues/3827,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3827/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3827/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3827/events,https://github.com/iNPUTmice/Conversations/issues/3827,655186656,MDU6SXNzdWU2NTUxODY2NTY=,3827,Support ctrl+enter for sending messages ,"{'login': 'marmistrz', 'id': 2914938, 'node_id': 'MDQ6VXNlcjI5MTQ5Mzg=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2914938?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/marmistrz', 'html_url': 'https://github.com/marmistrz', 'followers_url': 'https://api.github.com/users/marmistrz/followers', 'following_url': 'https://api.github.com/users/marmistrz/following{/other_user}', 'gists_url': 'https://api.github.com/users/marmistrz/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/marmistrz/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/marmistrz/subscriptions', 'organizations_url': 'https://api.github.com/users/marmistrz/orgs', 'repos_url': 'https://api.github.com/users/marmistrz/repos', 'events_url': 'https://api.github.com/users/marmistrz/events{/privacy}', 'received_events_url': 'https://api.github.com/users/marmistrz/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-07-11T10:55:32Z,2020-07-12T05:18:41Z,2020-07-12T05:18:41Z,CONTRIBUTOR,,,"#### General information
* **Version:** 2.6.0
* **Device:** F(x)tec Pro1
* **Android Version:** LOS 16.0
#### Description
Currently we have an option to use enter as send.
On devices with a hardware keyboard, however, it's desirable to use enter as a newline and ctrl+enter (or some other shortcut) as send.
I'll file a PR in a while.
",
996,https://api.github.com/repos/iNPUTmice/Conversations/issues/3826,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3826/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3826/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3826/events,https://github.com/iNPUTmice/Conversations/issues/3826,654683039,MDU6SXNzdWU2NTQ2ODMwMzk=,3826,"""Retracted call"" UI when returning to Call with app switcher","{'login': 'UniqueActive', 'id': 27487663, 'node_id': 'MDQ6VXNlcjI3NDg3NjYz', 'avatar_url': 'https://avatars0.githubusercontent.com/u/27487663?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/UniqueActive', 'html_url': 'https://github.com/UniqueActive', 'followers_url': 'https://api.github.com/users/UniqueActive/followers', 'following_url': 'https://api.github.com/users/UniqueActive/following{/other_user}', 'gists_url': 'https://api.github.com/users/UniqueActive/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/UniqueActive/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/UniqueActive/subscriptions', 'organizations_url': 'https://api.github.com/users/UniqueActive/orgs', 'repos_url': 'https://api.github.com/users/UniqueActive/repos', 'events_url': 'https://api.github.com/users/UniqueActive/events{/privacy}', 'received_events_url': 'https://api.github.com/users/UniqueActive/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028640246, 'node_id': 'MDU6TGFiZWwyMDI4NjQwMjQ2', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/bug', 'name': 'bug', 'color': 'c95100', 'default': True, 'description': 'Accepted, reproducible bug'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/8', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/8', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/8/labels', 'id': 5582737, 'node_id': 'MDk6TWlsZXN0b25lNTU4MjczNw==', 'number': 8, 'title': '2.8.9', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 9, 'state': 'closed', 'created_at': '2020-06-25T14:33:17Z', 'updated_at': '2020-07-26T11:34:23Z', 'due_on': None, 'closed_at': '2020-07-26T11:34:23Z'}",2,2020-07-10T10:28:52Z,2020-07-10T14:10:56Z,2020-07-10T14:10:55Z,NONE,,,"#### General information
* **Version:** 2.8.8+fcr
* **Device:** Samsung Galaxy S8
* **Android Version:** Android 9 (LineageOS)
* **Conversations source:** F-Droid
#### Steps to reproduce
1. Start a Call
2. Use the Android app switcher button (or press the home button)
3. Switch back to Conversations using the app switcher
#### Expected result
The regular call interface of the ongoing call shows
#### Actual result
The ""Retracted call"" interface shows, though the call timer is still ticking and the call is still correctly ongoing",
997,https://api.github.com/repos/iNPUTmice/Conversations/issues/3825,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3825/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3825/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3825/events,https://github.com/iNPUTmice/Conversations/issues/3825,654671341,MDU6SXNzdWU2NTQ2NzEzNDE=,3825,Feature request: Call UI button to return to chat,"{'login': 'UniqueActive', 'id': 27487663, 'node_id': 'MDQ6VXNlcjI3NDg3NjYz', 'avatar_url': 'https://avatars0.githubusercontent.com/u/27487663?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/UniqueActive', 'html_url': 'https://github.com/UniqueActive', 'followers_url': 'https://api.github.com/users/UniqueActive/followers', 'following_url': 'https://api.github.com/users/UniqueActive/following{/other_user}', 'gists_url': 'https://api.github.com/users/UniqueActive/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/UniqueActive/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/UniqueActive/subscriptions', 'organizations_url': 'https://api.github.com/users/UniqueActive/orgs', 'repos_url': 'https://api.github.com/users/UniqueActive/repos', 'events_url': 'https://api.github.com/users/UniqueActive/events{/privacy}', 'received_events_url': 'https://api.github.com/users/UniqueActive/received_events', 'type': 'User', 'site_admin': False}","[{'id': 76683388, 'node_id': 'MDU6TGFiZWw3NjY4MzM4OA==', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/feature', 'name': 'feature', 'color': '128a00', 'default': False, 'description': 'Accepted feature request'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/8', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/8', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/8/labels', 'id': 5582737, 'node_id': 'MDk6TWlsZXN0b25lNTU4MjczNw==', 'number': 8, 'title': '2.8.9', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 9, 'state': 'closed', 'created_at': '2020-06-25T14:33:17Z', 'updated_at': '2020-07-26T11:34:23Z', 'due_on': None, 'closed_at': '2020-07-26T11:34:23Z'}",2,2020-07-10T10:07:48Z,2020-07-10T17:30:28Z,2020-07-10T17:30:27Z,NONE,,,"Hello,
first of all great work on the A/V calls, they are a really good experience so far :)
One thing I find very inconvenient though is getting back to sending messages while on call. There is no button to switch to chat and pressing back in the Android UI ends the call.
I suggest the following:
1. Adding a button in the call UI to return to chat (and vice versa) and
2. changing the behaviour of the back button to simply go back to chat without hanging up, since I expect the call to end when I hang up, not when I try to go back to the previous screen.
Let me know your thoughts!",
998,https://api.github.com/repos/iNPUTmice/Conversations/issues/3824,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3824/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3824/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3824/events,https://github.com/iNPUTmice/Conversations/issues/3824,654021688,MDU6SXNzdWU2NTQwMjE2ODg=,3824,Upgrade to libwebrtc M84,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'id': 76683388, 'node_id': 'MDU6TGFiZWw3NjY4MzM4OA==', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/feature', 'name': 'feature', 'color': '128a00', 'default': False, 'description': 'Accepted feature request'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/8', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/8', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/8/labels', 'id': 5582737, 'node_id': 'MDk6TWlsZXN0b25lNTU4MjczNw==', 'number': 8, 'title': '2.8.9', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 9, 'state': 'closed', 'created_at': '2020-06-25T14:33:17Z', 'updated_at': '2020-07-26T11:34:23Z', 'due_on': None, 'closed_at': '2020-07-26T11:34:23Z'}",0,2020-07-09T12:28:51Z,2020-07-10T14:10:55Z,2020-07-10T14:10:55Z,OWNER,,,Should be stable enough by now.,
999,https://api.github.com/repos/iNPUTmice/Conversations/issues/3823,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3823/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3823/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3823/events,https://github.com/iNPUTmice/Conversations/issues/3823,654016812,MDU6SXNzdWU2NTQwMTY4MTI=,3823,Hitting retry in quick succession crashes app,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028699543, 'node_id': 'MDU6TGFiZWwyMDI4Njk5NTQz', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/wontfix', 'name': 'wontfix', 'color': '007ebc', 'default': True, 'description': 'Manually closed'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]",,0,2020-07-09T12:20:45Z,2020-07-09T17:19:46Z,2020-07-09T17:19:46Z,OWNER,,,"The second retry should just be ignored.
```
java.lang.IllegalStateException: There is already a running RTP session. This should have been caught by the UI
at eu.siacs.conversations.xmpp.jingle.JingleConnectionManager.proposeJingleRtpSession(JingleConnectionManager.java:563)
at eu.siacs.conversations.ui.RtpSessionActivity.proposeJingleRtpSession(RtpSessionActivity.java:364)
at eu.siacs.conversations.ui.RtpSessionActivity.retry(RtpSessionActivity.java:943)
at eu.siacs.conversations.ui.RtpSessionActivity.lambda$EgxvLgCzOES3DXaQhds1UeGE3-s(RtpSessionActivity.java)
at eu.siacs.conversations.ui.-$$Lambda$RtpSessionActivity$EgxvLgCzOES3DXaQhds1UeGE3-s.onClick(lambda)
at android.view.View.performClick(View.java:5723)
at android.view.View$PerformClick.run(View.java:22689)
at android.os.Handler.handleCallback(Handler.java:836)
at android.os.Handler.dispatchMessage(Handler.java:103)
at android.os.Looper.loop(Looper.java:203)
at android.app.ActivityThread.main(ActivityThread.java:6368)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1063)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:924)
```",
1000,https://api.github.com/repos/iNPUTmice/Conversations/issues/3822,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3822/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3822/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3822/events,https://github.com/iNPUTmice/Conversations/issues/3822,654014697,MDU6SXNzdWU2NTQwMTQ2OTc=,3822,Crash after race to enable/disable microphone,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028640246, 'node_id': 'MDU6TGFiZWwyMDI4NjQwMjQ2', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/bug', 'name': 'bug', 'color': 'c95100', 'default': True, 'description': 'Accepted, reproducible bug'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/8', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/8', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/8/labels', 'id': 5582737, 'node_id': 'MDk6TWlsZXN0b25lNTU4MjczNw==', 'number': 8, 'title': '2.8.9', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 9, 'state': 'closed', 'created_at': '2020-06-25T14:33:17Z', 'updated_at': '2020-07-26T11:34:23Z', 'due_on': None, 'closed_at': '2020-07-26T11:34:23Z'}",0,2020-07-09T12:17:16Z,2020-07-09T17:20:16Z,2020-07-09T17:20:16Z,OWNER,,,"```
java.lang.IllegalStateException: MediaStreamTrack has been disposed.
at org.webrtc.MediaStreamTrack.checkMediaStreamTrackExists(MediaStreamTrack.java:120)
at org.webrtc.MediaStreamTrack.setEnabled(MediaStreamTrack.java:98)
at eu.siacs.conversations.xmpp.jingle.WebRTCWrapper.setMicrophoneEnabled(WebRTCWrapper.java:378)
at eu.siacs.conversations.xmpp.jingle.JingleRtpConnection.setMicrophoneEnabled(JingleRtpConnection.java:1089)
at eu.siacs.conversations.ui.RtpSessionActivity.enableMicrophone(RtpSessionActivity.java:920)
at eu.siacs.conversations.ui.RtpSessionActivity.lambda$iEnShgZBIglb_SZ6ih7Qg6v9CQE(Unknown Source:0)
at eu.siacs.conversations.ui.-$$Lambda$RtpSessionActivity$iEnShgZBIglb_SZ6ih7Qg6v9CQE.onClick(Unknown Source:2)
at android.view.View.performClick(View.java:7161)
at android.view.View.performClickInternal(View.java:7133)
at android.view.View.access$3500(View.java:804)
at android.view.View$PerformClick.run(View.java:27416)
at android.os.Handler.handleCallback(Handler.java:883)
at android.os.Handler.dispatchMessage(Handler.java:100)
at android.os.Looper.loop(Looper.java:241)
at android.app.ActivityThread.main(ActivityThread.java:7617)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:941)
```",
1001,https://api.github.com/repos/iNPUTmice/Conversations/issues/3821,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3821/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3821/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3821/events,https://github.com/iNPUTmice/Conversations/issues/3821,652315505,MDU6SXNzdWU2NTIzMTU1MDU=,3821,Closing / Quitting multiple conversations with one click event.,"{'login': 'suuhm', 'id': 11504990, 'node_id': 'MDQ6VXNlcjExNTA0OTkw', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11504990?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/suuhm', 'html_url': 'https://github.com/suuhm', 'followers_url': 'https://api.github.com/users/suuhm/followers', 'following_url': 'https://api.github.com/users/suuhm/following{/other_user}', 'gists_url': 'https://api.github.com/users/suuhm/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/suuhm/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/suuhm/subscriptions', 'organizations_url': 'https://api.github.com/users/suuhm/orgs', 'repos_url': 'https://api.github.com/users/suuhm/repos', 'events_url': 'https://api.github.com/users/suuhm/events{/privacy}', 'received_events_url': 'https://api.github.com/users/suuhm/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-07-07T13:17:58Z,2020-07-08T06:32:14Z,2020-07-08T06:32:13Z,NONE,,,"#### General information
* **Version:** 2.8.x
* **Android Version:** Android 9 (stock)
#### Expected result
It would be great if there is a way to close / quit multiple or all conversations with one click (insteat of manually swipe it away for example)
Is there a way to do this as a feature?
",
1002,https://api.github.com/repos/iNPUTmice/Conversations/issues/3820,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3820/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3820/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3820/events,https://github.com/iNPUTmice/Conversations/issues/3820,652039138,MDU6SXNzdWU2NTIwMzkxMzg=,3820,Crash when detecting camera directon (front/back) on broken(?) ROMs,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028640246, 'node_id': 'MDU6TGFiZWwyMDI4NjQwMjQ2', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/bug', 'name': 'bug', 'color': 'c95100', 'default': True, 'description': 'Accepted, reproducible bug'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/8', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/8', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/8/labels', 'id': 5582737, 'node_id': 'MDk6TWlsZXN0b25lNTU4MjczNw==', 'number': 8, 'title': '2.8.9', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 9, 'state': 'closed', 'created_at': '2020-06-25T14:33:17Z', 'updated_at': '2020-07-26T11:34:23Z', 'due_on': None, 'closed_at': '2020-07-26T11:34:23Z'}",0,2020-07-07T06:25:25Z,2020-07-09T18:11:19Z,2020-07-09T18:11:18Z,OWNER,,,"```
java.lang.NullPointerException: Attempt to invoke virtual method 'int java.lang.Integer.intValue()' on a null object reference
at org.webrtc.Camera2Enumerator.isFrontFacing(Camera2Enumerator.java:68)
at eu.siacs.conversations.xmpp.jingle.WebRTCWrapper.getVideoCapturer(WebRTCWrapper.java:501)
at eu.siacs.conversations.xmpp.jingle.WebRTCWrapper.initializePeerConnection(WebRTCWrapper.java:248)
at eu.siacs.conversations.xmpp.jingle.JingleRtpConnection.setupWebRTC(JingleRtpConnection.java:951)
at eu.siacs.conversations.xmpp.jingle.JingleRtpConnection.sendSessionAccept(JingleRtpConnection.java:426)
at eu.siacs.conversations.xmpp.jingle.JingleRtpConnection.lambda$sendSessionAccept$1$JingleRtpConnection(JingleRtpConnection.java:417)
at eu.siacs.conversations.xmpp.jingle.-$$Lambda$JingleRtpConnection$Y6d-UNaf6uJZPWvT4fwVoWtd6qE.onIceServersDiscovered(Unknown Source:6)
at eu.siacs.conversations.xmpp.jingle.JingleRtpConnection.lambda$discoverIceServers$6$JingleRtpConnection(JingleRtpConnection.java:1180)
at eu.siacs.conversations.xmpp.jingle.-$$Lambda$JingleRtpConnection$Cq4TA-ljrxVcCvF8xkEDjwh2zCY.onIqPacketReceived(Unknown Source:4)
at eu.siacs.conversations.xmpp.XmppConnection.processIq(XmppConnection.java:757)
at eu.siacs.conversations.xmpp.XmppConnection.processStream(XmppConnection.java:635)
at eu.siacs.conversations.xmpp.XmppConnection.processStream(XmppConnection.java:483)
at eu.siacs.conversations.xmpp.XmppConnection.switchOverToTls(XmppConnection.java:801)
at eu.siacs.conversations.xmpp.XmppConnection.processStream(XmppConnection.java:467)
at eu.siacs.conversations.xmpp.XmppConnection.connect(XmppConnection.java:375)
at eu.siacs.conversations.xmpp.XmppConnection.run(XmppConnection.java:454)
at java.lang.Thread.run(Thread.java:764)
```
Technically this is probably a bug in libwebrtc; but we might be able to work around that.",
1003,https://api.github.com/repos/iNPUTmice/Conversations/issues/3819,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3819/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3819/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3819/events,https://github.com/iNPUTmice/Conversations/issues/3819,651788342,MDU6SXNzdWU2NTE3ODgzNDI=,3819,Emoji: Conversations parses send Emoji differently,"{'login': 'Echolon', 'id': 29168011, 'node_id': 'MDQ6VXNlcjI5MTY4MDEx', 'avatar_url': 'https://avatars2.githubusercontent.com/u/29168011?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Echolon', 'html_url': 'https://github.com/Echolon', 'followers_url': 'https://api.github.com/users/Echolon/followers', 'following_url': 'https://api.github.com/users/Echolon/following{/other_user}', 'gists_url': 'https://api.github.com/users/Echolon/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Echolon/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Echolon/subscriptions', 'organizations_url': 'https://api.github.com/users/Echolon/orgs', 'repos_url': 'https://api.github.com/users/Echolon/repos', 'events_url': 'https://api.github.com/users/Echolon/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Echolon/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028640246, 'node_id': 'MDU6TGFiZWwyMDI4NjQwMjQ2', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/bug', 'name': 'bug', 'color': 'c95100', 'default': True, 'description': 'Accepted, reproducible bug'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/8', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/8', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/8/labels', 'id': 5582737, 'node_id': 'MDk6TWlsZXN0b25lNTU4MjczNw==', 'number': 8, 'title': '2.8.9', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 9, 'state': 'closed', 'created_at': '2020-06-25T14:33:17Z', 'updated_at': '2020-07-26T11:34:23Z', 'due_on': None, 'closed_at': '2020-07-26T11:34:23Z'}",3,2020-07-06T20:07:03Z,2020-07-09T15:43:43Z,2020-07-09T15:43:43Z,NONE,,,"#### General information
* **Version:** 2.8.7+fcr
* **Android Version:** Android 7.1.2
* **Conversations source:** F-Droid
#### Steps to reproduce
1. Send these four emojis from e.g. Dino: 🙅♂️️🙆♂️️🤦♂️️🤦♂️️
2. Review chat in Conversations and see each emoji twice.
#### Expected result
In Dino:
![dino123](https://user-images.githubusercontent.com/29168011/86636147-3ddbac00-bfd4-11ea-95fb-f403592ce92d.png)
#### Actual result
In Conversations
![Screenshot_20200706-215642](https://user-images.githubusercontent.com/29168011/86635819-e2112300-bfd3-11ea-90f8-031d6e90571c.png)
#### Additional points
- History: https://logs.xmpp.org/commteam/2020-07-06#2020-07-06-87caed30d601b091
- @mar-v-in thanks for reviewing from your side. I will quote your post:
> interesting. So dino sends [person gesuring no][join][male symbol][emojify][emojify]
> This makes sense to some degree, but [emojify] is often not needed.
> [male symbol] = ♂
> [male symbol][emojify] = ♂️
> [person gesturing no] = 🙅
> [person gesturing no][join][male symbol] = 🙅♂
> [person gesturing no][join][male symbol][emojify] = 🙅♂️
> [person gesturing no][join][male symbol][emojify][emojify] = 🙅♂️️
> [person gesturing no][join][male symbol][emojify][emojify][emojify] = 🙅♂️️️
",
1004,https://api.github.com/repos/iNPUTmice/Conversations/issues/3818,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3818/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3818/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3818/events,https://github.com/iNPUTmice/Conversations/issues/3818,651137130,MDU6SXNzdWU2NTExMzcxMzA=,3818,Feauture request: ability to register MUC nickname,"{'login': 'NyanHime', 'id': 65299514, 'node_id': 'MDQ6VXNlcjY1Mjk5NTE0', 'avatar_url': 'https://avatars1.githubusercontent.com/u/65299514?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/NyanHime', 'html_url': 'https://github.com/NyanHime', 'followers_url': 'https://api.github.com/users/NyanHime/followers', 'following_url': 'https://api.github.com/users/NyanHime/following{/other_user}', 'gists_url': 'https://api.github.com/users/NyanHime/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/NyanHime/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/NyanHime/subscriptions', 'organizations_url': 'https://api.github.com/users/NyanHime/orgs', 'repos_url': 'https://api.github.com/users/NyanHime/repos', 'events_url': 'https://api.github.com/users/NyanHime/events{/privacy}', 'received_events_url': 'https://api.github.com/users/NyanHime/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-07-05T20:10:02Z,2020-07-12T08:09:17Z,2020-07-12T08:09:17Z,NONE,,,It would be good to be able to [reserve](https://xmpp.org/extensions/xep-0045.html#register) your nickname in MUC to prevent impostering or accidentally conflicts.,
1005,https://api.github.com/repos/iNPUTmice/Conversations/issues/3817,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3817/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3817/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3817/events,https://github.com/iNPUTmice/Conversations/issues/3817,651073185,MDU6SXNzdWU2NTEwNzMxODU=,3817,[feature request] show more information about received vcard,"{'login': 'nycex', 'id': 24685286, 'node_id': 'MDQ6VXNlcjI0Njg1Mjg2', 'avatar_url': 'https://avatars2.githubusercontent.com/u/24685286?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/nycex', 'html_url': 'https://github.com/nycex', 'followers_url': 'https://api.github.com/users/nycex/followers', 'following_url': 'https://api.github.com/users/nycex/following{/other_user}', 'gists_url': 'https://api.github.com/users/nycex/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/nycex/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/nycex/subscriptions', 'organizations_url': 'https://api.github.com/users/nycex/orgs', 'repos_url': 'https://api.github.com/users/nycex/repos', 'events_url': 'https://api.github.com/users/nycex/events{/privacy}', 'received_events_url': 'https://api.github.com/users/nycex/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028699543, 'node_id': 'MDU6TGFiZWwyMDI4Njk5NTQz', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/wontfix', 'name': 'wontfix', 'color': '007ebc', 'default': True, 'description': 'Manually closed'}]",closed,False,,[],,5,2020-07-05T13:46:40Z,2020-07-30T07:09:07Z,2020-07-07T06:21:01Z,NONE,,,"#### General information
* **Version:** 2.8.7
* **Android Version:** Android 10
* **Conversations source:** F-Droid
#### Steps to reproduce
1. go into the contacts app
2. select contact
3. share via conversations
4. send the message
5. click on ""OPEN CONTACT""
#### Expected result
You see information like the name of the contact and possibly also the phone number of a contact before importing preferably even before having to click on any button.
#### Actual result
Even if you fully import the contact, you never actually see, what the name of the imported contact is.
",
1006,https://api.github.com/repos/iNPUTmice/Conversations/issues/3816,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3816/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3816/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3816/events,https://github.com/iNPUTmice/Conversations/issues/3816,650406635,MDU6SXNzdWU2NTA0MDY2MzU=,3816,Crash on presence selection,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028699543, 'node_id': 'MDU6TGFiZWwyMDI4Njk5NTQz', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/wontfix', 'name': 'wontfix', 'color': '007ebc', 'default': True, 'description': 'Manually closed'}]",closed,False,,[],,0,2020-07-03T07:37:50Z,2020-07-09T17:24:39Z,2020-07-09T17:24:39Z,OWNER,,,"```
java.lang.ArrayIndexOutOfBoundsException: length=0; index=0
at eu.siacs.conversations.ui.util.PresenceSelector.lambda$showPresenceSelectionDialog$2(PresenceSelector.java:109)
at eu.siacs.conversations.ui.util.-$$Lambda$PresenceSelector$dAZiE1jO5ge0y7FFV6g-BlfzBsY.onClick(Unknown Source:10)
at android.support.v7.app.AlertController$ButtonHandler.handleMessage(AlertController.java:167)
at android.os.Handler.dispatchMessage(Handler.java:105)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6944)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:327)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374)
```",
1007,https://api.github.com/repos/iNPUTmice/Conversations/issues/3815,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3815/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3815/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3815/events,https://github.com/iNPUTmice/Conversations/issues/3815,648984837,MDU6SXNzdWU2NDg5ODQ4Mzc=,3815,Set xml:lang according to the system language,"{'login': 'mdosch', 'id': 5103003, 'node_id': 'MDQ6VXNlcjUxMDMwMDM=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/5103003?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mdosch', 'html_url': 'https://github.com/mdosch', 'followers_url': 'https://api.github.com/users/mdosch/followers', 'following_url': 'https://api.github.com/users/mdosch/following{/other_user}', 'gists_url': 'https://api.github.com/users/mdosch/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mdosch/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mdosch/subscriptions', 'organizations_url': 'https://api.github.com/users/mdosch/orgs', 'repos_url': 'https://api.github.com/users/mdosch/repos', 'events_url': 'https://api.github.com/users/mdosch/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mdosch/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-07-01T13:31:54Z,2020-07-01T13:37:46Z,2020-07-01T13:37:46Z,CONTRIBUTOR,,,It would be nice if you set `xml:lang` according to [RFC6210 Section 4.7.4](https://tools.ietf.org/html/rfc6120#section-4.7.4) to the system language. That would enable services/bots to reply in the users native language.,
1008,https://api.github.com/repos/iNPUTmice/Conversations/issues/3814,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3814/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3814/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3814/events,https://github.com/iNPUTmice/Conversations/pull/3814,648982907,MDExOlB1bGxSZXF1ZXN0NDQyNzAwNDc4,3814,Fix typo,"{'login': 'mdosch', 'id': 5103003, 'node_id': 'MDQ6VXNlcjUxMDMwMDM=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/5103003?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mdosch', 'html_url': 'https://github.com/mdosch', 'followers_url': 'https://api.github.com/users/mdosch/followers', 'following_url': 'https://api.github.com/users/mdosch/following{/other_user}', 'gists_url': 'https://api.github.com/users/mdosch/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mdosch/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mdosch/subscriptions', 'organizations_url': 'https://api.github.com/users/mdosch/orgs', 'repos_url': 'https://api.github.com/users/mdosch/repos', 'events_url': 'https://api.github.com/users/mdosch/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mdosch/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-07-01T13:29:14Z,2020-07-01T13:36:54Z,2020-07-01T13:36:54Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/pulls/3814', 'html_url': 'https://github.com/iNPUTmice/Conversations/pull/3814', 'diff_url': 'https://github.com/iNPUTmice/Conversations/pull/3814.diff', 'patch_url': 'https://github.com/iNPUTmice/Conversations/pull/3814.patch'}",camea -> camera,
1009,https://api.github.com/repos/iNPUTmice/Conversations/issues/3813,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3813/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3813/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3813/events,https://github.com/iNPUTmice/Conversations/issues/3813,648979577,MDU6SXNzdWU2NDg5Nzk1Nzc=,3813,Support XEP-0373 OpenPGP for XMPP (OX),"{'login': 'mdosch', 'id': 5103003, 'node_id': 'MDQ6VXNlcjUxMDMwMDM=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/5103003?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mdosch', 'html_url': 'https://github.com/mdosch', 'followers_url': 'https://api.github.com/users/mdosch/followers', 'following_url': 'https://api.github.com/users/mdosch/following{/other_user}', 'gists_url': 'https://api.github.com/users/mdosch/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mdosch/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mdosch/subscriptions', 'organizations_url': 'https://api.github.com/users/mdosch/orgs', 'repos_url': 'https://api.github.com/users/mdosch/repos', 'events_url': 'https://api.github.com/users/mdosch/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mdosch/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-07-01T13:24:32Z,2020-07-05T12:52:50Z,2020-07-05T07:47:48Z,CONTRIBUTOR,,,"I would appreciate if Conversations would support [XEP-0373 OpenPGP for XMPP](https://xmpp.org/extensions/xep-0373.html) (OX).
You can find more informations about OX in the [xmpp.org wiki](https://wiki.xmpp.org/web/Tech_pages/OX). The wiki also has a [comparison of the different XMPP e2e solutions](https://wiki.xmpp.org/web/XMPP_E2E_Security).",
1010,https://api.github.com/repos/iNPUTmice/Conversations/issues/3812,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3812/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3812/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3812/events,https://github.com/iNPUTmice/Conversations/issues/3812,648291691,MDU6SXNzdWU2NDgyOTE2OTE=,3812,https://quicksy.im website provides no visible app impression,"{'login': 'testbird', 'id': 2182535, 'node_id': 'MDQ6VXNlcjIxODI1MzU=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/2182535?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/testbird', 'html_url': 'https://github.com/testbird', 'followers_url': 'https://api.github.com/users/testbird/followers', 'following_url': 'https://api.github.com/users/testbird/following{/other_user}', 'gists_url': 'https://api.github.com/users/testbird/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/testbird/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/testbird/subscriptions', 'organizations_url': 'https://api.github.com/users/testbird/orgs', 'repos_url': 'https://api.github.com/users/testbird/repos', 'events_url': 'https://api.github.com/users/testbird/events{/privacy}', 'received_events_url': 'https://api.github.com/users/testbird/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-06-30T15:52:39Z,2020-07-03T07:30:43Z,2020-07-03T07:30:43Z,NONE,,,"
For the intended audience, https://quicksy.im can seem questionably real or lead to dismissing if wanting ""to have a look"", and there is nothing to see.
Maybe some of the icon graphics or appstore screenshot clippings can be shown on the homepage, too.",
1011,https://api.github.com/repos/iNPUTmice/Conversations/issues/3811,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3811/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3811/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3811/events,https://github.com/iNPUTmice/Conversations/issues/3811,647937685,MDU6SXNzdWU2NDc5Mzc2ODU=,3811,"Permanent ""connected"" notification, with F-Droid version.","{'login': 'shh0', 'id': 2996026, 'node_id': 'MDQ6VXNlcjI5OTYwMjY=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/2996026?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/shh0', 'html_url': 'https://github.com/shh0', 'followers_url': 'https://api.github.com/users/shh0/followers', 'following_url': 'https://api.github.com/users/shh0/following{/other_user}', 'gists_url': 'https://api.github.com/users/shh0/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/shh0/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/shh0/subscriptions', 'organizations_url': 'https://api.github.com/users/shh0/orgs', 'repos_url': 'https://api.github.com/users/shh0/repos', 'events_url': 'https://api.github.com/users/shh0/events{/privacy}', 'received_events_url': 'https://api.github.com/users/shh0/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-06-30T07:30:25Z,2020-06-30T08:31:12Z,2020-06-30T07:41:06Z,NONE,,,"#### General information
* **Version:** 2.6.8.7+fcr
* **Device:** Xiaomi Mi A1
* **Android Version:** Android 9 (stock)
* **Server name:** self
* **Server software:** prosody 0.11.4
* **Installed server modules:** all
* **Conversations source:** F-Droid
Hello,
I'm getting this permanent notification about being connected, though I'm using the F-Droid version of Conversations.
Here, you write that this wouldn't be the case: https://github.com/iNPUTmice/Conversations#im-getting-this-annoying-permanent-notification
Is there any checkbox to switch this notification off that I missed? Thanks and cheers…",
1012,https://api.github.com/repos/iNPUTmice/Conversations/issues/3810,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3810/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3810/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3810/events,https://github.com/iNPUTmice/Conversations/issues/3810,646981822,MDU6SXNzdWU2NDY5ODE4MjI=,3810,Answer a call with bluetooth headset,"{'login': 'tyler71', 'id': 4926565, 'node_id': 'MDQ6VXNlcjQ5MjY1NjU=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/4926565?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/tyler71', 'html_url': 'https://github.com/tyler71', 'followers_url': 'https://api.github.com/users/tyler71/followers', 'following_url': 'https://api.github.com/users/tyler71/following{/other_user}', 'gists_url': 'https://api.github.com/users/tyler71/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/tyler71/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/tyler71/subscriptions', 'organizations_url': 'https://api.github.com/users/tyler71/orgs', 'repos_url': 'https://api.github.com/users/tyler71/repos', 'events_url': 'https://api.github.com/users/tyler71/events{/privacy}', 'received_events_url': 'https://api.github.com/users/tyler71/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028699543, 'node_id': 'MDU6TGFiZWwyMDI4Njk5NTQz', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/wontfix', 'name': 'wontfix', 'color': '007ebc', 'default': True, 'description': 'Manually closed'}]",closed,False,,[],,1,2020-06-28T18:39:34Z,2020-06-29T07:06:23Z,2020-06-29T07:06:16Z,NONE,,,"#### General information
* **Version:** 2.8.8+pcr
* **Device:** Nokia 7.1
* **Android Version:** Android 10 (stock)
#### Steps to reproduce
1. Get a call
2. Press the button to answer a call on the headset
#### Expected result
Call should then be answered.
During call, pressing it again should hang up.
#### Actual result
Nothing happens
#### Debug output
As far as I can tell, conversations does not react to the input
````
06-28 11:31:33.883 8795 18459 D conversations: user1@domain.tld: delivered message to JingleRtpConnection
06-28 11:31:33.885 8795 18459 D conversations: user1@domain.tld: received session proposal from user2@domain.tld/Conversations.sD-P for [audio]
06-28 11:31:33.885 8795 18459 D conversations: user1@domain.tld: transitioned into PROPOSED
06-28 11:31:33.905 8795 18459 D conversations: ForegroundService: on
06-28 11:31:33.905 8795 18459 D conversations: user1@domain.tld: received call from user2@domain.tld/Conversations.sD-P. start ringing
06-28 11:31:34.254 8795 8795 D conversations: app switched into foreground
06-28 11:31:34.348 8795 8795 D conversations: app switched into background
06-28 11:31:34.552 8795 8795 D conversations: app switched into foreground
06-28 11:31:54.751 8795 8912 D conversations: deleted file /storage/emulated/0/Android/data/com.spotify.music/files/spotifycache/mercury.db-wal internal=false, database hits=0
06-28 11:32:03.906 8795 32068 D conversations: user1@domain.tld: timeout reached for ringing
06-28 11:32:03.906 8795 32068 D conversations: user1@domain.tld: transitioned into REJECTED
06-28 11:32:03.906 8795 32068 D conversations: onJingleRtpConnectionUpdate(ENDED)
06-28 11:32:03.920 8795 32068 D conversations: ForegroundService: on
06-28 11:32:03.943 8795 8795 D conversations: app switched into background
06-28 11:32:04.539 8795 8795 D conversations: toggle forced foreground service after receiving event (action=ping)
06-28 11:32:04.543 8795 8795 D conversations: ForegroundService: on
````
",
1013,https://api.github.com/repos/iNPUTmice/Conversations/issues/3809,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3809/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3809/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3809/events,https://github.com/iNPUTmice/Conversations/issues/3809,646873855,MDU6SXNzdWU2NDY4NzM4NTU=,3809,Provide (somewhat) functioning progress bar on backup restore,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'id': 76683388, 'node_id': 'MDU6TGFiZWw3NjY4MzM4OA==', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/feature', 'name': 'feature', 'color': '128a00', 'default': False, 'description': 'Accepted feature request'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/8', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/8', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/8/labels', 'id': 5582737, 'node_id': 'MDk6TWlsZXN0b25lNTU4MjczNw==', 'number': 8, 'title': '2.8.9', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 9, 'state': 'closed', 'created_at': '2020-06-25T14:33:17Z', 'updated_at': '2020-07-26T11:34:23Z', 'due_on': None, 'closed_at': '2020-07-26T11:34:23Z'}",0,2020-06-28T08:47:47Z,2020-07-09T16:53:12Z,2020-07-09T16:53:12Z,OWNER,,,Currently the notification shown during backup restore displays an indeterminate progress bar. However with Guavas CountingInputStream and a known file size we can at least somewhat estimate how far we made it through the restore and show that instead.,
1014,https://api.github.com/repos/iNPUTmice/Conversations/issues/3808,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3808/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3808/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3808/events,https://github.com/iNPUTmice/Conversations/issues/3808,645507990,MDU6SXNzdWU2NDU1MDc5OTA=,3808,Contact access permission is not asked after a restore ,"{'login': 'neox95', 'id': 45756534, 'node_id': 'MDQ6VXNlcjQ1NzU2NTM0', 'avatar_url': 'https://avatars1.githubusercontent.com/u/45756534?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/neox95', 'html_url': 'https://github.com/neox95', 'followers_url': 'https://api.github.com/users/neox95/followers', 'following_url': 'https://api.github.com/users/neox95/following{/other_user}', 'gists_url': 'https://api.github.com/users/neox95/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/neox95/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/neox95/subscriptions', 'organizations_url': 'https://api.github.com/users/neox95/orgs', 'repos_url': 'https://api.github.com/users/neox95/repos', 'events_url': 'https://api.github.com/users/neox95/events{/privacy}', 'received_events_url': 'https://api.github.com/users/neox95/received_events', 'type': 'User', 'site_admin': False}","[{'id': 76683388, 'node_id': 'MDU6TGFiZWw3NjY4MzM4OA==', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/feature', 'name': 'feature', 'color': '128a00', 'default': False, 'description': 'Accepted feature request'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/8', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/8', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/8/labels', 'id': 5582737, 'node_id': 'MDk6TWlsZXN0b25lNTU4MjczNw==', 'number': 8, 'title': '2.8.9', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 9, 'state': 'closed', 'created_at': '2020-06-25T14:33:17Z', 'updated_at': '2020-07-26T11:34:23Z', 'due_on': None, 'closed_at': '2020-07-26T11:34:23Z'}",0,2020-06-25T12:07:47Z,2020-07-09T18:03:15Z,2020-07-09T18:03:14Z,NONE,,,"#### General information
* **Version:** 2.6.0
* **Device:** Asus X00TD
* **Android Version:** Android 9 (LineageOS)
* **Server name:** os-k.eu
* **Server software:** latest ejabberd
* **Installed server modules:** Stream Managment, CSI, MAM
* **Conversations source:** F-Droid
#### Steps to reproduce
1. Install Conversations
2. Restore a backup of an existing account (with chats and rooms that already exists)
3. Try to add someone in your Android address book by taping on his avatar, and taping again then answer ""yes"" to the ""Would you like to add to your address book ?""
#### Expected result
Conversations should ask for contact access permission and then add the contact to the address book, otherwise throw an error
#### Actual result
Conversations actually open the contact app, let me create/choose a contact, but then does nothing
#### Debug output
--------- beginning of main
--------- beginning of system
06-25 14:05:23.715 28503 28503 D conversations: action: null
06-25 14:05:23.742 28503 28503 D conversations: ConversationsOverviewFragment.onStart()
06-25 14:05:23.743 28503 28503 D conversations: ConversationsOverviewFragment.onResume()
06-25 14:05:23.823 28503 28503 D conversations: ForegroundService: on
06-25 14:05:23.889 28503 28503 D conversations: initializing database...
06-25 14:05:23.889 28503 28503 D conversations: restoring accounts...
06-25 14:05:23.929 28503 28503 D conversations: restoring conversations...
06-25 14:05:23.930 28503 28503 D conversations: finished restoring conversations in 1ms
06-25 14:05:23.935 28503 28532 D conversations: restoring roster...
06-25 14:05:23.941 28503 28503 D conversations: ForegroundService: on
06-25 14:05:23.941 28503 28503 D conversations: update unread count to 0
06-25 14:05:23.945 28503 28532 D conversations: restoring messages...
06-25 14:05:23.953 28503 28533 D conversations: start merging phone contacts with roster
06-25 14:05:23.953 28503 28533 D conversations: finished merging phone contacts
06-25 14:05:23.955 28503 28532 D conversations: finished restoring messages in 9ms
06-25 14:05:23.959 28503 28503 D conversations: ForegroundService: off
06-25 14:05:23.972 28503 28534 D conversations: updated dynamic shortcuts
06-25 14:05:24.116 28503 28503 D conversations: resetting all attempt counts
06-25 14:05:24.119 28503 28503 D conversations: app switched into foreground
06-25 14:05:24.134 28503 28503 D conversations: ConversationsOverviewFragment.onPause()
06-25 14:05:24.265 28503 28503 D conversations: app switched into background
06-25 14:05:28.565 28503 28503 D conversations: restarting file observer
06-25 14:05:28.632 28503 28574 D conversations: directory not found: /storage/emulated/0/Quicksy/Backup
06-25 14:05:28.704 28503 28569 D conversations: found 0 changed files on start up. total=0. (2ms)
06-25 14:05:35.823 28503 28503 D conversations: attempting to import file:///storage/emulated/0/Conversations/Backup/adrien.bourmault%40dismail.de.ceb
06-25 14:05:38.750 28503 28574 D conversations: importing backup from file:///storage/emulated/0/Conversations/Backup/adrien.bourmault%40dismail.de.ceb
06-25 14:05:38.751 28503 28574 D conversations: BackupFileHeader{app='Conversations', jid=adrien.bourmault@dismail.de, timestamp=1593085880482, iv=2c32662587115cc471815f05, salt=9c6e364072ff41053339858a2f793314}
06-25 14:05:38.766 28503 28574 D conversations: restored 3 messages
06-25 14:05:38.769 28503 28570 D conversations: ignored file event with NULL filename (event=32768)
06-25 14:05:38.777 28503 28570 D conversations: ignored file event with NULL filename (event=32768)
06-25 14:05:38.777 28503 28570 D conversations: ignored file event with NULL filename (event=32768)
06-25 14:05:38.778 28503 28570 D conversations: ignored file event with NULL filename (event=32768)
06-25 14:05:38.778 28503 28570 D conversations: ignored file event with NULL filename (event=32768)
06-25 14:05:38.778 28503 28570 D conversations: ignored file event with NULL filename (event=32768)
06-25 14:05:38.778 28503 28570 D conversations: ignored file event with NULL filename (event=32768)
06-25 14:05:38.780 28503 28570 D conversations: ignored file event with NULL filename (event=32768)
06-25 14:05:38.859 28503 28503 D conversations: action: null
06-25 14:05:38.871 28503 28503 D conversations: ConversationsOverviewFragment.onStart()
06-25 14:05:38.872 28503 28503 D conversations: ConversationsOverviewFragment.onResume()
06-25 14:05:38.909 28503 28503 D conversations: ForegroundService: on
06-25 14:05:38.915 28503 28503 D conversations: initializing database...
06-25 14:05:38.915 28503 28503 D conversations: restoring accounts...
06-25 14:05:38.929 28503 28503 D conversations: restoring conversations...
06-25 14:05:38.930 28503 28503 D conversations: finished restoring conversations in 2ms
06-25 14:05:38.931 28503 28628 D conversations: restoring roster...
06-25 14:05:38.931 28503 28503 D conversations: starting file observer
06-25 14:05:38.936 28503 28503 D conversations: ForegroundService: on
06-25 14:05:38.936 28503 28503 D conversations: update unread count to 0
06-25 14:05:38.946 28503 28503 D conversations: ForegroundService: off
06-25 14:05:38.947 28503 28628 D conversations: restoring messages...
06-25 14:05:38.951 28503 28630 D conversations: start merging phone contacts with roster
06-25 14:05:38.959 28503 28630 D conversations: finished merging phone contacts
06-25 14:05:38.963 28503 28628 D conversations: finished restoring messages in 16ms
06-25 14:05:38.978 28503 28503 D conversations: resetting all attempt counts
06-25 14:05:38.980 28503 28503 D conversations: app switched into foreground
06-25 14:05:38.986 28503 28631 D conversations: updated dynamic shortcuts
06-25 14:05:39.082 28503 28629 D conversations: found 0 changed files on start up. total=0. (1ms)
06-25 14:05:41.810 28503 28503 D conversations: ConversationFragment.onAttach()
06-25 14:05:41.842 28503 28503 D conversations: reInit(hasExtras=true)
06-25 14:05:41.843 28503 28503 D conversations: trimming conversation
06-25 14:05:41.854 28503 28503 D conversations: scrolledToBottomAndNoPending=true
06-25 14:05:41.854 28503 28503 D conversations: jump to first unread message
06-25 14:05:41.854 28503 28503 D conversations: ConversationsOverviewFragment.onPause()
06-25 14:05:43.651 28503 28640 D conversations: adrien.bourmault@dismail.de: connecting
06-25 14:05:43.655 28503 28503 D conversations: ForegroundService: on
06-25 14:05:46.918 28503 28640 D conversations: Resolver: [Result{ip='116.203.3.253', hostame='xmpp.dismail.de', port=5222, directTls=false, authenticated=false, priority=10}, Result{ip='2a01:4f8:1c0c:80ac::5:1', hostame='xmpp.dismail.de', port=5222, directTls=false, authenticated=false, priority=10}, Result{ip='116.203.3.253', hostame='xmpps.dismail.de', port=443, directTls=true, authenticated=false, priority=15}]
06-25 14:05:46.922 28503 28640 D conversations: verified hostname null
06-25 14:05:46.923 28503 28640 D conversations: adrien.bourmault@dismail.de: using values from resolver xmpp.dismail.de/116.203.3.253:5222 tls: false
06-25 14:05:47.375 28503 28640 D conversations: adrien.bourmault@dismail.de: TLS connection established
06-25 14:05:47.423 28503 28640 D conversations: adrien.bourmault@dismail.de: protocol=TLSv1.2 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
06-25 14:05:47.439 28503 28640 D conversations: adrien.bourmault@dismail.de/Conversations.6QQ2: Authenticating with SCRAM-SHA-1
06-25 14:05:47.703 28503 28640 D conversations: adrien.bourmault@dismail.de: logged in
06-25 14:05:47.823 28503 28640 D conversations: adrien.bourmault@dismail.de: not counting stanza(IqPacket). Not in smacks session.
06-25 14:05:47.826 28503 28640 D conversations: adrien.bourmault@dismail.de: starting service discovery
06-25 14:05:47.873 28503 28640 D conversations: adrien.bourmault@dismail.de: stream management(3) enabled (resumable)
06-25 14:05:47.981 28503 28640 D conversations: adrien.bourmault@dismail.de: Requesting block list
06-25 14:05:48.071 28503 28640 D conversations: Received blocklist update from server
06-25 14:05:48.270 28503 28640 D conversations: AxolotlService (adrien.bourmault@dismail.de): Bundle 168572247 in PEP was current
06-25 14:05:48.270 28503 28640 D conversations: AxolotlService (adrien.bourmault@dismail.de): Announcing device 168572247
06-25 14:05:48.271 28503 28640 D conversations: adrien.bourmault@dismail.de: successfully enabled carbons
06-25 14:05:48.282 28503 28640 D conversations: adrien.bourmault@dismail.de: online with resource Conversations.6QQ2
06-25 14:05:48.282 28503 28640 D conversations: adrien.bourmault@dismail.de: fetching roster
06-25 14:05:48.286 28503 28640 D conversations: adrien.bourmault@dismail.de: running mam query with=al1go@os-k.eu, start=2020-06-17T13:42:55.110Z, end=2020-06-20T12:05:47.988Z, order=REVERSE, catchup=false, ns=urn:xmpp:mam:2
06-25 14:05:48.287 28503 28640 D conversations: adrien.bourmault@dismail.de: running mam query with=al1go@os-k.eu, start=2020-06-20T12:05:47.988Z, end=2020-06-20T12:05:47.837Z, order=NORMAL, catchup=true, ns=urn:xmpp:mam:2
06-25 14:05:48.287 28503 28640 D conversations: adrien.bourmault@dismail.de: running mam query with=neox@os-k.eu, end=2020-06-20T12:05:47.837Z, order=REVERSE, catchup=false, ns=urn:xmpp:mam:2
06-25 14:05:48.288 28503 28640 D conversations: adrien.bourmault@dismail.de: running mam query with=*, start=2020-06-20T12:05:47.837Z, order=NORMAL, catchup=true, ns=urn:xmpp:mam:2
06-25 14:05:48.288 28503 28640 D conversations: adrien.bourmault@dismail.de sending csi//active
06-25 14:05:48.410 28503 28640 D conversations: adrien.bourmault@dismail.de: retrieved own device list: [168572247]
06-25 14:05:48.727 28503 28640 D conversations: adrien.bourmault@dismail.de: gained mutual presence subscription with al1go@os-k.eu
06-25 14:05:48.729 28503 28640 D conversations: adrien.bourmault@dismail.de: gained mutual presence subscription with neox@os-k.eu
06-25 14:05:48.735 28503 28640 D conversations: adrien.bourmault@dismail.de: successfully purged offline messages
06-25 14:05:48.742 28503 28631 D conversations: skipping shortcut update
06-25 14:05:48.743 28503 28650 D conversations: adrien.bourmault@dismail.de: persisted roster in 7ms
06-25 14:05:48.931 28503 28640 D conversations: adrien.bourmault@dismail.de: finished mam after 0(0) messages. messages left=false count=0
06-25 14:05:48.932 28503 28640 D conversations: adrien.bourmault@dismail.de: found 0 pending receipt requests
06-25 14:05:49.188 28503 28640 D conversations: adrien.bourmault@dismail.de: making disco request for Wox05fElZ+gPYdJrEiHVC4oPlUw= to neox@os-k.eu/dino.a14d834
06-25 14:05:49.193 28503 28640 D conversations: adrien.bourmault@dismail.de: finished mam after 0(0) messages. messages left=true count=0
06-25 14:05:49.194 28503 28640 D conversations: adrien.bourmault@dismail.de: found 0 pending receipt requests
06-25 14:05:49.195 28503 28640 D conversations: adrien.bourmault@dismail.de: finished mam after 0(0) messages. messages left=false count=0
06-25 14:05:49.195 28503 28640 D conversations: adrien.bourmault@dismail.de: found 0 pending receipt requests
06-25 14:05:49.201 28503 28640 D conversations: AxolotlService (adrien.bourmault@dismail.de): Received PEP device list [379681041, 673708732] update from neox@os-k.eu, processing...
06-25 14:05:49.209 28503 28640 D conversations: adrien.bourmault@dismail.de: finished mam after 0(0) messages. messages left=true count=0
06-25 14:05:49.209 28503 28640 D conversations: adrien.bourmault@dismail.de: found 0 pending receipt requests
06-25 14:05:49.217 28503 28640 D conversations: AxolotlService (adrien.bourmault@dismail.de): Received PEP device list [168572247] update from adrien.bourmault@dismail.de, processing...
06-25 14:05:49.218 28503 28640 D conversations: adrien.bourmault@dismail.de: ignoring duplicate own device id list
06-25 14:05:49.225 28503 28640 D conversations: adrien.bourmault@dismail.de: 0 bookmarks have been removed
06-25 14:05:49.226 28503 28640 D conversations: adrien.bourmault@dismail.de: processing bookmark PEP event
06-25 14:05:49.340 28503 28640 D conversations: created avatar directory
06-25 14:05:49.341 28503 28640 D conversations: adrien.bourmault@dismail.de: successfully fetched vCard avatar for neox@os-k.eu omittedPep=true
06-25 14:05:49.363 28503 28650 D conversations: adrien.bourmault@dismail.de: persisted roster in 21ms
06-25 14:05:55.978 28503 28503 D conversations: AxolotlService (adrien.bourmault@dismail.de): Finding devices without session for neox@os-k.eu
06-25 14:05:55.981 28503 28503 D conversations: AxolotlService (adrien.bourmault@dismail.de): Found device neox@os-k.eu:379681041
06-25 14:05:55.982 28503 28503 D conversations: AxolotlService (adrien.bourmault@dismail.de): Found device neox@os-k.eu:673708732
06-25 14:05:55.983 28503 28503 D conversations: adrien.bourmault@dismail.de: createSessionsIfNeeded() - jids with empty device list: []
06-25 14:05:55.983 28503 28503 I conversations: AxolotlService (adrien.bourmault@dismail.de): Creating axolotl sessions if needed...
06-25 14:05:55.983 28503 28503 D conversations: AxolotlService (adrien.bourmault@dismail.de): Finding devices without session for neox@os-k.eu
06-25 14:05:55.983 28503 28503 D conversations: AxolotlService (adrien.bourmault@dismail.de): Found device neox@os-k.eu:379681041
06-25 14:05:55.984 28503 28503 D conversations: AxolotlService (adrien.bourmault@dismail.de): Found device neox@os-k.eu:673708732
06-25 14:05:55.984 28503 28503 D conversations: AxolotlService (adrien.bourmault@dismail.de): Processing device: neox@os-k.eu:673708732
06-25 14:05:55.984 28503 28503 I conversations: AxolotlService (adrien.bourmault@dismail.de): Building new session for neox@os-k.eu:673708732
06-25 14:05:55.985 28503 28503 D conversations: AxolotlService (adrien.bourmault@dismail.de): Processing device: neox@os-k.eu:379681041
06-25 14:05:55.985 28503 28503 I conversations: AxolotlService (adrien.bourmault@dismail.de): Building new session for neox@os-k.eu:379681041
06-25 14:05:56.111 28503 28640 D conversations: AxolotlService (adrien.bourmault@dismail.de): Received preKey IQ packet, processing...
06-25 14:05:56.197 28503 28640 D conversations: adrien.bourmault@dismail.de: blindly trusted 0575f75b21cb10d7799471e6fd3337b3fadba02b9c1ca6dce5618455ba0a9d120e of neox@os-k.eu
06-25 14:05:56.201 28503 28640 D conversations: AxolotlService (adrien.bourmault@dismail.de): Received preKey IQ packet, processing...
06-25 14:05:56.255 28503 28640 D conversations: adrien.bourmault@dismail.de: blindly trusted 05c7d53cbe8748efd2e2686b01b5bef7a9fa825112c284b5340c47c133ef8bc24b of neox@os-k.eu
06-25 14:05:56.297 28503 28503 D conversations: AxolotlService (adrien.bourmault@dismail.de): Finding devices without session for neox@os-k.eu
06-25 14:05:56.298 28503 28503 D conversations: AxolotlService (adrien.bourmault@dismail.de): Cache miss: fbda05a6-1b74-4fae-b5c6-4343c37ec6f1
06-25 14:05:56.312 28503 28681 D conversations: AxolotlService (adrien.bourmault@dismail.de): Generated message, caching: fbda05a6-1b74-4fae-b5c6-4343c37ec6f1
06-25 14:05:56.312 28503 28681 D conversations: AxolotlService (adrien.bourmault@dismail.de): Cache hit: fbda05a6-1b74-4fae-b5c6-4343c37ec6f1
06-25 14:06:06.918 28503 28503 D conversations: desired=172.8 real=180
06-25 14:06:06.918 28503 28503 D conversations: preliminary count=6
06-25 14:06:06.945 28503 28503 D conversations: desired=172.8 real=174
06-25 14:06:06.945 28503 28503 D conversations: final count 6
06-25 14:06:10.363 28503 28503 D conversations: app switched into background
06-25 14:06:16.475 28503 28503 D conversations: app switched into foreground
06-25 14:06:17.025 28503 28503 D conversations: app switched into background
06-25 14:06:18.438 28503 28503 D conversations: app switched into foreground
06-25 14:06:26.851 28503 28503 D conversations: reInit(hasExtras=false)
06-25 14:06:26.855 28503 28503 D conversations: scrolledToBottomAndNoPending=true
06-25 14:06:26.855 28503 28503 D conversations: jump to first unread message
06-25 14:06:26.874 28503 28503 D conversations: load more messages for neox prior to 2020-06-25T12:05:56.298Z
06-25 14:06:26.879 28503 28503 D conversations: adrien.bourmault@dismail.de send ping (action=ui,lowTimeout=false)
06-25 14:06:26.881 28503 28503 D conversations: ConversationFragment.onBackendConnected()
06-25 14:06:26.898 28503 28503 D conversations: toggle forced foreground service after receiving event (action=eu.siacs.conversations.POST_CONNECTIVITY_CHANGE)
06-25 14:06:26.902 28503 28503 D conversations: ForegroundService: on
06-25 14:06:31.001 28503 28503 D conversations: app switched into background
06-25 14:06:32.226 28503 28503 D conversations: ignoring onTaskRemoved because foreground service is activated
",
1015,https://api.github.com/repos/iNPUTmice/Conversations/issues/3807,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3807/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3807/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3807/events,https://github.com/iNPUTmice/Conversations/issues/3807,645439743,MDU6SXNzdWU2NDU0Mzk3NDM=,3807,"Video calls to IOS: monal, siskin IM not working","{'login': 'dfszb', 'id': 5023523, 'node_id': 'MDQ6VXNlcjUwMjM1MjM=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/5023523?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dfszb', 'html_url': 'https://github.com/dfszb', 'followers_url': 'https://api.github.com/users/dfszb/followers', 'following_url': 'https://api.github.com/users/dfszb/following{/other_user}', 'gists_url': 'https://api.github.com/users/dfszb/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dfszb/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dfszb/subscriptions', 'organizations_url': 'https://api.github.com/users/dfszb/orgs', 'repos_url': 'https://api.github.com/users/dfszb/repos', 'events_url': 'https://api.github.com/users/dfszb/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dfszb/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028699543, 'node_id': 'MDU6TGFiZWwyMDI4Njk5NTQz', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/wontfix', 'name': 'wontfix', 'color': '007ebc', 'default': True, 'description': 'Manually closed'}]",closed,False,,[],,1,2020-06-25T10:12:42Z,2020-06-25T14:33:39Z,2020-06-25T10:58:52Z,NONE,,,"#### General information
* **Version:** 2.8.6
* **Device:** Oneplus 5t
* **Android Version:** Android 9 (stock)
* **Server name:** conversations.im
* **Conversations source:**F-Droid
#### Steps to reproduce
1. Install the software on Iphone (software is either monal or siskin im)
2. Video Call from contact from Iphone or vice versa.
#### Expected result
Connection is made and call works
#### Actual result
Conversations and other side stays in 'connecting'.
Not including more info as this is probably expected.",
1016,https://api.github.com/repos/iNPUTmice/Conversations/issues/3806,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3806/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3806/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3806/events,https://github.com/iNPUTmice/Conversations/issues/3806,643657611,MDU6SXNzdWU2NDM2NTc2MTE=,3806,The standard keyboard shortcut for correcting messages doesn't work,"{'login': 'marmistrz', 'id': 2914938, 'node_id': 'MDQ6VXNlcjI5MTQ5Mzg=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2914938?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/marmistrz', 'html_url': 'https://github.com/marmistrz', 'followers_url': 'https://api.github.com/users/marmistrz/followers', 'following_url': 'https://api.github.com/users/marmistrz/following{/other_user}', 'gists_url': 'https://api.github.com/users/marmistrz/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/marmistrz/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/marmistrz/subscriptions', 'organizations_url': 'https://api.github.com/users/marmistrz/orgs', 'repos_url': 'https://api.github.com/users/marmistrz/repos', 'events_url': 'https://api.github.com/users/marmistrz/events{/privacy}', 'received_events_url': 'https://api.github.com/users/marmistrz/received_events', 'type': 'User', 'site_admin': False}","[{'id': 76683388, 'node_id': 'MDU6TGFiZWw3NjY4MzM4OA==', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/feature', 'name': 'feature', 'color': '128a00', 'default': False, 'description': 'Accepted feature request'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/8', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/8', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/8/labels', 'id': 5582737, 'node_id': 'MDk6TWlsZXN0b25lNTU4MjczNw==', 'number': 8, 'title': '2.8.9', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 9, 'state': 'closed', 'created_at': '2020-06-25T14:33:17Z', 'updated_at': '2020-07-26T11:34:23Z', 'due_on': None, 'closed_at': '2020-07-26T11:34:23Z'}",8,2020-06-23T08:56:01Z,2020-08-11T08:08:13Z,2020-07-12T07:45:39Z,CONTRIBUTOR,,,"#### General information
* **Version:** 2.8.6
* **Device:** F(x)tec Pro1
* **Android Version:** LineageOS 16.0
* **Conversations source:** F-Droid
#### Steps to reproduce
1. Type a message and send it
2. Press ctrl+up
#### Expected result
App should enter last message correction (this is a fairly standard shortcut, supported by Gajim and Rocket.Chat)
#### Actual result
Nothing happens
#### Debug output
Probably N/A, but let me know if this would actually help with anything, I'll get a logcat.
",
1017,https://api.github.com/repos/iNPUTmice/Conversations/issues/3805,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3805/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3805/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3805/events,https://github.com/iNPUTmice/Conversations/issues/3805,643561773,MDU6SXNzdWU2NDM1NjE3NzM=,3805,unable to find STARTTLS for registration process,"{'login': 'aviral0809', 'id': 67307740, 'node_id': 'MDQ6VXNlcjY3MzA3NzQw', 'avatar_url': 'https://avatars1.githubusercontent.com/u/67307740?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/aviral0809', 'html_url': 'https://github.com/aviral0809', 'followers_url': 'https://api.github.com/users/aviral0809/followers', 'following_url': 'https://api.github.com/users/aviral0809/following{/other_user}', 'gists_url': 'https://api.github.com/users/aviral0809/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/aviral0809/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/aviral0809/subscriptions', 'organizations_url': 'https://api.github.com/users/aviral0809/orgs', 'repos_url': 'https://api.github.com/users/aviral0809/repos', 'events_url': 'https://api.github.com/users/aviral0809/events{/privacy}', 'received_events_url': 'https://api.github.com/users/aviral0809/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-06-23T06:12:17Z,2020-06-23T06:25:27Z,2020-06-23T06:25:27Z,NONE,,,"While connecting to my openfire server from conversations app I'm getting following response:
**unable to find STARTTLS for registration process** in my logs.
In the openfire server configuration and I'm using ip instead of domain name and my openfire server is behind the load balancer.
Rarely its getting connected on server most of the time I'm getting server not found message on my mobile application. ",
1018,https://api.github.com/repos/iNPUTmice/Conversations/issues/3804,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3804/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3804/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3804/events,https://github.com/iNPUTmice/Conversations/issues/3804,642620373,MDU6SXNzdWU2NDI2MjAzNzM=,3804,Communicate device language,"{'login': 'Zash', 'id': 197474, 'node_id': 'MDQ6VXNlcjE5NzQ3NA==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/197474?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Zash', 'html_url': 'https://github.com/Zash', 'followers_url': 'https://api.github.com/users/Zash/followers', 'following_url': 'https://api.github.com/users/Zash/following{/other_user}', 'gists_url': 'https://api.github.com/users/Zash/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Zash/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Zash/subscriptions', 'organizations_url': 'https://api.github.com/users/Zash/orgs', 'repos_url': 'https://api.github.com/users/Zash/repos', 'events_url': 'https://api.github.com/users/Zash/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Zash/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,0,2020-06-21T18:54:55Z,2020-06-21T18:54:55Z,,NONE,,,"#### General information
* **Version:** 2.8.5+fcr
* **Device:** Jolla 1
* **Android Version:** Android 4.2.2 (uncertain)
* **Server name:** self hosted
* **Server software:** [Prosody trunk](https://prosody.im/nightly/trunk/build1299/), especially after [this commit](https://hg.prosody.im/trunk/rev/1266a63ba567)
* **Installed server modules:** Carbons.
* **Conversations source:** F-Droid
#### Steps to reproduce
1. Have Conversations in non-default/English locale.
2. Send a message to someone with an XML console open.
3. Observe XML, note the `@xml:lang` attribute.
#### Expected result
```xml
```
Or whatever language / locale the device or Conversations is set to.
#### Actual result
```xml
```
#### Rationale
Allows translation of responses by automated remote entities, e.g. in error messages etc.
**Note** that this has privacy implications.",
1019,https://api.github.com/repos/iNPUTmice/Conversations/issues/3803,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3803/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3803/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3803/events,https://github.com/iNPUTmice/Conversations/issues/3803,642618809,MDU6SXNzdWU2NDI2MTg4MDk=,3803,Carbon'd errors not shown,"{'login': 'Zash', 'id': 197474, 'node_id': 'MDQ6VXNlcjE5NzQ3NA==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/197474?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Zash', 'html_url': 'https://github.com/Zash', 'followers_url': 'https://api.github.com/users/Zash/followers', 'following_url': 'https://api.github.com/users/Zash/following{/other_user}', 'gists_url': 'https://api.github.com/users/Zash/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Zash/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Zash/subscriptions', 'organizations_url': 'https://api.github.com/users/Zash/orgs', 'repos_url': 'https://api.github.com/users/Zash/repos', 'events_url': 'https://api.github.com/users/Zash/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Zash/received_events', 'type': 'User', 'site_admin': False}","[{'id': 76683388, 'node_id': 'MDU6TGFiZWw3NjY4MzM4OA==', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/feature', 'name': 'feature', 'color': '128a00', 'default': False, 'description': 'Accepted feature request'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/10', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/10', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/10/labels', 'id': 5715881, 'node_id': 'MDk6TWlsZXN0b25lNTcxNTg4MQ==', 'number': 10, 'title': '2.8.11', 'description': '', 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 7, 'state': 'open', 'created_at': '2020-07-30T15:09:08Z', 'updated_at': '2020-09-01T12:04:49Z', 'due_on': None, 'closed_at': None}",0,2020-06-21T18:45:28Z,2020-08-31T12:39:00Z,2020-08-31T12:39:00Z,NONE,,,"#### General information
* **Version:** 2.8.5+fcr
* **Device:** Jolla 1
* **Android Version:** Android 4.2.2 (uncertain)
* **Server name:** self hosted
* **Server software:** [Prosody trunk](https://prosody.im/nightly/trunk/build1299/)
* **Installed server modules:** Lots. Primarily of relevance: Carbons, MAM
* **Conversations source:** F-Droid
**Note:** Inclusion error messages in Carbons processing is [relatively recent](https://hg.prosody.im/trunk/rev/f7e8d299513f).
This tries to follow the more recent rules of [XEP-0280](https://xmpp.org/extensions/xep-0280.html#recommended-rules)
> it is of type ""error"" and it was sent in response to a `` that was eligible for carbons delivery
> ...
> - The wrapping message SHOULD maintain the same 'type' attribute value
#### Steps to reproduce
1. From a different device, send a message to a JID that returns an error (e.g. one of the fast-failing [badxmpp ones](https://badxmpp.eu/))
2. Observe chat in Conversations
#### Expected result
Message sent by other device is shown with a ""Delivery failed"" (or similar) error, like if the message was sent from Conversations
#### Actual result
Message is shown without indication of failure.
#### Debug output
````
D/conversations(14034): (account name): activating grace period till 20:37:20
D/conversations(14034): (account name): activating grace period till 20:37:21
D/conversations(14034): (account name): activating grace period till 20:37:21
D/conversations(14034): (account name): activating grace period till 20:37:21
````
Carbons payload looks like:
```xml
Server-to-server connection failed: connection refused
```
",
1020,https://api.github.com/repos/iNPUTmice/Conversations/issues/3802,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3802/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3802/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3802/events,https://github.com/iNPUTmice/Conversations/issues/3802,642585943,MDU6SXNzdWU2NDI1ODU5NDM=,3802,Unexpected call retracting on Samsung phones with Android <= 6,"{'login': 'anyuta1166', 'id': 726409, 'node_id': 'MDQ6VXNlcjcyNjQwOQ==', 'avatar_url': 'https://avatars1.githubusercontent.com/u/726409?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/anyuta1166', 'html_url': 'https://github.com/anyuta1166', 'followers_url': 'https://api.github.com/users/anyuta1166/followers', 'following_url': 'https://api.github.com/users/anyuta1166/following{/other_user}', 'gists_url': 'https://api.github.com/users/anyuta1166/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/anyuta1166/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/anyuta1166/subscriptions', 'organizations_url': 'https://api.github.com/users/anyuta1166/orgs', 'repos_url': 'https://api.github.com/users/anyuta1166/repos', 'events_url': 'https://api.github.com/users/anyuta1166/events{/privacy}', 'received_events_url': 'https://api.github.com/users/anyuta1166/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028640246, 'node_id': 'MDU6TGFiZWwyMDI4NjQwMjQ2', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/bug', 'name': 'bug', 'color': 'c95100', 'default': True, 'description': 'Accepted, reproducible bug'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/7', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/7', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/7/labels', 'id': 5545671, 'node_id': 'MDk6TWlsZXN0b25lNTU0NTY3MQ==', 'number': 7, 'title': '2.8.8', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 8, 'state': 'closed', 'created_at': '2020-06-16T07:44:14Z', 'updated_at': '2020-07-08T06:33:48Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:48Z'}",1,2020-06-21T15:36:02Z,2020-06-22T16:07:38Z,2020-06-22T16:07:38Z,CONTRIBUTOR,,,"#### General information
* **Version:** 2.8.7
* **Device:** Samsung J5 2016
* **Android Version:** Android 6 (stock)
* **Server name:** self hosted
* **Server software:** ejabberd 20.04
* **Conversations source:** self build (latest HEAD)
#### Steps to reproduce
1. Make a call to a contact
2. Move the phone to the ear before the connection established
#### Expected result
Call continues.
#### Actual result
Call is retracted.
I've encountered another issue with older Samsung phones. It is not as critical as screen blinking but it affects user experience. My friend was unable to call me until I figured this out and asked him not to move the phone to the ear before the connection is established.
This happens because onStop() calls retractSessionProposal() if the connection is not yet established""
```
if (jingleRtpConnection != null) {
releaseVideoTracks(jingleRtpConnection);
} else if (!isChangingConfigurations()) {
if (xmppConnectionService != null) {
retractSessionProposal();
}
}
```
Could this be fixed somehow? I guess just removing retractSessionProposal() from here might have side effects?",
1021,https://api.github.com/repos/iNPUTmice/Conversations/issues/3801,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3801/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3801/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3801/events,https://github.com/iNPUTmice/Conversations/issues/3801,642578619,MDU6SXNzdWU2NDI1Nzg2MTk=,3801,Incoming call uses notification sound instead of ringtone on Android 8+,"{'login': 'anyuta1166', 'id': 726409, 'node_id': 'MDQ6VXNlcjcyNjQwOQ==', 'avatar_url': 'https://avatars1.githubusercontent.com/u/726409?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/anyuta1166', 'html_url': 'https://github.com/anyuta1166', 'followers_url': 'https://api.github.com/users/anyuta1166/followers', 'following_url': 'https://api.github.com/users/anyuta1166/following{/other_user}', 'gists_url': 'https://api.github.com/users/anyuta1166/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/anyuta1166/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/anyuta1166/subscriptions', 'organizations_url': 'https://api.github.com/users/anyuta1166/orgs', 'repos_url': 'https://api.github.com/users/anyuta1166/repos', 'events_url': 'https://api.github.com/users/anyuta1166/events{/privacy}', 'received_events_url': 'https://api.github.com/users/anyuta1166/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,0,2020-06-21T14:56:03Z,2020-06-21T15:00:05Z,,CONTRIBUTOR,,,"#### General information
* **Version:** 2.8.7
* **Device:** Motorola G7 Plus
* **Android Version:** Android 9 (stock)
* **Server name:** self hosted
* **Server software:** ejabberd 20.04
* **Conversations source:** PlayStore
#### Steps to reproduce
1. Go to settings - Incoming call notification settings
2. Select a sound with sound picker
By default, system default ringtone is played on incoming call.
But if you do the steps above:
- sound picker offers notification sounds instead of ringtones
- even if you choose default sound in picker, it will play default notification sound instead of default ringtone sound from now on
The only way to get a ringtone back instead of notification sound on incoming calls is to clear application data or reinstall the application.
Well, I investigated this issue and want to say that you should blame Google and their Oreo+ feature called Notification Channels for this.
Once a notification channel is created, it's settings cannot be modified by the application. Only the user has control over the settings. The problem is that sound picker in notification channel setings offers only notification sounds instead of ringtones. And it seems there is no way to change this behavior.
I've checked some apps that has a call feature and it seems that they overcome this by creating a notification channel with no sound and playing a sound manually on incoming call.
I've googled for code snippets and probably it should be something like this:
```
Ringtone r = RingtoneManager.getRingtone(context, uri);
r.play();
```
But it's too hard for me to implement so do not wait for pull requests. :-( The only thing I got trying to implement this were the application crashes :-)",
1022,https://api.github.com/repos/iNPUTmice/Conversations/issues/3800,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3800/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3800/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3800/events,https://github.com/iNPUTmice/Conversations/pull/3800,642343211,MDExOlB1bGxSZXF1ZXN0NDM3Mzg5Njcy,3800,Fix screen blinking during the call for some Samsung phones,"{'login': 'anyuta1166', 'id': 726409, 'node_id': 'MDQ6VXNlcjcyNjQwOQ==', 'avatar_url': 'https://avatars1.githubusercontent.com/u/726409?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/anyuta1166', 'html_url': 'https://github.com/anyuta1166', 'followers_url': 'https://api.github.com/users/anyuta1166/followers', 'following_url': 'https://api.github.com/users/anyuta1166/following{/other_user}', 'gists_url': 'https://api.github.com/users/anyuta1166/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/anyuta1166/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/anyuta1166/subscriptions', 'organizations_url': 'https://api.github.com/users/anyuta1166/orgs', 'repos_url': 'https://api.github.com/users/anyuta1166/repos', 'events_url': 'https://api.github.com/users/anyuta1166/events{/privacy}', 'received_events_url': 'https://api.github.com/users/anyuta1166/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,7,2020-06-20T09:25:14Z,2020-06-21T06:56:52Z,2020-06-21T06:56:52Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/pulls/3800', 'html_url': 'https://github.com/iNPUTmice/Conversations/pull/3800', 'diff_url': 'https://github.com/iNPUTmice/Conversations/pull/3800.diff', 'patch_url': 'https://github.com/iNPUTmice/Conversations/pull/3800.patch'}",Fixed issue #3797,
1023,https://api.github.com/repos/iNPUTmice/Conversations/issues/3799,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3799/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3799/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3799/events,https://github.com/iNPUTmice/Conversations/issues/3799,642078222,MDU6SXNzdWU2NDIwNzgyMjI=,3799,Recording for voice mail box should not change recent quick action,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'id': 76683388, 'node_id': 'MDU6TGFiZWw3NjY4MzM4OA==', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/feature', 'name': 'feature', 'color': '128a00', 'default': False, 'description': 'Accepted feature request'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/7', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/7', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/7/labels', 'id': 5545671, 'node_id': 'MDk6TWlsZXN0b25lNTU0NTY3MQ==', 'number': 7, 'title': '2.8.8', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 8, 'state': 'closed', 'created_at': '2020-06-16T07:44:14Z', 'updated_at': '2020-07-08T06:33:48Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:48Z'}",0,2020-06-19T16:06:03Z,2020-06-21T14:29:07Z,2020-06-21T14:29:07Z,OWNER,,,Pressing the record voice mail button in the busy call screen should not modify the last recently used quick action.,
1024,https://api.github.com/repos/iNPUTmice/Conversations/issues/3798,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3798/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3798/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3798/events,https://github.com/iNPUTmice/Conversations/issues/3798,641324649,MDU6SXNzdWU2NDEzMjQ2NDk=,3798,Do not throw if 'reject' call button press races session termination,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028640246, 'node_id': 'MDU6TGFiZWwyMDI4NjQwMjQ2', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/bug', 'name': 'bug', 'color': 'c95100', 'default': True, 'description': 'Accepted, reproducible bug'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/7', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/7', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/7/labels', 'id': 5545671, 'node_id': 'MDk6TWlsZXN0b25lNTU0NTY3MQ==', 'number': 7, 'title': '2.8.8', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 8, 'state': 'closed', 'created_at': '2020-06-16T07:44:14Z', 'updated_at': '2020-07-08T06:33:48Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:48Z'}",0,2020-06-18T15:45:47Z,2020-06-18T18:33:15Z,2020-06-18T18:33:15Z,OWNER,,,"```
java.lang.IllegalStateException:
at eu.siacs.conversations.xmpp.jingle.JingleRtpConnection.rejectCall (JingleRtpConnection.java:900)
at eu.siacs.conversations.ui.RtpSessionActivity.rejectCall (RtpSessionActivity.java:199)
at eu.siacs.conversations.ui.RtpSessionActivity.lambda$El6_nxioiQMy54IFPq_qbaaz73E (Unknown Source)
at eu.siacs.conversations.ui.-$$Lambda$RtpSessionActivity$El6_nxioiQMy54IFPq_qbaaz73E.onClick (Unknown Source:2)
```",
1025,https://api.github.com/repos/iNPUTmice/Conversations/issues/3797,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3797/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3797/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3797/events,https://github.com/iNPUTmice/Conversations/issues/3797,641293591,MDU6SXNzdWU2NDEyOTM1OTE=,3797,Proximity sensor issue,"{'login': 'anyuta1166', 'id': 726409, 'node_id': 'MDQ6VXNlcjcyNjQwOQ==', 'avatar_url': 'https://avatars1.githubusercontent.com/u/726409?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/anyuta1166', 'html_url': 'https://github.com/anyuta1166', 'followers_url': 'https://api.github.com/users/anyuta1166/followers', 'following_url': 'https://api.github.com/users/anyuta1166/following{/other_user}', 'gists_url': 'https://api.github.com/users/anyuta1166/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/anyuta1166/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/anyuta1166/subscriptions', 'organizations_url': 'https://api.github.com/users/anyuta1166/orgs', 'repos_url': 'https://api.github.com/users/anyuta1166/repos', 'events_url': 'https://api.github.com/users/anyuta1166/events{/privacy}', 'received_events_url': 'https://api.github.com/users/anyuta1166/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028640246, 'node_id': 'MDU6TGFiZWwyMDI4NjQwMjQ2', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/bug', 'name': 'bug', 'color': 'c95100', 'default': True, 'description': 'Accepted, reproducible bug'}]",closed,False,,[],"{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/7', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/7', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/7/labels', 'id': 5545671, 'node_id': 'MDk6TWlsZXN0b25lNTU0NTY3MQ==', 'number': 7, 'title': '2.8.8', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 8, 'state': 'closed', 'created_at': '2020-06-16T07:44:14Z', 'updated_at': '2020-07-08T06:33:48Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:48Z'}",13,2020-06-18T15:14:35Z,2020-06-21T06:57:34Z,2020-06-21T06:57:33Z,CONTRIBUTOR,,,"#### General information
* **Version:** 2.8.7
* **Device:** Samsung J1 2016
* **Android Version:** Android 5.1.1 (stock)
* **Server name:** self hosted
* **Server software:** ejabberd 20.04
* **Conversations source:** PlayStore
#### Steps to reproduce
1. Make or receive an audio call
2. Place the phone close to the ear (or just close the proximity sensor)
#### Expected result
The screen should be turned off.
#### Actual result
The screen is blinking: continuously turning on and off, on and off, on and off..
This seems to be a problem specific to this particular combination of device and software.
On another devices Conversations works correctly (screen is turning off during the call when being close to the ear).
Another applications on this device (including the stock dialer) works correctly too.
#### Debug output
Please post the output of adb logcat. The log should begin with the start of Conversations and include all the
steps it takes to reproduce the problem.
````
D/conversations( 3790): marina@messag.i.ng: delivered message to JingleRtpConnection
D/conversations( 3790): marina@messag.i.ng: received session proposal from vamp@vampik.ru/Conversations.gXa0 for [audio]
D/conversations( 3790): marina@messag.i.ng: transitioned into PROPOSED
D/conversations( 3790): ForegroundService: on
D/conversations( 3790): marina@messag.i.ng: received call from vamp@vampik.ru/Conversations.gXa0. start ringing
D/conversations( 3790): ConversationsOverviewFragment.onPause()
D/conversations( 3790): intent action was accept
D/conversations( 3790): acquiring proximity wake lock
D/conversations( 3790): marina@messag.i.ng: transitioned into PROCEED
D/conversations( 3790): onJingleRtpConnectionUpdate(ACCEPTING_CALL)
D/conversations( 3790): ForegroundService: on
D/conversations( 3790): checking microphone availability took 408ms
D/conversations( 3790): marina@messag.i.ng: delivered message to JingleRtpConnection
D/conversations( 3790): marina@messag.i.ng: unable to transition to accept because already in state=PROCEED
D/conversations( 3790): marina@messag.i.ng: packet delivered to JingleRtpConnection
D/conversations( 3790): processing session-init with 1 contents
D/conversations( 3790): marina@messag.i.ng: transitioned into SESSION_INITIALIZED_PRE_APPROVED
D/conversations( 3790): onJingleRtpConnectionUpdate(CONNECTING)
D/conversations( 3790): ForegroundService: on
D/conversations( 3790): marina@messag.i.ng: automatically accepting session-initiate
D/conversations( 3790): marina@messag.i.ng: packet delivered to JingleRtpConnection
D/conversations( 3790): marina@messag.i.ng: put ICE candidate on backlog
D/conversations( 3790): marina@messag.i.ng: packet delivered to JingleRtpConnection
D/conversations( 3790): marina@messag.i.ng: put ICE candidate on backlog
D/conversations( 3790): marina@messag.i.ng: packet delivered to JingleRtpConnection
D/conversations( 3790): marina@messag.i.ng: put ICE candidate on backlog
D/conversations( 3790): marina@messag.i.ng: packet delivered to JingleRtpConnection
D/conversations( 3790): marina@messag.i.ng: put ICE candidate on backlog
D/conversations( 3790): marina@messag.i.ng: discovered ICE Server: [stun:[54.38.159.159]:3478?transport=udp] [:] [TLS_CERT_POLICY_INSECURE_NO_CHECK] [] [null] [null]
D/conversations( 3790): marina@messag.i.ng: discovered ICE Server: [turn:[54.38.159.159]:3478?transport=udp] [1592476085:f693a8278348d8ae:vc5ZJMhf6zIuMSPIxqdyUCClDO0=] [TLS_CERT_POLICY_INSECURE_NO_CHECK] [] [null] [null]
D/conversations( 3790): ctor
D/conversations( 3790): create@[name=main, id=1]
D/conversations( 3790): ctor
D/conversations( 3790): AppRTCProximitySensor@[name=main, id=1]
D/conversations( 3790): setUseHardwareAcousticEchoCanceler(true) model=SM-J120F
D/conversations( 3790): defaultAudioDevice: EARPIECE
D/conversations( 3790): Android SDK: 22, Release: 5.1.1, Brand: samsung, Device: j1xlte, Id: LMY47X, Hardware: universal3475, Manufacturer: samsung, Model: SM-J120F, Product: j1xltejt
D/conversations( 3790): eu.siacs.conversations.services.AppRTCAudioManager.start()
D/conversations( 3790): Audio focus request granted for VOICE_CALL streams
D/conversations( 3790): start
D/conversations( 3790): BluetoothAdapter: enabled=false, state=OFF, name=Samsung Galaxy J1 (2016), address=68:E7:C2:7A:52:4E
D/conversations( 3790): HEADSET profile state: DISCONNECTED
D/conversations( 3790): Bluetooth proxy for headset profile has started
D/conversations( 3790): start done: BT state=HEADSET_UNAVAILABLE
D/conversations( 3790): --- updateAudioDeviceState: wired headset=false, BT state=HEADSET_UNAVAILABLE
D/conversations( 3790): Device status: available=[], selected=NONE, user selected=NONE
D/conversations( 3790): setAudioDeviceInternal(device=EARPIECE)
D/conversations( 3790): New device status: available=[EARPIECE, SPEAKER_PHONE], selected=EARPIECE
D/conversations( 3790): onAudioDeviceChanged in activity: selected:EARPIECE, available:[EARPIECE, SPEAKER_PHONE]
D/conversations( 3790): --- updateAudioDeviceState done
D/conversations( 3790): AudioManager started
D/conversations( 3790): onAudioDeviceChanged in activity: selected:EARPIECE, available:[EARPIECE, SPEAKER_PHONE]
D/conversations( 3790): no remote video tracks found
D/conversations( 3790): marina@messag.i.ng: added ICE candidate from back log audio:0:candidate:175950370 1 udp 2122262783 2001:470:26:3b1:b145:ac6:be96:6177 39308 typ host generation 0 ufrag 3j9c::UNKNOWN
D/conversations( 3790): marina@messag.i.ng: added ICE candidate from back log audio:0:candidate:2290633489 1 udp 2122194687 192.168.13.189 44935 typ host generation 0 ufrag 3j9c::UNKNOWN
D/conversations( 3790): marina@messag.i.ng: added ICE candidate from back log audio:0:candidate:842163049 1 udp 1685987071 95.24.233.254 44935 typ srflx raddr 192.168.13.189 rport 44935 generation 0 ufrag 3j9c::UNKNOWN
D/conversations( 3790): marina@messag.i.ng: added ICE candidate from back log audio:0:candidate:774123710 1 udp 41819903 54.38.159.159 55978 typ relay raddr 95.24.233.254 rport 44935 generation 0 ufrag 3j9c::UNKNOWN
D/conversations( 3790): marina@messag.i.ng: transitioned into SESSION_ACCEPTED
D/conversations( 3790): onJingleRtpConnectionUpdate(CONNECTING)
D/conversations( 3790): ForegroundService: on
D/conversations( 3790): 59:0A:54:12:F7:89:FE:E8:7A:FE:DA:C4:21:1A:BE:14:F2:C1:38:12:7E:F9:7E:18:96:87:9A:7E:67:73:A7:10
D/conversations( 3790): marina@messag.i.ng: PeerConnectionState changed to CONNECTING
D/conversations( 3790): onJingleRtpConnectionUpdate(CONNECTING)
D/conversations( 3790): sending candidate: audio:0:candidate:1029321089 1 udp 2122262783 2001:470:26:3b1:b900:b8eb:4f54:76bc 58146 typ host generation 0 ufrag FFQp network-id 4 network-cost 10::UNKNOWN
D/conversations( 3790): sending candidate: audio:0:candidate:3724228918 1 udp 2122194687 192.168.13.116 48105 typ host generation 0 ufrag FFQp network-id 3 network-cost 10::UNKNOWN
D/conversations( 3790): remote candidate selected: :-1:candidate:175950370 1 udp 2122262783 2001:470:26:3b1:b145:ac6:be96:6177 39308 typ host generation 0 ufrag 3j9c::UNKNOWN
D/conversations( 3790): local candidate selected: :-1:candidate:1029321089 1 udp 2122262783 2001:470:26:3b1:b900:b8eb:4f54:76bc 58146 typ host generation 0 ufrag FFQp network-id 4 network-cost 10::WIFI
D/conversations( 3790): marina@messag.i.ng: PeerConnectionState changed to CONNECTED
D/conversations( 3790): eu.siacs.conversations.xmpp.jingle.ToneManager.transition(CONNECTED)
D/conversations( 3790): eu.siacs.conversations.xmpp.jingle.ToneManager: do not configure audio manager because RTC has control
D/conversations( 3790): onJingleRtpConnectionUpdate(CONNECTED)
D/conversations( 3790): releasing proximity wake lock
D/conversations( 3790): app switched into background
D/conversations( 3790): app switched into foreground
D/conversations( 3790): acquiring proximity wake lock
D/conversations( 3790): releasing proximity wake lock
D/conversations( 3790): app switched into background
D/conversations( 3790): app switched into foreground
D/conversations( 3790): acquiring proximity wake lock
D/conversations( 3790): releasing proximity wake lock
D/conversations( 3790): app switched into background
D/conversations( 3790): app switched into foreground
D/conversations( 3790): acquiring proximity wake lock
D/conversations( 3790): releasing proximity wake lock
D/conversations( 3790): app switched into background
D/conversations( 3790): app switched into foreground
D/conversations( 3790): acquiring proximity wake lock
D/conversations( 3790): releasing proximity wake lock
D/conversations( 3790): app switched into background
D/conversations( 3790): app switched into foreground
D/conversations( 3790): acquiring proximity wake lock
D/conversations( 3790): releasing proximity wake lock
D/conversations( 3790): app switched into background
D/conversations( 3790): app switched into foreground
D/conversations( 3790): acquiring proximity wake lock
D/conversations( 3790): releasing proximity wake lock
D/conversations( 3790): app switched into background
D/conversations( 3790): app switched into foreground
D/conversations( 3790): acquiring proximity wake lock
D/conversations( 3790): releasing proximity wake lock
D/conversations( 3790): app switched into background
D/conversations( 3790): app switched into foreground
D/conversations( 3790): acquiring proximity wake lock
D/conversations( 3790): releasing proximity wake lock
D/conversations( 3790): app switched into background
D/conversations( 3790): app switched into foreground
D/conversations( 3790): acquiring proximity wake lock
D/conversations( 3790): releasing proximity wake lock
D/conversations( 3790): app switched into background
D/conversations( 3790): app switched into foreground
D/conversations( 3790): acquiring proximity wake lock
D/conversations( 3790): releasing proximity wake lock
D/conversations( 3790): app switched into background
D/conversations( 3790): app switched into foreground
D/conversations( 3790): acquiring proximity wake lock
D/conversations( 3790): releasing proximity wake lock
D/conversations( 3790): app switched into background
D/conversations( 3790): app switched into foreground
D/conversations( 3790): acquiring proximity wake lock
D/conversations( 3790): releasing proximity wake lock
D/conversations( 3790): app switched into background
D/conversations( 3790): app switched into foreground
D/conversations( 3790): acquiring proximity wake lock
D/conversations( 3790): releasing proximity wake lock
D/conversations( 3790): app switched into background
D/conversations( 3790): app switched into foreground
D/conversations( 3790): acquiring proximity wake lock
D/conversations( 3790): releasing proximity wake lock
D/conversations( 3790): app switched into background
D/conversations( 3790): app switched into foreground
D/conversations( 3790): acquiring proximity wake lock
D/conversations( 3790): releasing proximity wake lock
D/conversations( 3790): app switched into background
D/conversations( 3790): app switched into foreground
D/conversations( 3790): acquiring proximity wake lock
D/conversations( 3790): releasing proximity wake lock
D/conversations( 3790): app switched into background
D/conversations( 3790): app switched into foreground
D/conversations( 3790): acquiring proximity wake lock
D/conversations( 3790): releasing proximity wake lock
D/conversations( 3790): app switched into background
D/conversations( 3790): app switched into foreground
D/conversations( 3790): acquiring proximity wake lock
D/conversations( 3790): releasing proximity wake lock
D/conversations( 3790): app switched into background
D/conversations( 3790): app switched into foreground
D/conversations( 3790): acquiring proximity wake lock
D/conversations( 3790): releasing proximity wake lock
D/conversations( 3790): app switched into background
D/conversations( 3790): app switched into foreground
D/conversations( 3790): acquiring proximity wake lock
D/conversations( 3790): releasing proximity wake lock
D/conversations( 3790): app switched into background
D/conversations( 3790): app switched into foreground
D/conversations( 3790): acquiring proximity wake lock
D/conversations( 3790): releasing proximity wake lock
D/conversations( 3790): app switched into background
D/conversations( 3790): app switched into foreground
D/conversations( 3790): acquiring proximity wake lock
D/conversations( 3790): releasing proximity wake lock
D/conversations( 3790): app switched into background
D/conversations( 3790): app switched into foreground
D/conversations( 3790): acquiring proximity wake lock
D/conversations( 3790): releasing proximity wake lock
D/conversations( 3790): app switched into background
D/conversations( 3790): app switched into foreground
D/conversations( 3790): acquiring proximity wake lock
D/conversations( 3790): releasing proximity wake lock
D/conversations( 3790): app switched into background
D/conversations( 3790): app switched into foreground
D/conversations( 3790): acquiring proximity wake lock
D/conversations( 3790): releasing proximity wake lock
D/conversations( 3790): app switched into background
D/conversations( 3790): app switched into foreground
D/conversations( 3790): acquiring proximity wake lock
D/conversations( 3790): releasing proximity wake lock
D/conversations( 3790): app switched into background
D/conversations( 3790): app switched into foreground
D/conversations( 3790): acquiring proximity wake lock
D/conversations( 3790): releasing proximity wake lock
D/conversations( 3790): app switched into background
D/conversations( 3790): app switched into foreground
D/conversations( 3790): acquiring proximity wake lock
D/conversations( 3790): releasing proximity wake lock
D/conversations( 3790): app switched into background
D/conversations( 3790): app switched into foreground
D/conversations( 3790): acquiring proximity wake lock
D/conversations( 3790): releasing proximity wake lock
D/conversations( 3790): app switched into background
D/conversations( 3790): app switched into foreground
D/conversations( 3790): acquiring proximity wake lock
D/conversations( 3790): releasing proximity wake lock
D/conversations( 3790): app switched into background
D/conversations( 3790): app switched into foreground
D/conversations( 3790): acquiring proximity wake lock
D/conversations( 3790): marina@messag.i.ng: PeerConnectionState changed to CLOSED
D/conversations( 3790): eu.siacs.conversations.xmpp.jingle.ToneManager.transition(ENDING_CALL)
D/conversations( 3790): eu.siacs.conversations.xmpp.jingle.ToneManager: do not configure audio manager because RTC has control
D/conversations( 3790): onJingleRtpConnectionUpdate(ENDING_CALL)
D/conversations( 3790): marina@messag.i.ng: transitioned into TERMINATED_SUCCESS
D/conversations( 3790): onJingleRtpConnectionUpdate(ENDED)
D/conversations( 3790): ForegroundService: on
D/conversations( 3790):
D/conversations( 3790): eu.siacs.conversations.services.AppRTCAudioManager.stop()
D/conversations( 3790): stop: BT state=HEADSET_UNAVAILABLE
D/conversations( 3790): stopScoAudio: BT state=HEADSET_UNAVAILABLE, SCO is on: false
D/conversations( 3790): cancelTimer
D/conversations( 3790): stop done: BT state=UNINITIALIZED
D/conversations( 3790): Abandoned audio focus for VOICE_CALL streams
D/conversations( 3790): stop@[name=main, id=1]
D/conversations( 3790): eu.siacs.conversations.xmpp.jingle.ToneManager: putting AudioManager back into normal mode
D/conversations( 3790): ConversationsOverviewFragment.onStart()
D/conversations( 3790): ConversationsOverviewFragment.onResume()
D/conversations( 3790): releasing proximity wake lock
````
",
1026,https://api.github.com/repos/iNPUTmice/Conversations/issues/3796,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3796/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3796/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3796/events,https://github.com/iNPUTmice/Conversations/issues/3796,641261557,MDU6SXNzdWU2NDEyNjE1NTc=,3796,Allow to provision accounts using QR code in Welcome Activity,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'id': 76683388, 'node_id': 'MDU6TGFiZWw3NjY4MzM4OA==', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/feature', 'name': 'feature', 'color': '128a00', 'default': False, 'description': 'Accepted feature request'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/7', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/7', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/7/labels', 'id': 5545671, 'node_id': 'MDk6TWlsZXN0b25lNTU0NTY3MQ==', 'number': 7, 'title': '2.8.8', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 8, 'state': 'closed', 'created_at': '2020-06-16T07:44:14Z', 'updated_at': '2020-07-08T06:33:48Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:48Z'}",2,2020-06-18T14:37:46Z,2020-06-24T15:42:57Z,2020-06-21T13:41:50Z,OWNER,,,"The QR code scanner in the welcome activity (first screen in Conversations) should allow to scan QR codes with some JSON string roughly similar to the following in order to easily add new accounts.
```json
{
""protocol"": ""xmpp"",
""address"": ""user@domain.tld"",
""password"": ""secret""
}
```
Tools like `ejabberdctl register ` or `prosodyctl` should display a matching QR code directly at the console. (Likewise some registration web interfaces could display them after successful registration) ",
1027,https://api.github.com/repos/iNPUTmice/Conversations/issues/3795,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3795/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3795/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3795/events,https://github.com/iNPUTmice/Conversations/issues/3795,641245922,MDU6SXNzdWU2NDEyNDU5MjI=,3795,Crash when unable to setup egl,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028640246, 'node_id': 'MDU6TGFiZWwyMDI4NjQwMjQ2', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/bug', 'name': 'bug', 'color': 'c95100', 'default': True, 'description': 'Accepted, reproducible bug'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/7', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/7', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/7/labels', 'id': 5545671, 'node_id': 'MDk6TWlsZXN0b25lNTU0NTY3MQ==', 'number': 7, 'title': '2.8.8', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 8, 'state': 'closed', 'created_at': '2020-06-16T07:44:14Z', 'updated_at': '2020-07-08T06:33:48Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:48Z'}",0,2020-06-18T14:18:54Z,2020-06-18T18:38:06Z,2020-06-18T18:38:06Z,OWNER,,,"```
java.lang.RuntimeException: Unable to find any matching EGL config
at org.webrtc.EglBase14Impl.getEglConfig(EglBase14Impl.java:257)
at org.webrtc.EglBase14Impl.(EglBase14Impl.java:75)
at org.webrtc.EglBase$-CC.createEgl14(EglBase.java:206)
at org.webrtc.EglBase$-CC.create(EglBase.java:155)
at org.webrtc.EglBase$-CC.create(EglBase.java:170)
at eu.siacs.conversations.xmpp.jingle.WebRTCWrapper.setup(WebRTCWrapper.java:219)
at eu.siacs.conversations.xmpp.jingle.JingleRtpConnection.setupWebRTC(JingleRtpConnection.java:928)
at eu.siacs.conversations.xmpp.jingle.JingleRtpConnection.sendSessionAccept(JingleRtpConnection.java:425)
at eu.siacs.conversations.xmpp.jingle.JingleRtpConnection.lambda$sendSessionAccept$1$JingleRtpConnection(JingleRtpConnection.java:416)
at eu.siacs.conversations.xmpp.jingle.-$$Lambda$JingleRtpConnection$Y6d-UNaf6uJZPWvT4fwVoWtd6qE.onIceServersDiscovered(lambda)
at eu.siacs.conversations.xmpp.jingle.JingleRtpConnection.lambda$discoverIceServers$6$JingleRtpConnection(JingleRtpConnection.java:1157)
at eu.siacs.conversations.xmpp.jingle.-$$Lambda$JingleRtpConnection$Cq4TA-ljrxVcCvF8xkEDjwh2zCY.onIqPacketReceived(lambda)
at eu.siacs.conversations.xmpp.XmppConnection.processIq(XmppConnection.java:757)
at eu.siacs.conversations.xmpp.XmppConnection.processStream(XmppConnection.java:635)
at eu.siacs.conversations.xmpp.XmppConnection.processStream(XmppConnection.java:483)
at eu.siacs.conversations.xmpp.XmppConnection.switchOverToTls(XmppConnection.java:801)
at eu.siacs.conversations.xmpp.XmppConnection.processStream(XmppConnection.java:467)
at eu.siacs.conversations.xmpp.XmppConnection.connect(XmppConnection.java:375)
at eu.siacs.conversations.xmpp.XmppConnection.run(XmppConnection.java:454)
at java.lang.Thread.run(Thread.java:818)
```
This should at least result in an App failure instead of a crash.
But if we can we should probably black list the device and use software rendering or something.",
1028,https://api.github.com/repos/iNPUTmice/Conversations/issues/3794,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3794/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3794/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3794/events,https://github.com/iNPUTmice/Conversations/issues/3794,640852912,MDU6SXNzdWU2NDA4NTI5MTI=,3794,WebRTC interop?,"{'login': 'paradisaeidae', 'id': 440482, 'node_id': 'MDQ6VXNlcjQ0MDQ4Mg==', 'avatar_url': 'https://avatars3.githubusercontent.com/u/440482?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/paradisaeidae', 'html_url': 'https://github.com/paradisaeidae', 'followers_url': 'https://api.github.com/users/paradisaeidae/followers', 'following_url': 'https://api.github.com/users/paradisaeidae/following{/other_user}', 'gists_url': 'https://api.github.com/users/paradisaeidae/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/paradisaeidae/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/paradisaeidae/subscriptions', 'organizations_url': 'https://api.github.com/users/paradisaeidae/orgs', 'repos_url': 'https://api.github.com/users/paradisaeidae/repos', 'events_url': 'https://api.github.com/users/paradisaeidae/events{/privacy}', 'received_events_url': 'https://api.github.com/users/paradisaeidae/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-06-18T02:10:48Z,2020-06-18T07:04:26Z,2020-06-18T07:04:26Z,NONE,,,"Conversations is working fine!
I see PeerConnection.IceServer in the code here.
Though where is this picked from?
Is there a dns call to stun.example.tld to gain IceConfigs?
All the best, stay safe!",
1029,https://api.github.com/repos/iNPUTmice/Conversations/issues/3793,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3793/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3793/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3793/events,https://github.com/iNPUTmice/Conversations/issues/3793,640185011,MDU6SXNzdWU2NDAxODUwMTE=,3793,Direct search - apply to all roster views,"{'login': 'licaon-kter', 'id': 2282799, 'node_id': 'MDQ6VXNlcjIyODI3OTk=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2282799?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/licaon-kter', 'html_url': 'https://github.com/licaon-kter', 'followers_url': 'https://api.github.com/users/licaon-kter/followers', 'following_url': 'https://api.github.com/users/licaon-kter/following{/other_user}', 'gists_url': 'https://api.github.com/users/licaon-kter/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/licaon-kter/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/licaon-kter/subscriptions', 'organizations_url': 'https://api.github.com/users/licaon-kter/orgs', 'repos_url': 'https://api.github.com/users/licaon-kter/repos', 'events_url': 'https://api.github.com/users/licaon-kter/events{/privacy}', 'received_events_url': 'https://api.github.com/users/licaon-kter/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-06-17T06:45:44Z,2020-06-17T06:53:19Z,2020-06-17T06:50:48Z,CONTRIBUTOR,,,...like invite contact _(has search icon already)_ or share _(needs search icon too)_ and others that I might have missed. ,
1030,https://api.github.com/repos/iNPUTmice/Conversations/issues/3792,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3792/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3792/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3792/events,https://github.com/iNPUTmice/Conversations/pull/3792,639897041,MDExOlB1bGxSZXF1ZXN0NDM1NDA0NTY3,3792,Allow 3rd-party applications to know about an incoming call,"{'login': 'dmitry-markin', 'id': 6322171, 'node_id': 'MDQ6VXNlcjYzMjIxNzE=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/6322171?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dmitry-markin', 'html_url': 'https://github.com/dmitry-markin', 'followers_url': 'https://api.github.com/users/dmitry-markin/followers', 'following_url': 'https://api.github.com/users/dmitry-markin/following{/other_user}', 'gists_url': 'https://api.github.com/users/dmitry-markin/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dmitry-markin/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dmitry-markin/subscriptions', 'organizations_url': 'https://api.github.com/users/dmitry-markin/orgs', 'repos_url': 'https://api.github.com/users/dmitry-markin/repos', 'events_url': 'https://api.github.com/users/dmitry-markin/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dmitry-markin/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-06-16T18:48:22Z,2020-06-16T19:22:29Z,2020-06-16T19:07:02Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/pulls/3792', 'html_url': 'https://github.com/iNPUTmice/Conversations/pull/3792', 'diff_url': 'https://github.com/iNPUTmice/Conversations/pull/3792.diff', 'patch_url': 'https://github.com/iNPUTmice/Conversations/pull/3792.patch'}","Set the incoming call notification category back to `CATEGORY_CALL`. This is what other apps like WhatsApp and Telegram are doing. Without a proper category 3rd-party apps are not able to notify a user about a call. For example, [Gadgetbridge](https://gadgetbridge.org/) currently doesn't start an incoming call notification/vibration on a smart watch during an incoming call in Conversations.
I don't know why the category was previously overridden as `CATEGORY_MESSAGE` in `modifyIncomingCall()`, so I'm not sure whether this breaks anything.
Tested with [Gadgetbridge](https://gadgetbridge.org/).",
1031,https://api.github.com/repos/iNPUTmice/Conversations/issues/3791,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3791/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3791/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3791/events,https://github.com/iNPUTmice/Conversations/issues/3791,639743699,MDU6SXNzdWU2Mzk3NDM2OTk=,3791,Bluetooth No Audio Input,"{'login': 'Adam-Stambaugh', 'id': 49969486, 'node_id': 'MDQ6VXNlcjQ5OTY5NDg2', 'avatar_url': 'https://avatars3.githubusercontent.com/u/49969486?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Adam-Stambaugh', 'html_url': 'https://github.com/Adam-Stambaugh', 'followers_url': 'https://api.github.com/users/Adam-Stambaugh/followers', 'following_url': 'https://api.github.com/users/Adam-Stambaugh/following{/other_user}', 'gists_url': 'https://api.github.com/users/Adam-Stambaugh/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Adam-Stambaugh/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Adam-Stambaugh/subscriptions', 'organizations_url': 'https://api.github.com/users/Adam-Stambaugh/orgs', 'repos_url': 'https://api.github.com/users/Adam-Stambaugh/repos', 'events_url': 'https://api.github.com/users/Adam-Stambaugh/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Adam-Stambaugh/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,5,2020-06-16T15:03:15Z,2020-08-02T19:30:42Z,2020-08-02T19:30:42Z,NONE,,,"#### General information
* **Version:** 2.8.6+fcr
* **Device:** Google Pixel (Sailfish)
* **Android Version:** LineageOS 16.0 (AOSP 9.0)
* **Server name:** conversations.im
* **Server software:** ejabberd 19.05.13-conversations.im
* **Conversations source:** F-Droid
#### Steps to reproduce
1. Connect bluetooth headset or a PC setup with ofono and pulseaudio configured to use it.
2. Call someone.
#### Expected result
They would be able to hear you.
#### Actual result
They can't hear you. If I toggle off bluetooth audio with the option right of the hang-up button, then they can hear me through the built-in mic. It happens consistently. I can't get any form of bluetooth audio input to work with it, while they work fine with other apps and the system.
",
1032,https://api.github.com/repos/iNPUTmice/Conversations/issues/3790,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3790/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3790/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3790/events,https://github.com/iNPUTmice/Conversations/issues/3790,639463778,MDU6SXNzdWU2Mzk0NjM3Nzg=,3790,Jingle RTP sessions: Initiator doesn’t parse transport-info prior to session-accept,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028640246, 'node_id': 'MDU6TGFiZWwyMDI4NjQwMjQ2', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/bug', 'name': 'bug', 'color': 'c95100', 'default': True, 'description': 'Accepted, reproducible bug'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/7', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/7', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/7/labels', 'id': 5545671, 'node_id': 'MDk6TWlsZXN0b25lNTU0NTY3MQ==', 'number': 7, 'title': '2.8.8', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 8, 'state': 'closed', 'created_at': '2020-06-16T07:44:14Z', 'updated_at': '2020-07-08T06:33:48Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:48Z'}",1,2020-06-16T08:11:32Z,2020-06-22T16:07:38Z,2020-06-22T16:07:38Z,OWNER,,,As the initiator of a Jingle RTP session we don’t parse transport-infos that arrive prior to the session-accept (as we need information from the session-accept to properly process them). However we should just batch up the entire transport info with all candidates for later processing instead of the (improperly) processed candidate like we do right now.,
1033,https://api.github.com/repos/iNPUTmice/Conversations/issues/3789,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3789/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3789/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3789/events,https://github.com/iNPUTmice/Conversations/issues/3789,639461734,MDU6SXNzdWU2Mzk0NjE3MzQ=,3789,Add button to mute the microphone during a call,"{'login': 'merge', 'id': 503356, 'node_id': 'MDQ6VXNlcjUwMzM1Ng==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/503356?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/merge', 'html_url': 'https://github.com/merge', 'followers_url': 'https://api.github.com/users/merge/followers', 'following_url': 'https://api.github.com/users/merge/following{/other_user}', 'gists_url': 'https://api.github.com/users/merge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/merge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/merge/subscriptions', 'organizations_url': 'https://api.github.com/users/merge/orgs', 'repos_url': 'https://api.github.com/users/merge/repos', 'events_url': 'https://api.github.com/users/merge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/merge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-06-16T08:08:22Z,2020-06-18T07:05:14Z,2020-06-18T07:05:14Z,NONE,,,"#### General information
* **Version:** 2.8.6+fcr
* **Device:** Nexus 5X
* **Android Version:** Android 8.1 (LineageOS)
* **Server name:** jabber.at
* **Conversations source:** F-Droid
#### Steps to reproduce
1. audio call (be called or call)
#### Expected result
Have a button to mute the microphone during a call.
#### Actual result
Only the one button to hang up. No option to mute the mic.
",
1034,https://api.github.com/repos/iNPUTmice/Conversations/issues/3788,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3788/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3788/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3788/events,https://github.com/iNPUTmice/Conversations/issues/3788,639329594,MDU6SXNzdWU2MzkzMjk1OTQ=,3788,Conversations v2.8.7 media call compatibility with aTalk v2.3.0,"{'login': 'cmeng-git', 'id': 7959606, 'node_id': 'MDQ6VXNlcjc5NTk2MDY=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/7959606?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/cmeng-git', 'html_url': 'https://github.com/cmeng-git', 'followers_url': 'https://api.github.com/users/cmeng-git/followers', 'following_url': 'https://api.github.com/users/cmeng-git/following{/other_user}', 'gists_url': 'https://api.github.com/users/cmeng-git/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/cmeng-git/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/cmeng-git/subscriptions', 'organizations_url': 'https://api.github.com/users/cmeng-git/orgs', 'repos_url': 'https://api.github.com/users/cmeng-git/repos', 'events_url': 'https://api.github.com/users/cmeng-git/events{/privacy}', 'received_events_url': 'https://api.github.com/users/cmeng-git/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,6,2020-06-16T02:52:52Z,2020-07-14T05:32:41Z,2020-07-14T05:29:51Z,NONE,,,"#### General information
* **Version:** 2.8.7-beta.2+fcd
* **Device:** Samsung Note-10 (API-29) / Samsung Note-5 (API-21)
* **Android Version:** Android 10 / Andorid-5
* **Server name:** atalk.sytes.net self hosted
* **Server software:** ejabberd 18.09
* **Conversations source:** self build (2.8.7-beta.2+fcd)
Below are the media call compatibility test observations between Conversations v2.8.7 and aTalk 2.3.0. Appreciate if your team can enlighten on the observations/results:
Note: So far, there are no observable differences in the test results of the call setup between Note-10 and Note-5. Both devices are installed with Conversations and aTalk, and either can be caller or callpeer of Conversations or aTalk.
Below are the implement differences between the two:
```
1. Conversations implementations:
* a. transport-info's are sent per media after session-initiate stanza;
* b. transport-info's are sent per media after session-accept stanza;
2. aTalk implementations:
* a. transport-info's are embedded within session-initiate stanza;
* b. transport-info's are sent per media prior to session-accept stanza;
```
### Audio call:
1. aTalk to Conversations - OK
2. Conversations to aTalk - Both stuck in 'Connecting' call state.
### Video call:
1. aTalk to Conversations
a. Audio call setup correctly at the start.
b. Local video previews are shown briefly, then Conversations crashes immediately after that.
2. Conversations to aTalk
a. Both stuck in 'Connecting' call state, with local video preview being shown.
### Other observations:
1. It seems that the video call issue is due to the fact that aTalk send the \ for the medias prior to \; Conversations seems not to like this.
2. If I remember correctly, audio call was working with Conversations v2.8.5. However there was a long delay ~5s before aTalk receive the audio stream.
3. h264 codec is not compatible with the two. Look like aTalk cannot support
\; Conversations crashes if h264 codec is used.
4. You may also like to refer to aTalk release note for all changes made so as to be compatible with Conversations.
[Release Notes](https://github.com/cmeng-git/atalk-android/blob/master/aTalk/ReleaseNotes.txt)",
1035,https://api.github.com/repos/iNPUTmice/Conversations/issues/3787,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3787/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3787/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3787/events,https://github.com/iNPUTmice/Conversations/issues/3787,639117207,MDU6SXNzdWU2MzkxMTcyMDc=,3787,[Request] Add the option to search inside individual conversations like you can do on the conversation homepage,"{'login': 'oathzed', 'id': 52545913, 'node_id': 'MDQ6VXNlcjUyNTQ1OTEz', 'avatar_url': 'https://avatars3.githubusercontent.com/u/52545913?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/oathzed', 'html_url': 'https://github.com/oathzed', 'followers_url': 'https://api.github.com/users/oathzed/followers', 'following_url': 'https://api.github.com/users/oathzed/following{/other_user}', 'gists_url': 'https://api.github.com/users/oathzed/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/oathzed/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/oathzed/subscriptions', 'organizations_url': 'https://api.github.com/users/oathzed/orgs', 'repos_url': 'https://api.github.com/users/oathzed/repos', 'events_url': 'https://api.github.com/users/oathzed/events{/privacy}', 'received_events_url': 'https://api.github.com/users/oathzed/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-06-15T20:11:02Z,2020-06-15T20:24:47Z,2020-06-15T20:24:46Z,NONE,,,"#### General information
* **Version:** 2.4.1-playstore
* **Device:** Pixel 2
* **Android Version:** Android 10 (stock)
* **Server name:** dismail.de
* **Server software:** unknown
* **Installed server modules:** unknown
* **Conversations source:** PlayStore Beta Channel
#### Steps to reproduce
1. Inside a conversation select the search icon on the top right to search inside that conversation
#### Expected result
What is the expected output?
This isn't added
#### Actual result
What do you see instead?
Nothing
",
1036,https://api.github.com/repos/iNPUTmice/Conversations/issues/3786,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3786/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3786/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3786/events,https://github.com/iNPUTmice/Conversations/issues/3786,639056595,MDU6SXNzdWU2MzkwNTY1OTU=,3786,"Jingle file transfer, says ""delivery failed"" even though it succeeded","{'login': 'singpolyma', 'id': 12770, 'node_id': 'MDQ6VXNlcjEyNzcw', 'avatar_url': 'https://avatars2.githubusercontent.com/u/12770?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/singpolyma', 'html_url': 'https://github.com/singpolyma', 'followers_url': 'https://api.github.com/users/singpolyma/followers', 'following_url': 'https://api.github.com/users/singpolyma/following{/other_user}', 'gists_url': 'https://api.github.com/users/singpolyma/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/singpolyma/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/singpolyma/subscriptions', 'organizations_url': 'https://api.github.com/users/singpolyma/orgs', 'repos_url': 'https://api.github.com/users/singpolyma/repos', 'events_url': 'https://api.github.com/users/singpolyma/events{/privacy}', 'received_events_url': 'https://api.github.com/users/singpolyma/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-06-15T18:36:17Z,2020-06-15T19:25:39Z,2020-06-15T19:25:04Z,CONTRIBUTOR,,,"Hi, me trying to get jingle transfer to cheogram.com to work again.
So, here is what Conversations debug log says when I do a transfer to any +1@cheogram.com JID:
```
06-15 14:25:17.078 1298 1298 D conversations: send file message
06-15 14:25:17.711 1298 4243 D conversations: successfully connected to our own proxy65 candidate
06-15 14:25:17.718 1298 4243 D conversations: ...: sending S5B offer with 3 candidates
06-15 14:25:17.845 1298 1358 D conversations: ...: other party received offer
06-15 14:25:18.043 1298 1358 D conversations: ...: received candidate error
06-15 14:25:20.269 1298 4249 D conversations: established connection with jingle.cheogram.com:1080
06-15 14:25:20.271 1298 4249 D conversations: ...: elected candidate jingle.cheogram.com:1080 (priority=8323071,ours=false)
06-15 14:25:20.271 1298 4249 D conversations: we were initiating. sending file
06-15 14:25:20.390 1298 4260 D conversations: successfully transmitted file:/storage/emulated/0/...
```
So, debug log seems to thing it worked. And Cheogram also agrees that it worked and relays over MMS as requested. However, Conversations' UI (using the custom APK you sent me on the last issue) says ""delivery failed"" with error message ""unknown request""
Looking at the XMPP-side chatter between Conversations and cheogram.com, it looks pretty straightforward:
1. session-initiate (from Conversations)
2. session-accept (from cheogram)
3. candidate-error (from cheogram)
4. candidate-used (from Conversations)
5. session-info (checksum, from Conversations)
6. I have code to send session-info, `{urn:xmpp:jingle:apps:file-transfer:5}received` when done, when it is present Conversations debug log has an additional message about an unknown IQ. Removing this code from Cheogram gets rid of that debug line, but does not change the behaviour otherwise.
I'm spelunking around Conversations' jingle code trying to find all the ways it could fail, but if you have any guesses where I should look that would be super helpful :)
",
1037,https://api.github.com/repos/iNPUTmice/Conversations/issues/3785,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3785/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3785/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3785/events,https://github.com/iNPUTmice/Conversations/pull/3785,638995540,MDExOlB1bGxSZXF1ZXN0NDM0NjU2Njk5,3785,fix local channel discovery if DOMAIN_LOCK is set,"{'login': 'ChaosKid42', 'id': 15179432, 'node_id': 'MDQ6VXNlcjE1MTc5NDMy', 'avatar_url': 'https://avatars0.githubusercontent.com/u/15179432?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ChaosKid42', 'html_url': 'https://github.com/ChaosKid42', 'followers_url': 'https://api.github.com/users/ChaosKid42/followers', 'following_url': 'https://api.github.com/users/ChaosKid42/following{/other_user}', 'gists_url': 'https://api.github.com/users/ChaosKid42/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ChaosKid42/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ChaosKid42/subscriptions', 'organizations_url': 'https://api.github.com/users/ChaosKid42/orgs', 'repos_url': 'https://api.github.com/users/ChaosKid42/repos', 'events_url': 'https://api.github.com/users/ChaosKid42/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ChaosKid42/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-06-15T16:47:43Z,2020-06-15T17:07:18Z,2020-06-15T17:07:12Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/pulls/3785', 'html_url': 'https://github.com/iNPUTmice/Conversations/pull/3785', 'diff_url': 'https://github.com/iNPUTmice/Conversations/pull/3785.diff', 'patch_url': 'https://github.com/iNPUTmice/Conversations/pull/3785.patch'}","I see the following error with local server channel discovery and DOMAIN_LOCK != null:
```
java.lang.IllegalArgumentException: org.jxmpp.stringprep.XmppStringprepException: Localpart must not contain '@'
at eu.siacs.conversations.xmpp.Jid$-CC.ofEscaped(Jid.java:55)
at eu.siacs.conversations.ui.ChannelDiscoveryActivity.joinChannelSearchResult(ChannelDiscoveryActivity.java:266)
at eu.siacs.conversations.ui.ChannelDiscoveryActivity.onChannelSearchResult(ChannelDiscoveryActivity.java:230)
```
This PR is supposed to fix it.",
1038,https://api.github.com/repos/iNPUTmice/Conversations/issues/3784,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3784/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3784/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3784/events,https://github.com/iNPUTmice/Conversations/issues/3784,638426501,MDU6SXNzdWU2Mzg0MjY1MDE=,3784,Is it possible to make calls from conversation available to other clients,"{'login': 'malehovich', 'id': 34166135, 'node_id': 'MDQ6VXNlcjM0MTY2MTM1', 'avatar_url': 'https://avatars3.githubusercontent.com/u/34166135?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/malehovich', 'html_url': 'https://github.com/malehovich', 'followers_url': 'https://api.github.com/users/malehovich/followers', 'following_url': 'https://api.github.com/users/malehovich/following{/other_user}', 'gists_url': 'https://api.github.com/users/malehovich/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/malehovich/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/malehovich/subscriptions', 'organizations_url': 'https://api.github.com/users/malehovich/orgs', 'repos_url': 'https://api.github.com/users/malehovich/repos', 'events_url': 'https://api.github.com/users/malehovich/events{/privacy}', 'received_events_url': 'https://api.github.com/users/malehovich/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-06-14T20:40:43Z,2020-06-14T20:58:57Z,2020-06-14T20:58:57Z,NONE,,,"
Hey. Is it possible to make calls from conversation available to other clients, for example siskin im. Calls from siskin im to conversation go well.",
1039,https://api.github.com/repos/iNPUTmice/Conversations/issues/3783,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3783/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3783/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3783/events,https://github.com/iNPUTmice/Conversations/issues/3783,638382484,MDU6SXNzdWU2MzgzODI0ODQ=,3783,Photo capture issue,"{'login': 'ana-jd', 'id': 49027328, 'node_id': 'MDQ6VXNlcjQ5MDI3MzI4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/49027328?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ana-jd', 'html_url': 'https://github.com/ana-jd', 'followers_url': 'https://api.github.com/users/ana-jd/followers', 'following_url': 'https://api.github.com/users/ana-jd/following{/other_user}', 'gists_url': 'https://api.github.com/users/ana-jd/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ana-jd/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ana-jd/subscriptions', 'organizations_url': 'https://api.github.com/users/ana-jd/orgs', 'repos_url': 'https://api.github.com/users/ana-jd/repos', 'events_url': 'https://api.github.com/users/ana-jd/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ana-jd/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-06-14T16:14:41Z,2020-06-16T15:50:44Z,2020-06-16T15:50:44Z,NONE,,,"#### General information
Photo capture is not functional. Video recording et voice recoding, file attachment function just great but not photo capture.
When i take a photo it is not attached and i can't send it.
* **Version:** 2.8.6+
* **Device:** Sumsung S10
* **Android Version:** Android 9 (stock)
* **Server name:** conversations.im, jabber.at or self hosted
* **Server software:** ejabberd 19.09.1
* **Installed server modules:** Stream Managment, CSI, MAM
* **Conversations source:** HEAD
#### Steps to reproduce
1. …
2. …
#### Expected result
What is the expected output?
#### Actual result
What do you see instead?
#### Debug output
Please post the output of adb logcat. The log should begin with the start of Conversations and include all the
steps it takes to reproduce the problem.
````
adb logcat -s conversations
````",
1040,https://api.github.com/repos/iNPUTmice/Conversations/issues/3782,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3782/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3782/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3782/events,https://github.com/iNPUTmice/Conversations/issues/3782,638166049,MDU6SXNzdWU2MzgxNjYwNDk=,3782,"Confusing ""call connected"" tone/sound","{'login': 'di72nn', 'id': 1114779, 'node_id': 'MDQ6VXNlcjExMTQ3Nzk=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1114779?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/di72nn', 'html_url': 'https://github.com/di72nn', 'followers_url': 'https://api.github.com/users/di72nn/followers', 'following_url': 'https://api.github.com/users/di72nn/following{/other_user}', 'gists_url': 'https://api.github.com/users/di72nn/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/di72nn/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/di72nn/subscriptions', 'organizations_url': 'https://api.github.com/users/di72nn/orgs', 'repos_url': 'https://api.github.com/users/di72nn/repos', 'events_url': 'https://api.github.com/users/di72nn/events{/privacy}', 'received_events_url': 'https://api.github.com/users/di72nn/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,5,2020-06-13T13:53:57Z,2020-07-10T07:38:29Z,2020-07-10T07:38:29Z,NONE,,,"#### General information
The ""call connected"" tone used in Conversations sounds either very similar or exactly like the default ""call **ended**"" tone (at least on Lineage OS, maybe also on AOSP).
A friend of mine also complained about the same problem on MIUI, but I haven't had the chance to check it.
* **Version:** 2.8.6
* **Android Version:** Android 8 and 9 (official Lineage OS, no GApps)
* **Conversations source:** PlayStore
#### Steps to reproduce
1. Initiate a voice call.
2. Pick up on the other end.
#### Expected result
The ""call connected"" tone is different from the default ""call disconnect"" tone.
#### Actual result
A confusing tone is heard.
Thank you very much for the app and for implementing audio calls in particular!",
1041,https://api.github.com/repos/iNPUTmice/Conversations/issues/3781,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3781/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3781/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3781/events,https://github.com/iNPUTmice/Conversations/issues/3781,638086657,MDU6SXNzdWU2MzgwODY2NTc=,3781,No stanza sent for jingle file transfer,"{'login': 'singpolyma', 'id': 12770, 'node_id': 'MDQ6VXNlcjEyNzcw', 'avatar_url': 'https://avatars2.githubusercontent.com/u/12770?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/singpolyma', 'html_url': 'https://github.com/singpolyma', 'followers_url': 'https://api.github.com/users/singpolyma/followers', 'following_url': 'https://api.github.com/users/singpolyma/following{/other_user}', 'gists_url': 'https://api.github.com/users/singpolyma/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/singpolyma/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/singpolyma/subscriptions', 'organizations_url': 'https://api.github.com/users/singpolyma/orgs', 'repos_url': 'https://api.github.com/users/singpolyma/repos', 'events_url': 'https://api.github.com/users/singpolyma/events{/privacy}', 'received_events_url': 'https://api.github.com/users/singpolyma/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,12,2020-06-13T03:27:20Z,2020-07-30T07:13:47Z,2020-06-14T12:42:57Z,CONTRIBUTOR,,,"#### General information
* **Version:** 2.8.6+pcr
* **Device:** Nokia 2
* **Android Version:** Android 7.1.1
* **Server name:** self hosted
* **Server software:** prosody
* **Conversations source:** PlayStore
#### Steps to reproduce
1. add +12266661234@cheogram.com as a contact
2. Select ""choose picture""
3. Choose a picture to send
#### Expected result
The server should receive a Jingle session-initiate stanza
#### Actual result
I currently have logs to show every stanza coming in from my JID, and no stanza comes it at all when I do this. If I send a normal chat message, that stanza shows up in the logs so there's no issue there. And Jingle file transfers from Gajim also work fine.
UI in Conversations says ""waiting..."" forever on the picture, since my server does not respond since it does not receive any stanza.
#### Debug output
```
06-12 23:20:13.257 1826 1826 D conversations: singpolyma@singpolyma.net send ping (action=ui,lowTimeout=false)
06-12 23:20:16.058 1826 1826 D conversations: ConversationsOverviewFragment.onStart()
06-12 23:20:16.069 1826 1826 D conversations: ConversationsOverviewFragment.onResume()
06-12 23:20:16.230 1826 1826 D conversations: app switched into foreground
06-12 23:20:23.741 1826 1826 D conversations: ConversationsOverviewFragment.onPause()
06-12 23:20:57.145 1826 1851 D conversations: singpolyma@singpolyma.net: running mam query with=+12266661234@cheogram.com, end=2020-06-13T03:16:37.546Z, order=REVERSE, catchup=false, ns=urn:xmpp:mam:2
06-12 23:20:57.333 1826 1826 D conversations: action: eu.siacs.conversations.action.VIEW
06-12 23:20:57.342 1826 1826 D conversations: ConversationFragment.onAttach()
06-12 23:20:57.392 1826 1826 D conversations: reInit(hasExtras=true)
06-12 23:20:57.392 1826 1826 D conversations: trimming conversation
06-12 23:20:57.422 1826 1826 D conversations: scrolledToBottomAndNoPending=true
06-12 23:20:57.423 1826 1826 D conversations: jump to first unread message
06-12 23:20:57.523 1826 1826 D conversations: ConversationFragment.onBackendConnected()
06-12 23:20:58.069 1826 2618 D conversations: singpolyma@singpolyma.net: persisted roster in 694ms
06-12 23:20:58.088 1826 1888 D conversations: skipping shortcut update
06-12 23:20:58.240 1826 1888 D conversations: skipping shortcut update
06-12 23:20:58.245 1826 2618 D conversations: singpolyma@singpolyma.net: persisted roster in 175ms
06-12 23:20:59.645 1826 2389 D conversations: singpolyma@singpolyma.net: finished mam after 0(0) messages. messages left=false count=0
06-12 23:20:59.646 1826 2389 D conversations: singpolyma@singpolyma.net: found 0 pending receipt requests
06-12 23:20:59.852 1826 2389 D conversations: singpolyma@singpolyma.net: gained mutual presence subscription with +12266661234@cheogram.com
06-12 23:20:59.911 1826 1888 D conversations: skipping shortcut update
06-12 23:20:59.917 1826 2618 D conversations: singpolyma@singpolyma.net: persisted roster in 219ms
06-12 23:21:00.113 1826 1888 D conversations: skipping shortcut update
06-12 23:21:00.118 1826 2618 D conversations: singpolyma@singpolyma.net: persisted roster in 201ms
06-12 23:21:07.813 1826 1826 D conversations: app switched into background
06-12 23:21:09.565 1826 1826 D conversations: guessMimeTypeFromUriAndMime content://com.android.providers.media.documents/document/image%3A43863 and mime=null
06-12 23:21:09.621 1826 1826 D conversations: reInit(hasExtras=false)
06-12 23:21:09.633 1826 1826 D conversations: scrolledToBottomAndNoPending=true
06-12 23:21:09.633 1826 1826 D conversations: jump to first unread message
06-12 23:21:09.707 1826 1826 D conversations: app switched into foreground
06-12 23:21:09.708 1826 1826 D conversations: ConversationFragment.onBackendConnected()
06-12 23:21:11.713 1826 1826 D conversations: ConversationsActivity.commitAttachments() - attaching image to conversations. CHOOSE_IMAGE
06-12 23:21:11.778 1826 1826 D conversations: singpolyma@singpolyma.net: not compressing picture. sending as file
06-12 23:21:11.779 1826 1826 D conversations: attachFile: type=2
06-12 23:21:11.779 1826 1826 D conversations: counterpart=null
06-12 23:21:11.779 1826 1826 D conversations: guessMimeTypeFromUriAndMime content://com.android.providers.media.documents/document/image%3A43863 and mime=image/jpeg
06-12 23:21:11.826 1826 1826 D conversations: received uri permission for content://com.android.providers.media.documents/document/image%3A43863
06-12 23:22:47.746 1826 1826 D conversations: app switched into background
06-12 23:23:01.205 1826 1826 D conversations: reInit(hasExtras=false)
06-12 23:23:01.245 1826 1826 D conversations: scrolledToBottomAndNoPending=true
06-12 23:23:01.245 1826 1826 D conversations: jump to first unread message
06-12 23:23:01.270 1826 1826 D conversations: load more messages for +12266661234 prior to 2020-06-13T03:21:11.779Z
06-12 23:23:01.321 1826 1826 D conversations: app switched into foreground
06-12 23:23:01.322 1826 1826 D conversations: ConversationFragment.onBackendConnected()
06-12 23:23:18.802 1826 1826 D conversations: ConversationsOverviewFragment.onStart()
06-12 23:23:18.804 1826 1826 D conversations: ConversationsOverviewFragment.onResume()
06-12 23:23:21.489 1826 1826 D conversations: ConversationFragment.onAttach()
06-12 23:23:21.490 1826 1826 D conversations: ConversationsOverviewFragment.onPause()
06-12 23:23:21.557 1826 1826 D conversations: reInit(hasExtras=true)
06-12 23:23:21.557 1826 1826 D conversations: trimming conversation
06-12 23:23:21.602 1826 1826 D conversations: scrolledToBottomAndNoPending=true
06-12 23:23:21.602 1826 1826 D conversations: jump to first unread message
06-12 23:23:21.654 1826 1826 D conversations: load more messages for +12266661234 prior to 2020-06-13T03:21:11.779Z
06-12 23:23:26.912 1826 1826 D conversations: desired=112.0 real=120
06-12 23:23:26.912 1826 1826 D conversations: preliminary count=6
06-12 23:23:27.068 1826 1826 D conversations: desired=112.0 real=115
06-12 23:23:27.068 1826 1826 D conversations: final count 6
06-12 23:23:31.500 1826 1888 D conversations: skipping shortcut update
06-12 23:23:31.502 1826 2618 D conversations: singpolyma@singpolyma.net: persisted roster in 259ms
06-12 23:23:32.591 1826 1826 D conversations: reInit(hasExtras=false)
06-12 23:23:32.604 1826 1826 D conversations: scrolledToBottomAndNoPending=true
06-12 23:23:32.604 1826 1826 D conversations: jump to first unread message
06-12 23:23:32.648 1826 1826 D conversations: load more messages for +12266661234 prior to 2020-06-13T03:21:11.779Z
06-12 23:23:32.667 1826 1826 D conversations: ConversationFragment.onBackendConnected()
06-12 23:23:33.923 1826 1826 D conversations: ConversationsOverviewFragment.onStart()
06-12 23:23:33.924 1826 1826 D conversations: ConversationsOverviewFragment.onResume()
06-12 23:24:00.690 1826 1826 D conversations: ConversationsOverviewFragment.onPause()
```
",
1042,https://api.github.com/repos/iNPUTmice/Conversations/issues/3780,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3780/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3780/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3780/events,https://github.com/iNPUTmice/Conversations/issues/3780,637825134,MDU6SXNzdWU2Mzc4MjUxMzQ=,3780,Media files duplication,"{'login': 'anyuta1166', 'id': 726409, 'node_id': 'MDQ6VXNlcjcyNjQwOQ==', 'avatar_url': 'https://avatars1.githubusercontent.com/u/726409?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/anyuta1166', 'html_url': 'https://github.com/anyuta1166', 'followers_url': 'https://api.github.com/users/anyuta1166/followers', 'following_url': 'https://api.github.com/users/anyuta1166/following{/other_user}', 'gists_url': 'https://api.github.com/users/anyuta1166/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/anyuta1166/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/anyuta1166/subscriptions', 'organizations_url': 'https://api.github.com/users/anyuta1166/orgs', 'repos_url': 'https://api.github.com/users/anyuta1166/repos', 'events_url': 'https://api.github.com/users/anyuta1166/events{/privacy}', 'received_events_url': 'https://api.github.com/users/anyuta1166/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-06-12T15:16:37Z,2020-06-12T15:59:20Z,2020-06-12T15:48:04Z,CONTRIBUTOR,,,"#### General information
* **Version:** 2.8.6
* **Device:** Motorola G7 Plus
* **Android Version:** Android 9 (stock)
* **Server name:** self hosted
* **Server software:** ejabberd 20.04
* **Conversations source:** PlayStore
#### Steps to reproduce
1. Send or receive some media (images, files etc) from a contact using http-upload.
Files are stored in Internal Memory/Conversations folder.
2. Clear the history with this contact and close the conversation.
3. Re-open the chat. History is reloaded from the server. Media files are re-downloaded (either manually or automatically depending on the settings).
Files are downloaded again and stored in Internal Memory/Conversations folder under a different name.
Now we have two identical sets of files in Internal Memory/Conversations folder.
I propose to:
1) either delete the corresponding media files when clearing the history
2) or better solution - keep the files, but do not re-download them. Just use already existing files after reloading the history.
",
1043,https://api.github.com/repos/iNPUTmice/Conversations/issues/3779,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3779/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3779/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3779/events,https://github.com/iNPUTmice/Conversations/issues/3779,637794440,MDU6SXNzdWU2Mzc3OTQ0NDA=,3779,Call button doesn't appear,"{'login': 'anyuta1166', 'id': 726409, 'node_id': 'MDQ6VXNlcjcyNjQwOQ==', 'avatar_url': 'https://avatars1.githubusercontent.com/u/726409?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/anyuta1166', 'html_url': 'https://github.com/anyuta1166', 'followers_url': 'https://api.github.com/users/anyuta1166/followers', 'following_url': 'https://api.github.com/users/anyuta1166/following{/other_user}', 'gists_url': 'https://api.github.com/users/anyuta1166/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/anyuta1166/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/anyuta1166/subscriptions', 'organizations_url': 'https://api.github.com/users/anyuta1166/orgs', 'repos_url': 'https://api.github.com/users/anyuta1166/repos', 'events_url': 'https://api.github.com/users/anyuta1166/events{/privacy}', 'received_events_url': 'https://api.github.com/users/anyuta1166/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,21,2020-06-12T14:33:22Z,2020-06-12T18:20:55Z,2020-06-12T15:57:14Z,CONTRIBUTOR,,,"#### General information
* **Version:** 2.8.6
* **Device:** Samsung Galaxy J5 (2016)
* **Android Version:** Android 7.1.1 (stock)
* **Server name:** self hosted
* **Server software:** ejabberd 20.04
* **Conversations source:** PlayStore
#### Steps to reproduce
1. Open 1:1 chat with a contact who is using Conversations IM
#### Expected result
Call button should appear
#### Actual result
Call buton doesn't appear. There are only encryption button, file sending button and three dots button.
#### Debug output
````
--------- beginning of main
06-12 17:12:08.310 9031 9031 D conversations: ForegroundService: off
06-12 17:12:08.694 9031 9031 D conversations: initializing database...
06-12 17:12:08.696 9031 9031 D conversations: restoring accounts...
06-12 17:12:08.778 9031 9031 D conversations: restoring conversations...
06-12 17:12:08.801 9031 9031 D conversations: finished restoring conversations in 23ms
06-12 17:12:08.820 9031 9080 D conversations: restoring roster...
06-12 17:12:08.848 9031 9031 D conversations: starting file observer
06-12 17:12:08.931 9031 9031 D conversations: ForegroundService: on
06-12 17:12:08.932 9031 9031 D conversations: update unread count to 0
06-12 17:12:08.996 9031 9080 D conversations: restoring messages...
06-12 17:12:09.125 9031 9031 D conversations: ForegroundService: on
06-12 17:12:09.147 9031 9100 D conversations: start merging phone contacts with roster
06-12 17:12:09.148 9031 9100 D conversations: finished merging phone contacts
06-12 17:12:09.215 9031 9110 D conversations: vamp@vampik.ru: connecting
06-12 17:12:09.238 9031 9031 D conversations: resetting all attempt counts
06-12 17:12:09.329 9031 9080 D conversations: finished restoring messages in 333ms
06-12 17:12:09.996 9031 9109 D conversations: updated dynamic shortcuts
06-12 17:12:12.684 9031 9092 D conversations: found 0 changed files on start up. total=16. (139ms)
06-12 17:12:22.247 9031 9110 D conversations: Resolver: [Result{ip='54.38.159.159', hostame='jabber.vampik.ru', port=5223, directTls=true, authenticated=false, priority=0}, Result{ip='54.38.159.159', hostame='jabber.vampik.ru', port=5222, directTls=false, authenticated=false, priority=0}]
06-12 17:12:22.250 9031 9110 D conversations: verified hostname null
06-12 17:12:22.251 9031 9110 D conversations: vamp@vampik.ru: using values from resolver jabber.vampik.ru/54.38.159.159:5223 tls: true
06-12 17:12:22.629 9031 9110 D conversations: vamp@vampik.ru: protocol=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384
06-12 17:12:22.636 9031 9110 D conversations: vamp@vampik.ru/Conversations.keNL: Authenticating with SCRAM-SHA-1
06-12 17:12:23.019 9031 9110 D conversations: vamp@vampik.ru: logged in
06-12 17:12:23.155 9031 9110 D conversations: vamp@vampik.ru: not counting stanza(IqPacket). Not in smacks session.
06-12 17:12:23.158 9031 9110 D conversations: vamp@vampik.ru: starting service discovery
06-12 17:12:23.184 9031 9110 D conversations: vamp@vampik.ru: server caps came from cache
06-12 17:12:23.222 9031 9110 D conversations: vamp@vampik.ru: stream management(3) enabled (resumable)
06-12 17:12:23.438 9031 9110 D conversations: vamp@vampik.ru: Requesting block list
06-12 17:12:23.512 9031 9110 D conversations: Received blocklist update from server
06-12 17:12:24.149 9031 9110 D conversations: AxolotlService (vamp@vampik.ru): Bundle 1470646814 in PEP was current
06-12 17:12:24.150 9031 9110 D conversations: AxolotlService (vamp@vampik.ru): Announcing device 1470646814
06-12 17:12:24.156 9031 9110 D conversations: vamp@vampik.ru: successfully enabled carbons
06-12 17:12:24.220 9031 9110 D conversations: vamp@vampik.ru: online with resource Conversations.keNL
06-12 17:12:24.238 9031 9100 D conversations: start merging phone contacts with roster
06-12 17:12:24.238 9031 9110 D conversations: vamp@vampik.ru: fetching roster
06-12 17:12:24.239 9031 9100 D conversations: finished merging phone contacts
06-12 17:12:24.266 9031 9109 D conversations: skipping shortcut update
06-12 17:12:24.311 9031 9110 D conversations: vamp@vampik.ru: has push support
06-12 17:12:24.314 9031 9100 D conversations: start merging phone contacts with roster
06-12 17:12:24.315 9031 9100 D conversations: finished merging phone contacts
06-12 17:12:24.326 9031 9110 D conversations: vamp@vampik.ru: running mam query with=*, order=NORMAL, after=1591970410385069, catchup=true, ns=urn:xmpp:mam:2
06-12 17:12:24.326 9031 9109 D conversations: skipping shortcut update
06-12 17:12:24.338 9031 9110 D conversations: vamp@vampik.ru sending csi//inactive
06-12 17:12:24.370 9031 9110 D conversations: vamp@vampik.ru: retrieved own device list: [485977735, 1470646814, 1484691201]
06-12 17:12:24.708 9031 9110 D conversations: vamp@vampik.ru: successfully purged offline messages
06-12 17:12:24.708 9031 9109 D conversations: skipping shortcut update
06-12 17:12:24.790 9031 9448 D conversations: vamp@vampik.ru: persisted roster in 82ms
06-12 17:12:24.811 9031 9100 D conversations: start merging phone contacts with roster
06-12 17:12:24.812 9031 9100 D conversations: finished merging phone contacts
06-12 17:12:24.820 9031 9109 D conversations: skipping shortcut update
06-12 17:12:25.509 9031 9110 D conversations: vamp@vampik.ru: making disco request for KWQQsqlerqQGIyKLIQTBsn7Adho= to marina@messag.i.ng/Conversations.rmKw
06-12 17:12:25.678 9031 9110 D conversations: vamp@vampik.ru: making disco request for zcIke+Rk13ah4d1pwDG7bEZsVwA= to tvilla@messag.i.ng/Conversations.YgWY
06-12 17:12:26.201 9031 9110 D conversations: vamp@vampik.ru: finished mam after 0(0) messages. messages left=true count=538
06-12 17:12:26.201 9031 9110 D conversations: vamp@vampik.ru: found 0 pending receipt requests
06-12 17:12:26.344 9031 9110 D conversations: AxolotlService (vamp@vampik.ru): Received PEP device list [485977735, 1470646814, 1484691201] update from vamp@vampik.ru, processing...
06-12 17:12:26.344 9031 9110 D conversations: vamp@vampik.ru: ignoring duplicate own device id list
06-12 17:12:26.384 9031 9110 D conversations: vamp@vampik.ru: 0 bookmarks have been removed
06-12 17:12:26.385 9031 9110 D conversations: vamp@vampik.ru: processing bookmark PEP event
06-12 17:12:26.409 9031 9110 D conversations: vamp@vampik.ru: successfully enabled push on server
06-12 17:12:27.512 9031 9100 D conversations: start merging phone contacts with roster
06-12 17:12:27.513 9031 9100 D conversations: finished merging phone contacts
06-12 17:12:27.521 9031 9109 D conversations: skipping shortcut update
--------- beginning of system
06-12 17:12:36.209 9031 9094 D conversations: deleted file /storage/emulated/0/Android/data/com.google.android.youtube/cache/cache1660803736probe internal=false, database hits=0
06-12 17:12:56.032 9031 9031 D conversations: vamp@vampik.ru send ping (action=eu.siacs.conversations.POST_CONNECTIVITY_CHANGE,lowTimeout=false)
06-12 17:13:01.237 9031 9094 D conversations: deleted file /storage/emulated/0/Android/data/org.telegram.messenger/cache/000000000_999999_temp.jpg internal=false, database hits=0
06-12 17:13:01.254 9031 9094 D conversations: deleted file /storage/emulated/0/Telegram/Telegram Images/000000000_999999.jpg internal=false, database hits=0
06-12 17:13:01.301 9031 9094 D conversations: deleted file /storage/emulated/0/Android/data/org.telegram.messenger/cache/000000000_999999_temp.mp4 internal=false, database hits=0
06-12 17:13:01.307 9031 9094 D conversations: deleted file /storage/emulated/0/Telegram/Telegram Video/000000000_999999.mp4 internal=false, database hits=0
06-12 17:13:01.328 9031 9094 D conversations: deleted file /storage/emulated/0/Android/data/org.telegram.messenger/cache/000000000_999999_temp.ogg internal=false, database hits=0
06-12 17:13:01.335 9031 9094 D conversations: deleted file /storage/emulated/0/Telegram/Telegram Audio/000000000_999999.ogg internal=false, database hits=0
06-12 17:13:01.350 9031 9094 D conversations: deleted file /storage/emulated/0/Android/data/org.telegram.messenger/cache/000000000_999999_temp.doc internal=false, database hits=0
06-12 17:13:01.361 9031 9094 D conversations: deleted file /storage/emulated/0/Telegram/Telegram Documents/000000000_999999.doc internal=false, database hits=0
06-12 17:19:00.034 9031 9031 D conversations: vamp@vampik.ru send ping (action=ping,lowTimeout=false)
06-12 17:23:58.460 9031 9031 D conversations: action: null
06-12 17:23:58.509 9031 9031 D conversations: ConversationsOverviewFragment.onStart()
06-12 17:23:58.512 9031 9031 D conversations: ConversationsOverviewFragment.onResume()
06-12 17:23:58.698 9031 9031 D conversations: vamp@vampik.ru send ping (action=ui,lowTimeout=false)
06-12 17:23:58.826 9031 9031 D conversations: app switched into foreground
06-12 17:23:58.878 9031 9110 D conversations: AxolotlService (vamp@vampik.ru): Received PEP device list [1638024917, 330914352, 1398007000] update from marina@messag.i.ng, processing...
06-12 17:23:58.902 9031 9110 D conversations: AxolotlService (vamp@vampik.ru): Received PEP device list [1677387234, 1597323084] update from tvilla@messag.i.ng, processing...
06-12 17:23:59.128 9031 9031 D conversations: EmojiService succeeded in loading fonts
06-12 17:23:59.160 9031 9031 D conversations: ConversationsOverviewFragment.onPause()
06-12 17:24:01.231 9031 9031 D conversations: ConversationsOverviewFragment.onResume()
06-12 17:24:02.709 9031 9031 D conversations: ConversationFragment.onAttach()
06-12 17:24:02.709 9031 9031 D conversations: ConversationsOverviewFragment.onPause()
06-12 17:24:02.774 9031 9031 D conversations: reInit(hasExtras=true)
06-12 17:24:02.774 9031 9031 D conversations: trimming conversation
06-12 17:24:02.804 9031 9031 D conversations: scrolledToBottomAndNoPending=true
06-12 17:24:02.804 9031 9031 D conversations: jump to first unread message
06-12 17:24:02.982 9031 9031 D conversations: load more messages for Любовь Тихомирова prior to 2020-05-11T08:18:02.114Z
06-12 17:24:02.991 9031 9080 D conversations: vamp@vampik.ru: running mam query with=tvilla@messag.i.ng, end=2020-05-11T08:18:02.114Z, order=REVERSE, catchup=false, ns=urn:xmpp:mam:2
06-12 17:24:03.108 9031 9110 D conversations: skipping duplicate message with tvilla@messag.i.ng/Conversations.V3km. serverMsgIdUpdated=false
06-12 17:24:03.111 9031 9110 D conversations: vamp@vampik.ru: finished mam after 1(0) messages. messages left=false count=1
06-12 17:24:03.111 9031 9110 D conversations: vamp@vampik.ru: found 0 pending receipt requests
06-12 17:24:03.202 9031 9031 D conversations: load more messages for Любовь Тихомирова prior to 2020-05-11T08:18:02.114Z
06-12 17:24:05.967 9031 9031 D conversations: ConversationsOverviewFragment.onStart()
06-12 17:24:05.967 9031 9031 D conversations: ConversationsOverviewFragment.onResume()
06-12 17:24:06.782 9031 9031 D conversations: ConversationFragment.onAttach()
06-12 17:24:06.782 9031 9031 D conversations: ConversationsOverviewFragment.onPause()
06-12 17:24:06.804 9031 9031 D conversations: reInit(hasExtras=true)
06-12 17:24:06.804 9031 9031 D conversations: trimming conversation
06-12 17:24:06.840 9031 9031 D conversations: scrolledToBottomAndNoPending=true
06-12 17:24:06.840 9031 9031 D conversations: jump to first unread message
06-12 17:24:12.409 9031 9031 D conversations: ConversationsOverviewFragment.onStart()
06-12 17:24:12.409 9031 9031 D conversations: ConversationsOverviewFragment.onResume()
06-12 17:24:42.645 9031 9031 D conversations: ConversationsOverviewFragment.onPause()
06-12 17:24:42.737 9031 9031 D conversations: app switched into background
````
My main device is Motorola G7 Plus (Android 9). Call button appears there.
I've installed Conversations IM on the second device (Samsung Galaxy J5 (2016), Android 7.1.1) and call button doesn't appear here. It worth mentioning that I can receive calls. But I cannot make them because there is no button.
",
1044,https://api.github.com/repos/iNPUTmice/Conversations/issues/3778,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3778/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3778/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3778/events,https://github.com/iNPUTmice/Conversations/issues/3778,637184532,MDU6SXNzdWU2MzcxODQ1MzI=,3778,History is not loaded from server if there were too many subsequent calls,"{'login': 'anyuta1166', 'id': 726409, 'node_id': 'MDQ6VXNlcjcyNjQwOQ==', 'avatar_url': 'https://avatars1.githubusercontent.com/u/726409?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/anyuta1166', 'html_url': 'https://github.com/anyuta1166', 'followers_url': 'https://api.github.com/users/anyuta1166/followers', 'following_url': 'https://api.github.com/users/anyuta1166/following{/other_user}', 'gists_url': 'https://api.github.com/users/anyuta1166/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/anyuta1166/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/anyuta1166/subscriptions', 'organizations_url': 'https://api.github.com/users/anyuta1166/orgs', 'repos_url': 'https://api.github.com/users/anyuta1166/repos', 'events_url': 'https://api.github.com/users/anyuta1166/events{/privacy}', 'received_events_url': 'https://api.github.com/users/anyuta1166/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028640246, 'node_id': 'MDU6TGFiZWwyMDI4NjQwMjQ2', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/bug', 'name': 'bug', 'color': 'c95100', 'default': True, 'description': 'Accepted, reproducible bug'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/6', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/6', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/6/labels', 'id': 5502535, 'node_id': 'MDk6TWlsZXN0b25lNTUwMjUzNQ==', 'number': 6, 'title': '2.8.7', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 7, 'state': 'closed', 'created_at': '2020-06-05T06:42:36Z', 'updated_at': '2020-07-08T06:33:50Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:50Z'}",3,2020-06-11T17:06:29Z,2020-06-14T08:34:50Z,2020-06-14T08:34:49Z,CONTRIBUTOR,,,"#### General information
* **Version:** 2.8.6
* **Device:** Motorola G7 Plus
* **Android Version:** Android 9 (stock)
* **Server name:** self hosted
* **Server software:** ejabberd 20.04
* **Conversations source:** PlayStore
#### Steps to reproduce
1. Send or receive some messages to a contact
2. Make or receive some calls from the contact (in my case, it was around 25-30 calls)
3. Clear the history and close the conversation
4. Re-open the conversation with the contact
#### Expected result
Chat history should be loaded from the server.
#### Actual result
History is not loaded from the server.
History is loaded from the server if I manually delete jingle messages from the archive database on the server.",
1045,https://api.github.com/repos/iNPUTmice/Conversations/issues/3777,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3777/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3777/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3777/events,https://github.com/iNPUTmice/Conversations/issues/3777,637142135,MDU6SXNzdWU2MzcxNDIxMzU=,3777,Feature Request: Option to change playback device during calling,"{'login': 'oksjd', 'id': 54463160, 'node_id': 'MDQ6VXNlcjU0NDYzMTYw', 'avatar_url': 'https://avatars0.githubusercontent.com/u/54463160?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/oksjd', 'html_url': 'https://github.com/oksjd', 'followers_url': 'https://api.github.com/users/oksjd/followers', 'following_url': 'https://api.github.com/users/oksjd/following{/other_user}', 'gists_url': 'https://api.github.com/users/oksjd/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/oksjd/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/oksjd/subscriptions', 'organizations_url': 'https://api.github.com/users/oksjd/orgs', 'repos_url': 'https://api.github.com/users/oksjd/repos', 'events_url': 'https://api.github.com/users/oksjd/events{/privacy}', 'received_events_url': 'https://api.github.com/users/oksjd/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-06-11T16:01:46Z,2020-06-11T19:33:32Z,2020-06-11T19:33:32Z,NONE,,,"This option is available on the stock MIUI dialling interface along with other features like call recording.
Consider the following scenario: the Android device is currently connected to an external Bluetooth audio playback device. It might be headphones. loudspeakers or boomboxes. The call is answered on the phone, but the tiny headphones are nowhere to be found, or the audio is embarrassingly coming out of the loudspeaker.
Of course it's possible to just turn off Bluetooth to use the internal speakers, however an option to switch playback device might be more flexible.
Coincidentally Google is also introducing this feature in the Android 11 release.
https://www.xda-developers.com/files/2020/06/Media_Controls.gif",
1046,https://api.github.com/repos/iNPUTmice/Conversations/issues/3776,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3776/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3776/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3776/events,https://github.com/iNPUTmice/Conversations/issues/3776,637128773,MDU6SXNzdWU2MzcxMjg3NzM=,3776,No call buttons in UI,"{'login': 'sonicnkt', 'id': 5454622, 'node_id': 'MDQ6VXNlcjU0NTQ2MjI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/5454622?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/sonicnkt', 'html_url': 'https://github.com/sonicnkt', 'followers_url': 'https://api.github.com/users/sonicnkt/followers', 'following_url': 'https://api.github.com/users/sonicnkt/following{/other_user}', 'gists_url': 'https://api.github.com/users/sonicnkt/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/sonicnkt/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/sonicnkt/subscriptions', 'organizations_url': 'https://api.github.com/users/sonicnkt/orgs', 'repos_url': 'https://api.github.com/users/sonicnkt/repos', 'events_url': 'https://api.github.com/users/sonicnkt/events{/privacy}', 'received_events_url': 'https://api.github.com/users/sonicnkt/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-06-11T15:43:01Z,2020-06-11T16:28:53Z,2020-06-11T16:28:52Z,NONE,,,"#### General information
* **Version:** 2.8.6
* **Device:** multiple
* **Android Version:** Android 7.8.9
* **Server name:** self hosted
* **Server software:** prosody 0.11
* **Installed server modules:** Stream Managment, CSI, MAM
* **Conversations source:** F-Droid
Hi im kinda pulling my hair out here. I just set up a prosody server (quite basic atm) and tested conversations (latest release on f-droid). Everything works great but i wanted to try voice/video calling just for fun. But i don't have any buttons in the ui to initiate such a call.
Like i said my prosody server is quite basic at the moment but as far as i understand calling should work fine atleast in the same network without a stun/turn server setup as its using p2p connections.
Is this function missing in the f-droid version?
Everything else works great.
Sorry if i have missed something but i cant find any information in the ui or old issues.
",
1047,https://api.github.com/repos/iNPUTmice/Conversations/issues/3775,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3775/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3775/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3775/events,https://github.com/iNPUTmice/Conversations/issues/3775,636511074,MDU6SXNzdWU2MzY1MTEwNzQ=,3775,Create RTP End User state for RTP Session not found,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'id': 76683388, 'node_id': 'MDU6TGFiZWw3NjY4MzM4OA==', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/feature', 'name': 'feature', 'color': '128a00', 'default': False, 'description': 'Accepted feature request'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/6', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/6', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/6/labels', 'id': 5502535, 'node_id': 'MDk6TWlsZXN0b25lNTUwMjUzNQ==', 'number': 6, 'title': '2.8.7', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 7, 'state': 'closed', 'created_at': '2020-06-05T06:42:36Z', 'updated_at': '2020-07-08T06:33:50Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:50Z'}",1,2020-06-10T20:02:16Z,2020-06-11T19:24:04Z,2020-06-11T19:24:03Z,OWNER,,,"Apparently when coming from a notification or the ""return to call"" button we race with the destruction of the session which in 2.8.6 makes the app crash (on purpose). This seems to be happening more often than we initially thought and it might be worthwhile to display a human readable error message (managed as RTP End User state) instead.",
1048,https://api.github.com/repos/iNPUTmice/Conversations/issues/3774,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3774/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3774/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3774/events,https://github.com/iNPUTmice/Conversations/issues/3774,635798127,MDU6SXNzdWU2MzU3OTgxMjc=,3774,New private group is displayed as public until server reconnect,"{'login': 'Menelmacar', 'id': 11552677, 'node_id': 'MDQ6VXNlcjExNTUyNjc3', 'avatar_url': 'https://avatars3.githubusercontent.com/u/11552677?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Menelmacar', 'html_url': 'https://github.com/Menelmacar', 'followers_url': 'https://api.github.com/users/Menelmacar/followers', 'following_url': 'https://api.github.com/users/Menelmacar/following{/other_user}', 'gists_url': 'https://api.github.com/users/Menelmacar/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Menelmacar/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Menelmacar/subscriptions', 'organizations_url': 'https://api.github.com/users/Menelmacar/orgs', 'repos_url': 'https://api.github.com/users/Menelmacar/repos', 'events_url': 'https://api.github.com/users/Menelmacar/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Menelmacar/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028640246, 'node_id': 'MDU6TGFiZWwyMDI4NjQwMjQ2', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/bug', 'name': 'bug', 'color': 'c95100', 'default': True, 'description': 'Accepted, reproducible bug'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/7', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/7', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/7/labels', 'id': 5545671, 'node_id': 'MDk6TWlsZXN0b25lNTU0NTY3MQ==', 'number': 7, 'title': '2.8.8', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 8, 'state': 'closed', 'created_at': '2020-06-16T07:44:14Z', 'updated_at': '2020-07-08T06:33:48Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:48Z'}",10,2020-06-09T22:26:53Z,2020-06-22T10:06:07Z,2020-06-22T10:06:07Z,NONE,,,"#### General information
* **Version:** 2.8.6 -fcr
* **Device:** Nexus5x
* **Android Version:** Android 8.1 - lineage
* **Server name:** self hosted
* **Server software:** prosody-trunk 2020-06-08
* **Installed server modules:** all compliance exept cloud notify
* **Conversations source:** F-Droid
#### Steps to reproduce
1. Create new private group
#### Expected result
Private from the beginning
#### Actual result
Group is shown as channel not private
After deactivation and reactivation of account or force close app it is corrected to a private group.
In prosody in the config file the e group is correctly labled as members only from the start.
",
1049,https://api.github.com/repos/iNPUTmice/Conversations/issues/3773,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3773/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3773/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3773/events,https://github.com/iNPUTmice/Conversations/issues/3773,635654335,MDU6SXNzdWU2MzU2NTQzMzU=,3773,Issues previewing and sharing SVGs,"{'login': 'contrapunctus-1', 'id': 8513118, 'node_id': 'MDQ6VXNlcjg1MTMxMTg=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/8513118?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/contrapunctus-1', 'html_url': 'https://github.com/contrapunctus-1', 'followers_url': 'https://api.github.com/users/contrapunctus-1/followers', 'following_url': 'https://api.github.com/users/contrapunctus-1/following{/other_user}', 'gists_url': 'https://api.github.com/users/contrapunctus-1/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/contrapunctus-1/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/contrapunctus-1/subscriptions', 'organizations_url': 'https://api.github.com/users/contrapunctus-1/orgs', 'repos_url': 'https://api.github.com/users/contrapunctus-1/repos', 'events_url': 'https://api.github.com/users/contrapunctus-1/events{/privacy}', 'received_events_url': 'https://api.github.com/users/contrapunctus-1/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-06-09T18:10:39Z,2020-06-09T19:08:40Z,2020-06-09T19:08:40Z,NONE,,,"In Gajim, I sent someone an SVG. In Conversations, it is displayed as a file, not an image. Long press -> Share -> Conversations results in ""This is not an image"", so I can't share it with someone else.
Conversations v2.8.5+fcr from F-Droid",
1050,https://api.github.com/repos/iNPUTmice/Conversations/issues/3772,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3772/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3772/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3772/events,https://github.com/iNPUTmice/Conversations/issues/3772,634663978,MDU6SXNzdWU2MzQ2NjM5Nzg=,3772,using values from resolver example.com:5280 tls: false,"{'login': 'ana-jd', 'id': 49027328, 'node_id': 'MDQ6VXNlcjQ5MDI3MzI4', 'avatar_url': 'https://avatars2.githubusercontent.com/u/49027328?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ana-jd', 'html_url': 'https://github.com/ana-jd', 'followers_url': 'https://api.github.com/users/ana-jd/followers', 'following_url': 'https://api.github.com/users/ana-jd/following{/other_user}', 'gists_url': 'https://api.github.com/users/ana-jd/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ana-jd/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ana-jd/subscriptions', 'organizations_url': 'https://api.github.com/users/ana-jd/orgs', 'repos_url': 'https://api.github.com/users/ana-jd/repos', 'events_url': 'https://api.github.com/users/ana-jd/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ana-jd/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,5,2020-06-08T14:26:02Z,2020-06-08T15:30:15Z,2020-06-08T14:30:23Z,NONE,,,"#### General information
When i login to my ejabberd server i have the issue : stream opening error :
2020-06-08 15:05:36.016 3374-4248/eu.siacs.conversations D/conversations: pt.test2@example.com: using values from resolver example.com:5280 tls: false
On ejabberd side :
2020-06-08 15:13:02.592 [info] <0.835.0>@ejabberd_listener:accept:333 (#Port<0.26851>) Accepted connection 197.129.44.243:55214 -> 10.142.0.2:5280
2020-06-08 15:13:02.592 [info] <0.926.0>@ejabberd_http:init:168 started: {fast_tls,{tlssock,#Port<0.26851>,#Port<0.26852>}}
* **Version:** 2.8.6
* **Device:** Samsung a20s
* **Android Version:** Android 9 (stock)
* **Server name:** self hosted
* **Server software:** ejabberd 17.01
* **Installed server modules:** Stream Managment, CSI, MAM
* **Conversations source:** self build (latest HEAD)
#### Steps to reproduce
1. Build app
2. run it on a smartphone
3. use expert connexion parameters
4. connect
5. I have the issue ""stream opening error""
#### Expected result
What is the expected output?
#### Actual result
What do you see instead?
#### Debug output
Please post the output of adb logcat. The log should begin with the start of Conversations and include all the
steps it takes to reproduce the problem.
````
adb logcat -s conversations
````",
1051,https://api.github.com/repos/iNPUTmice/Conversations/issues/3771,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3771/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3771/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3771/events,https://github.com/iNPUTmice/Conversations/issues/3771,632775794,MDU6SXNzdWU2MzI3NzU3OTQ=,3771,Jingle File Transfer wrong candidate nominated,"{'login': 'lovetox', 'id': 8661218, 'node_id': 'MDQ6VXNlcjg2NjEyMTg=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/8661218?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/lovetox', 'html_url': 'https://github.com/lovetox', 'followers_url': 'https://api.github.com/users/lovetox/followers', 'following_url': 'https://api.github.com/users/lovetox/following{/other_user}', 'gists_url': 'https://api.github.com/users/lovetox/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/lovetox/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/lovetox/subscriptions', 'organizations_url': 'https://api.github.com/users/lovetox/orgs', 'repos_url': 'https://api.github.com/users/lovetox/repos', 'events_url': 'https://api.github.com/users/lovetox/events{/privacy}', 'received_events_url': 'https://api.github.com/users/lovetox/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028640246, 'node_id': 'MDU6TGFiZWwyMDI4NjQwMjQ2', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/bug', 'name': 'bug', 'color': 'c95100', 'default': True, 'description': 'Accepted, reproducible bug'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/6', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/6', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/6/labels', 'id': 5502535, 'node_id': 'MDk6TWlsZXN0b25lNTUwMjUzNQ==', 'number': 6, 'title': '2.8.7', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 7, 'state': 'closed', 'created_at': '2020-06-05T06:42:36Z', 'updated_at': '2020-07-08T06:33:50Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:50Z'}",0,2020-06-06T22:34:49Z,2020-06-07T10:47:48Z,2020-06-07T10:47:48Z,NONE,,,"#### General information
* **Version:** 2.8.6
* **Conversations source:** PlayStore
#### Steps to reproduce
1. Initiate a jingle file transfer session from another client
2. Setup a situation where both clients choose a candidate with equal priority
#### Expected result
Conversations should nominate the candidate that was chosen by the initiator of the jingle session
See https://xmpp.org/extensions/xep-0260.html#complete step 4
#### Actual result
Conversations nominates its own candidate and file transfer fails
Also it does not kill the not-nominated connection, in fact it even accepts data, but never reports the file as complete, because it waits on the other connection.
#### Debug output
I would prefer a code check first, if this yields nothing i would gather debug logs",
1052,https://api.github.com/repos/iNPUTmice/Conversations/issues/3770,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3770/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3770/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3770/events,https://github.com/iNPUTmice/Conversations/issues/3770,632565360,MDU6SXNzdWU2MzI1NjUzNjA=,3770,Show help button on on certain RTP error conditions,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'id': 76683388, 'node_id': 'MDU6TGFiZWw3NjY4MzM4OA==', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/feature', 'name': 'feature', 'color': '128a00', 'default': False, 'description': 'Accepted feature request'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/6', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/6', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/6/labels', 'id': 5502535, 'node_id': 'MDk6TWlsZXN0b25lNTUwMjUzNQ==', 'number': 6, 'title': '2.8.7', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 7, 'state': 'closed', 'created_at': '2020-06-05T06:42:36Z', 'updated_at': '2020-07-08T06:33:50Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:50Z'}",0,2020-06-06T16:19:44Z,2020-06-12T06:26:45Z,2020-06-12T06:26:45Z,OWNER,,,"On Application error and unable to establish connection we should display a help button that leads to https://conversations.im/av/
depends on #3769 (otherwise help button will be shown when call dropped)",
1053,https://api.github.com/repos/iNPUTmice/Conversations/issues/3769,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3769/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3769/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3769/events,https://github.com/iNPUTmice/Conversations/issues/3769,632564259,MDU6SXNzdWU2MzI1NjQyNTk=,3769,Create RTP end user state for call drop because of network,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'id': 76683388, 'node_id': 'MDU6TGFiZWw3NjY4MzM4OA==', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/feature', 'name': 'feature', 'color': '128a00', 'default': False, 'description': 'Accepted feature request'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/6', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/6', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/6/labels', 'id': 5502535, 'node_id': 'MDk6TWlsZXN0b25lNTUwMjUzNQ==', 'number': 6, 'title': '2.8.7', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 7, 'state': 'closed', 'created_at': '2020-06-05T06:42:36Z', 'updated_at': '2020-07-08T06:33:50Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:50Z'}",0,2020-06-06T16:18:04Z,2020-06-12T05:57:28Z,2020-06-12T05:57:28Z,OWNER,,,"Right now the error message for the end user is the same for lost connection and unable to establish one in the first place.
We should probably differentiate the two.",
1054,https://api.github.com/repos/iNPUTmice/Conversations/issues/3768,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3768/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3768/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3768/events,https://github.com/iNPUTmice/Conversations/issues/3768,631774299,MDU6SXNzdWU2MzE3NzQyOTk=,3768,local client's STUN/TURN announcement configration?,"{'login': 'testbird', 'id': 2182535, 'node_id': 'MDQ6VXNlcjIxODI1MzU=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/2182535?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/testbird', 'html_url': 'https://github.com/testbird', 'followers_url': 'https://api.github.com/users/testbird/followers', 'following_url': 'https://api.github.com/users/testbird/following{/other_user}', 'gists_url': 'https://api.github.com/users/testbird/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/testbird/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/testbird/subscriptions', 'organizations_url': 'https://api.github.com/users/testbird/orgs', 'repos_url': 'https://api.github.com/users/testbird/repos', 'events_url': 'https://api.github.com/users/testbird/events{/privacy}', 'received_events_url': 'https://api.github.com/users/testbird/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,7,2020-06-05T17:19:01Z,2020-06-08T23:53:06Z,2020-06-05T17:23:56Z,NONE,,,"As only a fraction of the servers support STUN/TURN discovery, would it be possible to configure a (public or own private) STUN/TURN server in the client(s) to allow calls to work even without explicit server support?
A locally configured STUN/TURN may even be preferred above a server supplied one, e.g. for privacy, performance, or networking reasons.
",
1055,https://api.github.com/repos/iNPUTmice/Conversations/issues/3767,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3767/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3767/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3767/events,https://github.com/iNPUTmice/Conversations/issues/3767,631547521,MDU6SXNzdWU2MzE1NDc1MjE=,3767,Upgrade libwebrtc to M83,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'id': 76683388, 'node_id': 'MDU6TGFiZWw3NjY4MzM4OA==', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/feature', 'name': 'feature', 'color': '128a00', 'default': False, 'description': 'Accepted feature request'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/6', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/6', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/6/labels', 'id': 5502535, 'node_id': 'MDk6TWlsZXN0b25lNTUwMjUzNQ==', 'number': 6, 'title': '2.8.7', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 7, 'state': 'closed', 'created_at': '2020-06-05T06:42:36Z', 'updated_at': '2020-07-08T06:33:50Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:50Z'}",6,2020-06-05T12:18:22Z,2020-06-11T19:22:59Z,2020-06-11T19:22:58Z,OWNER,,,"We should upgrade libwebrtc to M83 (We are currently on M81. There is no M82)
Release notes are here: https://groups.google.com/forum/#!topic/discuss-webrtc/EieMDYtQ9sg
",
1056,https://api.github.com/repos/iNPUTmice/Conversations/issues/3766,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3766/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3766/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3766/events,https://github.com/iNPUTmice/Conversations/issues/3766,631378020,MDU6SXNzdWU2MzEzNzgwMjA=,3766,Investigating related crashes caused by RTP session not finishing properly,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028640246, 'node_id': 'MDU6TGFiZWwyMDI4NjQwMjQ2', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/bug', 'name': 'bug', 'color': 'c95100', 'default': True, 'description': 'Accepted, reproducible bug'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]",,5,2020-06-05T07:34:11Z,2020-07-26T19:26:38Z,2020-07-26T19:26:38Z,OWNER,,,"In the past we have gotten several reports of the UI still thinking that a call is taking place (showing return to call icon instead of make call); but in reality the connection had already been terminated. (see #3755)
Since 2.8.6 we deliberatly make the app crash to get a proper stack trace of what is happening. Here is one:
```
java.lang.IllegalStateException: Transition to ACCEPTED did not call finish
at eu.siacs.conversations.xmpp.jingle.JingleRtpConnection.throwStateTransitionException(JingleRtpConnection.java:782)
at eu.siacs.conversations.ui.RtpSessionActivity.initializeActivityWithRunningRtpSession(RtpSessionActivity.java:435)
at eu.siacs.conversations.ui.RtpSessionActivity.onBackendConnected(RtpSessionActivity.java:284)
at eu.siacs.conversations.ui.XmppActivity$1.onServiceConnected(XmppActivity.java:112)
at android.app.LoadedApk$ServiceDispatcher.doConnected(LoadedApk.java:1652)
at android.app.LoadedApk$ServiceDispatcher$RunConnection.run(LoadedApk.java:1681)
at android.os.Handler.handleCallback(Handler.java:790)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6494)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)
Caused by: eu.siacs.conversations.xmpp.jingle.JingleRtpConnection$StateTransitionException
at eu.siacs.conversations.xmpp.jingle.JingleRtpConnection.transition(JingleRtpConnection.java:1008)
at eu.siacs.conversations.xmpp.jingle.JingleRtpConnection.transition(JingleRtpConnection.java:1001)
at eu.siacs.conversations.xmpp.jingle.JingleRtpConnection.receiveAccept(JingleRtpConnection.java:503)
at eu.siacs.conversations.xmpp.jingle.JingleRtpConnection.deliveryMessage(JingleRtpConnection.java:484)
at eu.siacs.conversations.xmpp.jingle.JingleConnectionManager.deliverMessage(JingleConnectionManager.java:206)
at eu.siacs.conversations.parser.MessageParser.onMessagePacketReceived(MessageParser.java:843)
at eu.siacs.conversations.xmpp.XmppConnection.processMessage(XmppConnection.java:771)
at eu.siacs.conversations.xmpp.XmppConnection.processStream(XmppConnection.java:637)
at eu.siacs.conversations.xmpp.XmppConnection.processStream(XmppConnection.java:483)
at eu.siacs.conversations.xmpp.XmppConnection.switchOverToTls(XmppConnection.java:801)
at eu.siacs.conversations.xmpp.XmppConnection.processStream(XmppConnection.java:467)
at eu.siacs.conversations.xmpp.XmppConnection.connect(XmppConnection.java:375)
at eu.siacs.conversations.xmpp.XmppConnection.run(XmppConnection.java:454)
at java.lang.Thread.run(Thread.java:764)
```
However that doesn’t fully explain this as there is in fact a call to finish() later in the code. We should probably wait for more crashes to see a pattern.",
1057,https://api.github.com/repos/iNPUTmice/Conversations/issues/3765,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3765/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3765/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3765/events,https://github.com/iNPUTmice/Conversations/issues/3765,631352918,MDU6SXNzdWU2MzEzNTI5MTg=,3765,Crash when trying to finish Jingle File Transfer connection,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028640246, 'node_id': 'MDU6TGFiZWwyMDI4NjQwMjQ2', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/bug', 'name': 'bug', 'color': 'c95100', 'default': True, 'description': 'Accepted, reproducible bug'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/6', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/6', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/6/labels', 'id': 5502535, 'node_id': 'MDk6TWlsZXN0b25lNTUwMjUzNQ==', 'number': 6, 'title': '2.8.7', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 7, 'state': 'closed', 'created_at': '2020-06-05T06:42:36Z', 'updated_at': '2020-07-08T06:33:50Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:50Z'}",0,2020-06-05T06:43:40Z,2020-06-07T13:01:51Z,2020-06-07T13:01:51Z,OWNER,,,"```
java.lang.IllegalStateException:
at eu.siacs.conversations.xmpp.jingle.JingleConnectionManager.finishConnection (JingleConnectionManager.java:452)
at eu.siacs.conversations.xmpp.jingle.JingleFileTransferConnection.fail (JingleFileTransferConnection.java:1083)
at eu.siacs.conversations.xmpp.jingle.JingleFileTransferConnection.lambda$new$0$JingleFileTransferConnection (JingleFileTransferConnection.java:103)
at eu.siacs.conversations.xmpp.jingle.-$$Lambda$JingleFileTransferConnection$yRxDBlaLfOQrqmEZho3Pa0TjHio.onIqPacketReceived (Unknown Source:2)
at eu.siacs.conversations.xmpp.XmppConnection.clearIqCallbacks (XmppConnection.java:1107)
at eu.siacs.conversations.xmpp.XmppConnection.sendBindRequest (XmppConnection.java:1038)
at eu.siacs.conversations.xmpp.XmppConnection.processStreamFeatures (XmppConnection.java:855)
at eu.siacs.conversations.xmpp.XmppConnection.processStream (XmppConnection.java:465)
at eu.siacs.conversations.xmpp.XmppConnection.processStream (XmppConnection.java:483)
at eu.siacs.conversations.xmpp.XmppConnection.switchOverToTls (XmppConnection.java:801)
at eu.siacs.conversations.xmpp.XmppConnection.processStream (XmppConnection.java:467)
at eu.siacs.conversations.xmpp.XmppConnection.connect (XmppConnection.java:375)
at eu.siacs.conversations.xmpp.XmppConnection.run (XmppConnection.java:454)
at java.lang.Thread.run (Thread.java:919)
```",
1058,https://api.github.com/repos/iNPUTmice/Conversations/issues/3764,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3764/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3764/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3764/events,https://github.com/iNPUTmice/Conversations/issues/3764,629601694,MDU6SXNzdWU2Mjk2MDE2OTQ=,3764,urn:xmpp:jingle:apps:file-transfer:5,"{'login': 'singpolyma', 'id': 12770, 'node_id': 'MDQ6VXNlcjEyNzcw', 'avatar_url': 'https://avatars2.githubusercontent.com/u/12770?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/singpolyma', 'html_url': 'https://github.com/singpolyma', 'followers_url': 'https://api.github.com/users/singpolyma/followers', 'following_url': 'https://api.github.com/users/singpolyma/following{/other_user}', 'gists_url': 'https://api.github.com/users/singpolyma/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/singpolyma/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/singpolyma/subscriptions', 'organizations_url': 'https://api.github.com/users/singpolyma/orgs', 'repos_url': 'https://api.github.com/users/singpolyma/repos', 'events_url': 'https://api.github.com/users/singpolyma/events{/privacy}', 'received_events_url': 'https://api.github.com/users/singpolyma/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-06-03T00:25:38Z,2020-06-03T05:47:11Z,2020-06-03T05:47:10Z,CONTRIBUTOR,,,It seems that only `urn:xmpp:jingle:apps:file-transfer:3` is used by Conversations (latest from play store) -- it appears that that was the version in 2011/2012 -- any reason it's not been updated to also offer 4 or 5?,
1059,https://api.github.com/repos/iNPUTmice/Conversations/issues/3763,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3763/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3763/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3763/events,https://github.com/iNPUTmice/Conversations/pull/3763,629124817,MDExOlB1bGxSZXF1ZXN0NDI2NTIyNTIz,3763,Fix typo,"{'login': 'licaon-kter', 'id': 2282799, 'node_id': 'MDQ6VXNlcjIyODI3OTk=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2282799?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/licaon-kter', 'html_url': 'https://github.com/licaon-kter', 'followers_url': 'https://api.github.com/users/licaon-kter/followers', 'following_url': 'https://api.github.com/users/licaon-kter/following{/other_user}', 'gists_url': 'https://api.github.com/users/licaon-kter/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/licaon-kter/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/licaon-kter/subscriptions', 'organizations_url': 'https://api.github.com/users/licaon-kter/orgs', 'repos_url': 'https://api.github.com/users/licaon-kter/repos', 'events_url': 'https://api.github.com/users/licaon-kter/events{/privacy}', 'received_events_url': 'https://api.github.com/users/licaon-kter/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-06-02T11:25:27Z,2020-06-02T12:25:31Z,2020-06-02T12:25:31Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/pulls/3763', 'html_url': 'https://github.com/iNPUTmice/Conversations/pull/3763', 'diff_url': 'https://github.com/iNPUTmice/Conversations/pull/3763.diff', 'patch_url': 'https://github.com/iNPUTmice/Conversations/pull/3763.patch'}",,
1060,https://api.github.com/repos/iNPUTmice/Conversations/issues/3762,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3762/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3762/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3762/events,https://github.com/iNPUTmice/Conversations/issues/3762,629073538,MDU6SXNzdWU2MjkwNzM1Mzg=,3762,Failed external Video Call with Conversations (Port-Issue?),"{'login': 'JohnSheridan1', 'id': 66305306, 'node_id': 'MDQ6VXNlcjY2MzA1MzA2', 'avatar_url': 'https://avatars1.githubusercontent.com/u/66305306?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JohnSheridan1', 'html_url': 'https://github.com/JohnSheridan1', 'followers_url': 'https://api.github.com/users/JohnSheridan1/followers', 'following_url': 'https://api.github.com/users/JohnSheridan1/following{/other_user}', 'gists_url': 'https://api.github.com/users/JohnSheridan1/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JohnSheridan1/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JohnSheridan1/subscriptions', 'organizations_url': 'https://api.github.com/users/JohnSheridan1/orgs', 'repos_url': 'https://api.github.com/users/JohnSheridan1/repos', 'events_url': 'https://api.github.com/users/JohnSheridan1/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JohnSheridan1/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,5,2020-06-02T10:03:49Z,2020-06-02T10:55:26Z,2020-06-02T10:36:12Z,NONE,,,"#### General information
* **Version:** 2.8.4
* **Device:** Lenovo Vibe+ ZUK / Wiko / Samsung
* **Android Version:** Android 6 (stock), Android 9 Lineage, Android 5
* **Server name:** self hosted, fixed IP
* **Server software:** openfire 4.5.1
* **Installed server modules:** Openfire Meetings
* **Conversations source:** F-Droid
#### Steps to reproduce
1. Openfire Server 4.5.1 behind a firewall to the Internet (Open Ports: 5222, 5223, 7777, 7443, 5262, 5263, 4443, 5275, 5276, 10000, 50000-50250) with fixed IP_Address
2. Conversations 2.8.4 on Mobiles
3. Video Call inside the Intranet ok, from outside it looks like that the other device is found and you can connect (Fon is ringing) but if you want to take the call there comes the message ""Connection not possible"" and abort. For a test we disabled the firewall, but even this doesn't fix the problem (Text-Messages (OMEMO) works fine).
#### Expected result
Inside the same IP-Range Video-Calls are working. What can be the reason and finally the result, that Conversations doesn't work if one of the Fones is outside the same IP-Range?
#### Actual result
No Video-Call outside Intranet possible.
",
1061,https://api.github.com/repos/iNPUTmice/Conversations/issues/3761,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3761/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3761/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3761/events,https://github.com/iNPUTmice/Conversations/issues/3761,627938477,MDU6SXNzdWU2Mjc5Mzg0Nzc=,3761,message notice tone must be a ringtone,"{'login': 'ulfi', 'id': 482587, 'node_id': 'MDQ6VXNlcjQ4MjU4Nw==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/482587?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ulfi', 'html_url': 'https://github.com/ulfi', 'followers_url': 'https://api.github.com/users/ulfi/followers', 'following_url': 'https://api.github.com/users/ulfi/following{/other_user}', 'gists_url': 'https://api.github.com/users/ulfi/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ulfi/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ulfi/subscriptions', 'organizations_url': 'https://api.github.com/users/ulfi/orgs', 'repos_url': 'https://api.github.com/users/ulfi/repos', 'events_url': 'https://api.github.com/users/ulfi/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ulfi/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,7,2020-05-31T10:50:46Z,2020-06-02T06:01:59Z,2020-06-02T06:01:59Z,NONE,,,"#### General information
* **Version:** 2.8.4 + fcr
* **Device:** Xperia XZ2
* **Android Version:** Android 10 (stock) (build 52.1.A.2.1)
* **Server name:** jabber-germany.de
* **Server software:** not known
* **Installed server modules:** Stream Managment, CSI, MAM
* **Conversations source:** F-Droid
#### Steps to reproduce
No notifikation sound (tone) after update of Conversations including phone fuction or last android 10 security update.
Selecton of notification tone no more possible. On both, notification and ringtone I can only select ringtones. If I do it on notification, which each message there will be an cintinous ringtone (several times repeated)
#### Expected result
Notigication tone which will be only once repeatet
#### Actual result
If I do it on notification, which each message there will be an cintinous ringtone (several times repeated)
#### Debug output
n/a",
1062,https://api.github.com/repos/iNPUTmice/Conversations/issues/3760,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3760/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3760/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3760/events,https://github.com/iNPUTmice/Conversations/pull/3760,627378509,MDExOlB1bGxSZXF1ZXN0NDI1MTk0Mjgy,3760,update french translation,"{'login': 'Hugo-Trentesaux', 'id': 18427584, 'node_id': 'MDQ6VXNlcjE4NDI3NTg0', 'avatar_url': 'https://avatars1.githubusercontent.com/u/18427584?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Hugo-Trentesaux', 'html_url': 'https://github.com/Hugo-Trentesaux', 'followers_url': 'https://api.github.com/users/Hugo-Trentesaux/followers', 'following_url': 'https://api.github.com/users/Hugo-Trentesaux/following{/other_user}', 'gists_url': 'https://api.github.com/users/Hugo-Trentesaux/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Hugo-Trentesaux/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Hugo-Trentesaux/subscriptions', 'organizations_url': 'https://api.github.com/users/Hugo-Trentesaux/orgs', 'repos_url': 'https://api.github.com/users/Hugo-Trentesaux/repos', 'events_url': 'https://api.github.com/users/Hugo-Trentesaux/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Hugo-Trentesaux/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-05-29T16:10:55Z,2020-05-29T16:19:46Z,2020-05-29T16:19:03Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/pulls/3760', 'html_url': 'https://github.com/iNPUTmice/Conversations/pull/3760', 'diff_url': 'https://github.com/iNPUTmice/Conversations/pull/3760.diff', 'patch_url': 'https://github.com/iNPUTmice/Conversations/pull/3760.patch'}","The verb ""mark"" was translated into a participe (marked), not an infinitive.",
1063,https://api.github.com/repos/iNPUTmice/Conversations/issues/3759,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3759/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3759/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3759/events,https://github.com/iNPUTmice/Conversations/issues/3759,627377376,MDU6SXNzdWU2MjczNzczNzY=,3759,Call disconnects after less than a minute,"{'login': 'gjedeer', 'id': 315648, 'node_id': 'MDQ6VXNlcjMxNTY0OA==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/315648?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/gjedeer', 'html_url': 'https://github.com/gjedeer', 'followers_url': 'https://api.github.com/users/gjedeer/followers', 'following_url': 'https://api.github.com/users/gjedeer/following{/other_user}', 'gists_url': 'https://api.github.com/users/gjedeer/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/gjedeer/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/gjedeer/subscriptions', 'organizations_url': 'https://api.github.com/users/gjedeer/orgs', 'repos_url': 'https://api.github.com/users/gjedeer/repos', 'events_url': 'https://api.github.com/users/gjedeer/events{/privacy}', 'received_events_url': 'https://api.github.com/users/gjedeer/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-05-29T16:09:00Z,2020-05-30T17:23:37Z,2020-05-29T16:15:46Z,CONTRIBUTOR,,,"#### General information
```
build.board: universal9810
build.bootloader: G960FXXU2BRGA
build.brand: samsung
build.cpu_abi: arm64-v8a
build.cpu_abi2:
build.device: starlte
build.display: lineage_starlte-userdebug 8.1.0 OPM7.181005.003 15c9130f7a
build.fingerprint: samsung/starltexx/starlte:8.0.0/R16NW/G960FXXU1BRE5:user/release-keys
build.hardware: samsungexynos9810
build.host: lineage-runner
build.id: OPM7.181005.003
build.manufacturer: samsung
build.model: SM-G960F
build.product: starltexx
build.radio: G960FXXU2BRG8
build.serial: 21bb86b235037ece
build.tags: release-keys
build.time: 1541497171000
build.type: user
build.user: gitlab-runner
version.codename: REL
version.incremental: 15c9130f7a
version.release: 8.1.0
version.sdk_int: 27
```
* **Server name:** self hosted
* **Server software:** prosody 0.11.5
* **Installed server modules:** turncredentials
* **Conversations source:** F-Droid
* **Conversations version:** 2.8.4 fcr
#### Steps to reproduce
1. Make a video call
2. Wait
#### Expected result
The call continues
#### Actual result
The call is dropped with an error. When this happens, it's always after just a few seconds, this time is I think the longest before it happened - after 30 seconds.
This happened numerous times at random and was hard to reproduce. Wifi and 4G. Finally I was able to capture the log after this happened. This time the other phone was next to me, none of the phones have disconnected from the wifi.
#### Debug output
Please post the output of adb logcat. The log should begin with the start of Conversations and include all the
steps it takes to reproduce the problem.
````
05-29 12:49:23.762 D/ZenLog (5604): intercepted: 0|eu.siacs.conversations|2097152|3f4770f0-5019-43a7-b67d-d98dfbf94ee8|10082,alarmsOnly
05-29 13:01:02.548 D/ZenLog (5604): intercepted: 0|eu.siacs.conversations|2097152|8db6985c-b203-476d-87d6-ece7e6bb99b7|10082,alarmsOnly
05-29 13:27:09.922 D/ZenLog (5604): intercepted: 0|eu.siacs.conversations|2097152|8db6985c-b203-476d-87d6-ece7e6bb99b7|10082,alarmsOnly
05-29 13:27:30.207 D/ZenLog (5604): intercepted: 0|eu.siacs.conversations|2097152|8db6985c-b203-476d-87d6-ece7e6bb99b7|10082,alarmsOnly
05-29 15:56:00.564 D/ZenLog (5604): intercepted: 0|eu.siacs.conversations|2097152|47fc74e8-1594-46e2-bc9b-ed628e771044|10082,alarmsOnly
05-29 16:10:36.169 D/ZenLog (5604): intercepted: 0|eu.siacs.conversations|2097152|47fc74e8-1594-46e2-bc9b-ed628e771044|10082,alarmsOnly
05-29 16:21:39.238 D/ZenLog (5604): intercepted: 0|eu.siacs.conversations|2097152|8db6985c-b203-476d-87d6-ece7e6bb99b7|10082,alarmsOnly
05-29 16:34:05.503 I/ActivityManager(5604): START u0 {act=eu.siacs.conversations.action.VIEW cmp=eu.siacs.conversations/.ui.ConversationsActivity (has extras)} from uid 10082
05-29 16:34:05.525 W/ActivityManager(5604): startActivity called from non-Activity context; forcing Intent.FLAG_ACTIVITY_NEW_TASK for: Intent { act=eu.siacs.conversations.action.VIEW cmp=eu.siacs.conversations/.ui.ConversationsActivity (has extras) }
05-29 16:59:04.503 D/ZenLog (5604): intercepted: 0|eu.siacs.conversations|2097152|47fc74e8-1594-46e2-bc9b-ed628e771044|10082,alarmsOnly
05-29 16:59:04.533 D/ZenLog (5604): intercepted: 0|eu.siacs.conversations|2097152|null|10082,alarmsOnly
05-29 17:19:51.102 I/ActivityManager(5604): START u0 {act=eu.siacs.conversations.action.VIEW cmp=eu.siacs.conversations/.ui.ConversationsActivity (has extras)} from uid 10082
05-29 17:19:51.102 W/ActivityManager(5604): startActivity called from non-Activity context; forcing Intent.FLAG_ACTIVITY_NEW_TASK for: Intent { act=eu.siacs.conversations.action.VIEW cmp=eu.siacs.conversations/.ui.ConversationsActivity (has extras) }
05-29 17:28:45.864 I/ActivityManager(5604): START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=eu.siacs.conversations/.ui.ConversationActivity bnds=[312,2377][584,2785]} from uid 10027
05-29 17:28:59.883 I/NotificationService(5604): cancelToast pkg=eu.siacs.conversations callback=android.app.ITransientNotification$Stub$Proxy@4d59bfc
05-29 17:31:29.956 D/MediaProvider(23660): Reading images for Conversations Images
05-29 17:31:31.088 D/MediaProvider(23660): Reading videos for Conversations Videos
05-29 17:31:31.188 V/ArbitraryDataProvider(23660): Updating arbitrary data with cloud id: global key: media_folders value: {""imageMediaFolders"":[(...)],""videoMediaFolders"":[]}
05-29 17:31:36.056 V/chatty (19471): uid=10082(eu.siacs.conversations) expire 14 lines
05-29 17:31:41.077 E/BufferQueueProducer(4044): [eu.siacs.conversations/eu.siacs.conversations.ui.ConversationsActivity#0] disconnect: not connected (req=1)
05-29 17:31:41.077 V/chatty (19471): uid=10082(eu.siacs.conversations) RenderThread expire 10 lines
05-29 17:32:14.181 V/chatty (19471): uid=10082(eu.siacs.conversations) expire 3 lines
05-29 17:32:16.611 V/chatty (19471): uid=10082(eu.siacs.conversations) expire 3 lines
05-29 17:32:16.775 D/ZenLog (5604): intercepted: 0|eu.siacs.conversations|2097152|47fc74e8-1594-46e2-bc9b-ed628e771044|10082,alarmsOnly
05-29 17:32:16.787 D/ZenLog (5604): intercepted: 0|eu.siacs.conversations|2097152|null|10082,alarmsOnly
05-29 17:32:53.617 V/chatty (19471): uid=10082(eu.siacs.conversations) expire 56 lines
05-29 17:33:05.357 E/BufferQueueProducer(4044): [eu.siacs.conversations/eu.siacs.conversations.ui.ConversationsActivity#0] disconnect: not connected (req=1)
05-29 17:33:06.080 I/ActivityManager(5604): START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=eu.siacs.conversations/.ui.ConversationActivity bnds=[312,2377][584,2785]} from uid 10027
05-29 17:33:06.159 V/chatty (19471): uid=10082(eu.siacs.conversations) expire 10 lines
05-29 17:33:10.103 E/BufferQueueProducer(4044): [eu.siacs.conversations/eu.siacs.conversations.ui.ConversationsActivity#0] disconnect: not connected (req=1)
05-29 17:33:25.505 V/chatty (19471): uid=10082(eu.siacs.conversations) expire 32 lines
05-29 17:33:25.541 V/chatty (19471): uid=10082(eu.siacs.conversations) Thread-318 expire 19 lines
05-29 17:33:29.695 I/ActivityManager(5604): START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=eu.siacs.conversations/.ui.ConversationActivity bnds=[312,2377][584,2785]} from uid 10027
05-29 17:33:33.491 I/ActivityManager(5604): START u0 {act=action_make_video_call flg=0x10008000 cmp=eu.siacs.conversations/.ui.RtpSessionActivity (has extras)} from uid 10082
05-29 17:33:33.697 E/BufferQueueProducer(4044): [eu.siacs.conversations/eu.siacs.conversations.ui.ConversationsActivity#0] disconnect: not connected (req=1)
05-29 17:33:33.697 V/chatty (19471): uid=10082(eu.siacs.conversations) RenderThread expire 1 line
05-29 17:33:33.698 I/ActivityManager(5604): Displayed eu.siacs.conversations/.ui.RtpSessionActivity: +182ms (total +3m44s17ms)
05-29 17:33:33.877 V/chatty (19471): uid=10082(eu.siacs.conversations) expire 1 line
05-29 17:33:35.039 V/chatty (19471): uid=10082(eu.siacs.conversations) AudioTrack expire 4 lines
05-29 17:33:36.024 V/chatty (19471): uid=10082(eu.siacs.conversations) Thread-318 expire 285 lines
05-29 17:33:42.584 I/NotificationService(5604): Cannot find enqueued record for key: 0|eu.siacs.conversations|4194304|null|10082
05-29 17:33:42.596 D/ZenLog (5604): intercepted: 0|eu.siacs.conversations|10485760|null|10082,alarmsOnly
05-29 17:33:42.814 V/chatty (19471): uid=10082(eu.siacs.conversations) expire 104 lines
05-29 17:33:42.835 I/MediaFocusControl(5604): requestAudioFocus() from uid/pid 10082/19471 clientId=android.media.AudioManager@af61f98eu.siacs.conversations.services.AppRTCAudioManager$1@ffbf3f1 callingPack=eu.siacs.conversations req=2 flags=0x0 sdk=28
05-29 17:33:42.918 V/chatty (19471): uid=10082(eu.siacs.conversations) signaling_threa expire 32 lines
05-29 17:33:42.918 V/chatty (19471): uid=10082(eu.siacs.conversations) network_thread expire 3 lines
05-29 17:33:42.918 V/chatty (19471): uid=10082(eu.siacs.conversations) worker_thread - expire 42 lines
05-29 17:33:42.935 V/chatty (19471): uid=10082(eu.siacs.conversations) webrtc expire 23 lines
05-29 17:33:42.959 V/chatty (19471): uid=10082(eu.siacs.conversations) expire 3 lines
05-29 17:33:42.959 D/ZenLog (5604): intercepted: 0|eu.siacs.conversations|4194304|null|10082,alarmsOnly
05-29 17:33:42.982 W/StatusBar(5805): removeNotification for unknown key: 0|eu.siacs.conversations|4194304|null|10082
05-29 17:33:43.015 V/chatty (19471): uid=10082(eu.siacs.conversations) ConnectivityThr expire 3 lines
05-29 17:33:43.043 V/chatty (19471): uid=10082(eu.siacs.conversations) Binder:19471_5 expire 1 line
05-29 17:33:43.970 D/ZenLog (5604): intercepted: 0|eu.siacs.conversations|4194304|null|10082,alarmsOnly
05-29 17:33:43.980 W/StatusBar(5805): removeNotification for unknown key: 0|eu.siacs.conversations|4194304|null|10082
05-29 17:33:44.049 V/chatty (19471): uid=10082(eu.siacs.conversations) expire 1 line
05-29 17:33:44.060 V/chatty (19471): uid=10082(eu.siacs.conversations) expire 2 lines
05-29 17:33:44.091 V/chatty (19471): uid=10082(eu.siacs.conversations) expire 19 lines
05-29 17:33:44.097 V/chatty (19471): uid=10082(eu.siacs.conversations) expire 8 lines
05-29 17:33:44.267 V/chatty (19471): uid=10082(eu.siacs.conversations) expire 2 lines
05-29 17:33:44.292 V/chatty (19471): uid=10082(eu.siacs.conversations) expire 8 lines
05-29 17:33:44.352 V/chatty (19471): uid=10082(eu.siacs.conversations) expire 3 lines
05-29 17:33:44.423 D/SurfaceFlinger(4044): duplicate layer name: changing SurfaceView - eu.siacs.conversations/eu.siacs.conversations.ui.RtpSessionActivity to SurfaceView - eu.siacs.conversations/eu.siacs.conversations.ui.RtpSessionActivity#1
05-29 17:33:44.425 D/SurfaceFlinger(4044): duplicate layer name: changing Background for - SurfaceView - eu.siacs.conversations/eu.siacs.conversations.ui.RtpSessionActivity to Background for - SurfaceView - eu.siacs.conversations/eu.siacs.conversations.ui.RtpSessionActivity#1
05-29 17:33:44.430 V/chatty (19471): uid=10082(eu.siacs.conversations) expire 2 lines
05-29 17:33:44.431 V/chatty (19471): uid=10082(eu.siacs.conversations) expire 2 lines
05-29 17:33:44.459 V/chatty (19471): uid=10082(eu.siacs.conversations) expire 8 lines
05-29 17:33:44.532 V/chatty (19471): uid=10082(eu.siacs.conversations) expire 6 lines
05-29 17:33:44.589 V/chatty (19471): uid=10082(eu.siacs.conversations) expire 2 lines
05-29 17:33:44.605 V/chatty (19471): uid=10082(eu.siacs.conversations) expire 8 lines
05-29 17:33:44.746 V/chatty (19471): uid=10082(eu.siacs.conversations) expire 2 lines
05-29 17:33:44.767 V/chatty (19471): uid=10082(eu.siacs.conversations) expire 9 lines
05-29 17:33:44.783 V/chatty (19471): uid=10082(eu.siacs.conversations) expire 1 line
05-29 17:33:54.166 D/MediaProvider(23660): Reading images for Conversations Images
05-29 17:33:55.485 D/MediaProvider(23660): Reading videos for Conversations Videos
05-29 17:33:55.604 V/ArbitraryDataProvider(23660): Updating arbitrary data with cloud id: global key: media_folders value: {""imageMediaFolders"":(.....)],""videoMediaFolders"":[]}
05-29 17:34:12.894 D/conversations(19471): toggle forced foreground service after receiving event (action=eu.siacs.conversations.POST_CONNECTIVITY_CHANGE)
05-29 17:34:12.901 D/conversations(19471): ForegroundService: on
05-29 17:34:12.903 I/NotificationService(5604): Cannot find enqueued record for key: 0|eu.siacs.conversations|4194304|null|10082
05-29 17:34:12.903 D/conversations(19471): my_user@my_server send ping (action=eu.siacs.conversations.POST_CONNECTIVITY_CHANGE,lowTimeout=false)
05-29 17:34:12.906 D/conversations(19471): toggle forced foreground service after receiving event (action=ping)
05-29 17:34:12.912 D/conversations(19471): ForegroundService: on
05-29 17:34:12.913 I/NotificationService(5604): Cannot find enqueued record for key: 0|eu.siacs.conversations|4194304|null|10082
05-29 17:34:16.824 D/conversations(19471): my_user@my_server: PeerConnectionState changed to DISCONNECTED
05-29 17:34:16.832 D/conversations(19471): my_user@my_server: PeerConnectionState changed to CLOSED
05-29 17:34:16.833 D/conversations(19471): onJingleRtpConnectionUpdate(ENDING_CALL)
05-29 17:34:16.839 E/BufferQueueProducer(4044): [SurfaceView - eu.siacs.conversations/eu.siacs.conversations.ui.RtpSessionActivity#0] disconnect: not connected (req=1)
05-29 17:34:16.840 E/SurfaceFlinger(4044): Failed to find layer (SurfaceView - eu.siacs.conversations/eu.siacs.conversations.ui.RtpSessionActivity#0) in layer parent (no-parent).
05-29 17:34:16.841 E/SurfaceFlinger(4044): Failed to find layer (Background for - SurfaceView - eu.siacs.conversations/eu.siacs.conversations.ui.RtpSessionActivity#0) in layer parent (no-parent).
05-29 17:34:16.848 E/BufferQueueProducer(4044): [SurfaceView - eu.siacs.conversations/eu.siacs.conversations.ui.RtpSessionActivity#1] disconnect: not connected (req=1)
05-29 17:34:16.849 E/SurfaceFlinger(4044): Failed to find layer (SurfaceView - eu.siacs.conversations/eu.siacs.conversations.ui.RtpSessionActivity#1) in layer parent (no-parent).
05-29 17:34:16.849 E/SurfaceFlinger(4044): Failed to find layer (Background for - SurfaceView - eu.siacs.conversations/eu.siacs.conversations.ui.RtpSessionActivity#1) in layer parent (no-parent).
05-29 17:34:17.126 D/conversations(19471): stop
05-29 17:34:17.126 D/conversations(19471): my_user@my_server: transitioned into TERMINATED_CONNECTIVITY_ERROR
05-29 17:34:17.127 D/conversations(19471): onJingleRtpConnectionUpdate(CONNECTIVITY_ERROR)
05-29 17:34:17.127 D/conversations(19471): stop: BT state=HEADSET_UNAVAILABLE
05-29 17:34:17.127 D/conversations(19471): end card reached
05-29 17:34:17.127 D/conversations(19471): stopScoAudio: BT state=HEADSET_UNAVAILABLE, SCO is on: false
05-29 17:34:17.128 D/conversations(19471): cancelTimer
05-29 17:34:17.128 D/conversations(19471): stop done: BT state=UNINITIALIZED
05-29 17:34:17.136 D/ZenLog (5604): intercepted: 0|eu.siacs.conversations|4194304|null|10082,alarmsOnly
05-29 17:34:17.138 D/conversations(19471): ForegroundService: on
05-29 17:34:17.155 D/conversations(19471):
05-29 17:34:17.293 I/MediaFocusControl(5604): abandonAudioFocus() from uid/pid 10082/19471 clientId=android.media.AudioManager@af61f98eu.siacs.conversations.services.AppRTCAudioManager$1@ffbf3f1
05-29 17:34:17.293 D/conversations(19471): Abandoned audio focus for VOICE_CALL streams
05-29 17:34:17.293 D/conversations(19471): stop@[name=main, id=2]
05-29 17:34:17.293 D/conversations(19471): AudioManager stopped
05-29 17:34:22.987 W/ActivityManager(5604): Duplicate finish request for ActivityRecord{8128f6c u0 eu.siacs.conversations/.ui.RtpSessionActivity t20038 f}
05-29 17:34:23.007 D/conversations(19471): reInit(hasExtras=false)
05-29 17:34:23.016 D/conversations(19471): scrolledToBottomAndNoPending=true
05-29 17:34:23.016 D/conversations(19471): jump to first unread message
05-29 17:34:23.087 D/conversations(19471): ConversationFragment.onBackendConnected()
05-29 17:34:23.183 E/BufferQueueProducer(4044): [eu.siacs.conversations/eu.siacs.conversations.ui.RtpSessionActivity#0] disconnect: not connected (req=1)
05-29 17:34:26.963 D/conversations(19471): app switched into background
05-29 17:34:26.983 E/BufferQueueProducer(4044): [eu.siacs.conversations/eu.siacs.conversations.ui.ConversationsActivity#0] disconnect: not connected (req=1)
````
",
1064,https://api.github.com/repos/iNPUTmice/Conversations/issues/3758,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3758/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3758/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3758/events,https://github.com/iNPUTmice/Conversations/issues/3758,627011143,MDU6SXNzdWU2MjcwMTExNDM=,3758,Put Audio call and Video call on quick actions list,"{'login': 'licaon-kter', 'id': 2282799, 'node_id': 'MDQ6VXNlcjIyODI3OTk=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2282799?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/licaon-kter', 'html_url': 'https://github.com/licaon-kter', 'followers_url': 'https://api.github.com/users/licaon-kter/followers', 'following_url': 'https://api.github.com/users/licaon-kter/following{/other_user}', 'gists_url': 'https://api.github.com/users/licaon-kter/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/licaon-kter/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/licaon-kter/subscriptions', 'organizations_url': 'https://api.github.com/users/licaon-kter/orgs', 'repos_url': 'https://api.github.com/users/licaon-kter/repos', 'events_url': 'https://api.github.com/users/licaon-kter/events{/privacy}', 'received_events_url': 'https://api.github.com/users/licaon-kter/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-05-29T05:35:30Z,2020-05-29T12:45:27Z,2020-05-29T12:45:27Z,CONTRIBUTOR,,,,
1065,https://api.github.com/repos/iNPUTmice/Conversations/issues/3757,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3757/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3757/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3757/events,https://github.com/iNPUTmice/Conversations/pull/3757,626943388,MDExOlB1bGxSZXF1ZXN0NDI0ODQxODQw,3757,Update screenshots - pin & a/v,"{'login': 'licaon-kter', 'id': 2282799, 'node_id': 'MDQ6VXNlcjIyODI3OTk=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2282799?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/licaon-kter', 'html_url': 'https://github.com/licaon-kter', 'followers_url': 'https://api.github.com/users/licaon-kter/followers', 'following_url': 'https://api.github.com/users/licaon-kter/following{/other_user}', 'gists_url': 'https://api.github.com/users/licaon-kter/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/licaon-kter/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/licaon-kter/subscriptions', 'organizations_url': 'https://api.github.com/users/licaon-kter/orgs', 'repos_url': 'https://api.github.com/users/licaon-kter/repos', 'events_url': 'https://api.github.com/users/licaon-kter/events{/privacy}', 'received_events_url': 'https://api.github.com/users/licaon-kter/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-05-29T01:59:14Z,2020-05-29T05:24:08Z,2020-05-29T05:24:08Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/pulls/3757', 'html_url': 'https://github.com/iNPUTmice/Conversations/pull/3757', 'diff_url': 'https://github.com/iNPUTmice/Conversations/pull/3757.diff', 'patch_url': 'https://github.com/iNPUTmice/Conversations/pull/3757.patch'}",,
1066,https://api.github.com/repos/iNPUTmice/Conversations/issues/3756,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3756/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3756/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3756/events,https://github.com/iNPUTmice/Conversations/issues/3756,625670932,MDU6SXNzdWU2MjU2NzA5MzI=,3756,Please make the “X out of Y accounts connected” optional,"{'login': 'kseistrup', 'id': 25586, 'node_id': 'MDQ6VXNlcjI1NTg2', 'avatar_url': 'https://avatars2.githubusercontent.com/u/25586?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/kseistrup', 'html_url': 'https://github.com/kseistrup', 'followers_url': 'https://api.github.com/users/kseistrup/followers', 'following_url': 'https://api.github.com/users/kseistrup/following{/other_user}', 'gists_url': 'https://api.github.com/users/kseistrup/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/kseistrup/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/kseistrup/subscriptions', 'organizations_url': 'https://api.github.com/users/kseistrup/orgs', 'repos_url': 'https://api.github.com/users/kseistrup/repos', 'events_url': 'https://api.github.com/users/kseistrup/events{/privacy}', 'received_events_url': 'https://api.github.com/users/kseistrup/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-05-27T12:51:27Z,2020-05-27T13:19:49Z,2020-05-27T13:03:08Z,NONE,,,"#### General information
* **Version:** 2.8.4+fcr
* **Device:** Samsung Galaxy S8
* **Android Version:** Android 9 (stock)
* **Server name:** self hosted
* **Server software:** prosody 0.11.5
* **Installed server modules:** Irrelevant
* **Conversations source:** F-Droid
#### Steps to reproduce
1. Start Conversations, if not started automatically when phone was rebooted.
2. Observe the little permanent notification in the upper left corner of the phone, telling you that X out of Y accounts are connected.
#### Expected result
There should be no such notification in the top bar.
There should only be such notifications in case of an error: i.e., if an account has been disconnected.
#### Actual result
I see a permanent status thing that tells me how many of my XMPP accounts are connected right now. It cannot be swiped away and I cannot seem to find a setting that disables the behaviour.
The notification bar of my phone would be a very busy place if every running app put a notification there telling me that they were functioning correctly. Perhaps some people like to see it, who knows, but I find it just adds to all the distracting background noise of my day.
I don't mind seeing a notification (one that can be swiped away) in case of an error, but a non-removable notification about normal conditions is just noise. I would like to be able to disable it.
Thank you.
",
1067,https://api.github.com/repos/iNPUTmice/Conversations/issues/3755,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3755/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3755/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3755/events,https://github.com/iNPUTmice/Conversations/issues/3755,625565144,MDU6SXNzdWU2MjU1NjUxNDQ=,3755,Can't initiate call after ending a call (random bug),"{'login': 'sirdrakeistda', 'id': 35723909, 'node_id': 'MDQ6VXNlcjM1NzIzOTA5', 'avatar_url': 'https://avatars0.githubusercontent.com/u/35723909?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/sirdrakeistda', 'html_url': 'https://github.com/sirdrakeistda', 'followers_url': 'https://api.github.com/users/sirdrakeistda/followers', 'following_url': 'https://api.github.com/users/sirdrakeistda/following{/other_user}', 'gists_url': 'https://api.github.com/users/sirdrakeistda/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/sirdrakeistda/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/sirdrakeistda/subscriptions', 'organizations_url': 'https://api.github.com/users/sirdrakeistda/orgs', 'repos_url': 'https://api.github.com/users/sirdrakeistda/repos', 'events_url': 'https://api.github.com/users/sirdrakeistda/events{/privacy}', 'received_events_url': 'https://api.github.com/users/sirdrakeistda/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,5,2020-05-27T10:14:51Z,2020-06-02T06:15:19Z,2020-06-02T06:15:19Z,NONE,,,"#### General information
* **Version:** 2.8.5pcr
* **Device:** HTC U11
* **Android Version:** Android 9 (stock)
* **Server name:** draugr.de, contact trashserver.net
* **Server software:** ejabberd 20.04 contact: ejabberd 20.04.34
* **Installed server modules:** Stream Managment, CSI, MAM, STUN, TURN
* **Conversations source:** PlayStore Beta Channel
#### What happened:
1. Initiate a call (in my case: video call)
2. Push the back button or quit call
-> call is ended
3. Try to initiate a call with the same contact -> doesn't work (initiating call pops up for a few milliseconds and is closed immediately), call symbol looks like a still running call
#### Expected result
What is the expected output?
After ending a call I should be able ti initiate a new call. Receiving a call (also from the same contact) works without problem
#### Actual result
What do you see instead?
initiating call pops up for a few milliseconds and is closed immediately), call symbol (In the chat on top) looks like a still running call. Problem stays until reboot.
I had the issue two times since yet. The first time was with version 2.8.5. I can't reproduce this issue, it appears randomly. This log was produced after step 1. and 2., but includes step 3. In the log happened nothing while doing step 3. The contact does not appear in the logs (contact with issue is not contact1). I deleted some logs from a wiuwiu.de Account, because the the logs would be quite longer. If you need them too, I can provide them too. But the Account was not affected from the problem.
```
05-27 11:16:35.121 17561 17561 D conversations: eu.siacs.conversations.services.AppRTCAudioManager.stop()
05-27 11:16:35.121 17561 17561 D conversations: stop: BT state=SCO_CONNECTED
05-27 11:16:35.122 17561 17561 D conversations: stopScoAudio: BT state=SCO_CONNECTED, SCO is on: true
05-27 11:16:35.122 17561 17561 D conversations: cancelTimer
05-27 11:16:35.122 17561 16888 D conversations: Account2@draugr.de: transitioned into TERMINATED_SUCCESS
05-27 11:16:35.122 17561 16888 D conversations: onJingleRtpConnectionUpdate(ENDED)
05-27 11:16:35.127 17561 17561 D conversations: stopScoAudio done: BT state=SCO_DISCONNECTING, SCO is on: false
05-27 11:16:35.133 17561 17561 D conversations: cancelTimer
05-27 11:16:35.134 17561 17561 D conversations: stop done: BT state=UNINITIALIZED
05-27 11:16:35.147 17561 16888 D conversations: ForegroundService: on
05-27 11:16:35.409 17561 2610 D conversations: eu.siacs.conversations.xmpp.jingle.ToneManager: putting AudioManager back into normal mode
05-27 11:16:36.205 17561 17561 D conversations: Abandoned audio focus for VOICE_CALL streams
05-27 11:16:36.205 17561 17561 D conversations: stop@[name=main, id=2]
05-27 11:16:36.222 17561 17561 D conversations: reInit(hasExtras=false)
05-27 11:16:36.233 17561 17561 D conversations: scrolledToBottomAndNoPending=true
05-27 11:16:36.233 17561 17561 D conversations: jump to first unread message
05-27 11:16:36.298 17561 17561 D conversations: ConversationFragment.onBackendConnected()
05-27 11:16:36.995 17561 17561 D conversations: releasing proximity wake lock
05-27 11:16:41.731 17561 16888 D conversations: Account2@draugr.de: delivered message to JingleRtpConnection
05-27 11:16:41.732 17561 16888 D conversations: Account2@draugr.de: received session proposal from contact1@draugr.de/Conversations.lXEU for [audio]
05-27 11:16:41.732 17561 16888 D conversations: Account2@draugr.de: transitioned into PROPOSED
05-27 11:16:41.748 17561 16888 D conversations: ForegroundService: on
05-27 11:16:41.748 17561 16888 D conversations: Account2@draugr.de: received call from contact1@draugr.de/Conversations.lXEU. start ringing
05-27 11:16:41.917 17561 17561 D conversations: ConversationsOverviewFragment.onStart()
05-27 11:16:41.919 17561 17561 D conversations: ConversationsOverviewFragment.onResume()
05-27 11:16:43.533 17561 17561 D conversations: ConversationsOverviewFragment.onPause()
05-27 11:16:43.636 17561 17561 D conversations: intent action was accept
05-27 11:16:43.637 17561 17561 D conversations: acquiring proximity wake lock
05-27 11:16:43.638 17561 17561 D conversations: Account2@draugr.de: transitioned into PROCEED
05-27 11:16:43.638 17561 17561 D conversations: onJingleRtpConnectionUpdate(ACCEPTING_CALL)
05-27 11:16:43.646 17561 17561 D conversations: ForegroundService: on
05-27 11:16:43.934 17561 19985 D conversations: checking microphone availability took 295ms
05-27 11:16:44.610 17561 16888 D conversations: Account2@draugr.de: delivered message to JingleRtpConnection
05-27 11:16:44.610 17561 16888 D conversations: Account2@draugr.de: unable to transition to accept because already in state=PROCEED
05-27 11:16:44.642 17561 16888 D conversations: Account2@draugr.de: packet delivered to JingleRtpConnection
05-27 11:16:44.648 17561 16888 D conversations: processing session-init with 1 contents
05-27 11:16:44.648 17561 16888 D conversations: Account2@draugr.de: transitioned into SESSION_INITIALIZED_PRE_APPROVED
05-27 11:16:44.648 17561 16888 D conversations: onJingleRtpConnectionUpdate(CONNECTING)
05-27 11:16:44.654 17561 16888 D conversations: ForegroundService: on
05-27 11:16:44.655 17561 16888 D conversations: Account2@draugr.de: automatically accepting session-initiate
05-27 11:16:44.663 17561 16888 D conversations: Account2@draugr.de: packet delivered to JingleRtpConnection
05-27 11:16:44.665 17561 16888 D conversations: Account2@draugr.de: put ICE candidate on backlog
05-27 11:16:44.688 17561 16888 D conversations: Account2@draugr.de: packet delivered to JingleRtpConnection
05-27 11:16:44.689 17561 16888 D conversations: Account2@draugr.de: put ICE candidate on backlog
05-27 11:16:44.695 17561 16888 D conversations: Account2@draugr.de: packet delivered to JingleRtpConnection
05-27 11:16:44.696 17561 16888 D conversations: Account2@draugr.de: put ICE candidate on backlog
05-27 11:16:44.742 17561 16888 D conversations: Account2@draugr.de: discovered ICE Server: [stun:[89.163.130.28]:3478?transport=udp] [:] [TLS_CERT_POLICY_INSECURE_NO_CHECK] [] [null] [null]
05-27 11:16:44.743 17561 16888 D conversations: Account2@draugr.de: discovered ICE Server: [turn:[89.163.130.28]:3478?transport=udp] [1590571605:38caa64504e0a4bf:UPZBhqqb8NFkihep/JfcF5Txx14=] [TLS_CERT_POLICY_INSECURE_NO_CHECK] [] [null] [null]
05-27 11:16:44.743 17561 16888 D conversations: Account2@draugr.de: discovered ICE Server: [stun:[89.163.212.45]:3478?transport=tcp] [:] [TLS_CERT_POLICY_INSECURE_NO_CHECK] [] [null] [null]
05-27 11:16:44.747 17561 17561 D conversations: ctor
05-27 11:16:44.748 17561 17561 D conversations: create@[name=main, id=2]
05-27 11:16:44.748 17561 17561 D conversations: ctor
05-27 11:16:44.748 17561 16888 D conversations: setUseHardwareAcousticEchoCanceler(true) model=HTC U11
05-27 11:16:44.748 17561 17561 D conversations: AppRTCProximitySensor@[name=main, id=2]
05-27 11:16:44.748 17561 17561 D conversations: defaultAudioDevice: EARPIECE
05-27 11:16:44.749 17561 17561 D conversations: Android SDK: 28, Release: 9, Brand: htc, Device: htc_ocndugl, Id: PQ2A.190205.003, Hardware: htc_ocn, Manufacturer: HTC, Model: HTC U11, Product: ocndugl_00401
05-27 11:16:44.749 17561 17561 D conversations: eu.siacs.conversations.services.AppRTCAudioManager.start()
05-27 11:16:44.754 17561 17561 D conversations: Audio focus request granted for VOICE_CALL streams
05-27 11:16:44.779 17561 19992 D conversations: no remote video tracks found
05-27 11:16:44.779 17561 16888 D conversations: Account2@draugr.de: added ICE candidate from back log audio:0:candidate:1352460120 1 udp 2122262783 2001:16b8:a584:cc00:accd:22f5:1533:15c6 48754 typ host generation 0 ufrag 6QM3::UNKNOWN
05-27 11:16:44.780 17561 16888 D conversations: Account2@draugr.de: added ICE candidate from back log audio:0:candidate:1342263604 1 udp 2122194687 192.168.178.43 47120 typ host generation 0 ufrag 6QM3::UNKNOWN
05-27 11:16:44.780 17561 16888 D conversations: Account2@draugr.de: added ICE candidate from back log audio:0:candidate:842163049 1 udp 1685987071 94.134.100.252 19625 typ srflx raddr 192.168.178.43 rport 47120 generation 0 ufrag 6QM3::UNKNOWN
05-27 11:16:44.783 17561 16888 D conversations: Account2@draugr.de: transitioned into SESSION_ACCEPTED
05-27 11:16:44.783 17561 16888 D conversations: onJingleRtpConnectionUpdate(CONNECTING)
05-27 11:16:44.810 17561 16888 D conversations: ForegroundService: on
05-27 11:16:44.840 17561 16888 D conversations: B9:F4:4B:9E:4D:CD:3A:1F:3C:EB:1F:DE:79:49:FF:C0:0F:CA:66:68:0B:6B:06:86:BF:E1:B7:52:AA:30:B3:09
05-27 11:16:44.848 17561 17561 D conversations: start
05-27 11:16:44.850 17561 17561 D conversations: BluetoothAdapter: enabled=true, state=ON, name=MeinHandy, address=02:00:00:00:00:00
05-27 11:16:44.851 17561 17561 D conversations: paired devices:
05-27 11:16:44.851 17561 17561 D conversations: name=MeinBose, address=4C:87:5D:CB:A4:67
05-27 11:16:44.852 17561 17561 D conversations: name=JBL Charge 4, address=5C:FB:7C:B1:16:CE
05-27 11:16:44.853 17561 17561 D conversations: name=CAR_KIT, address=30:21:10:73:59:6B
05-27 11:16:44.853 17561 17561 D conversations: name=Legolas-Lenovo-ideapad-330S-15IKB, address=34:E1:2D:49:F2:E0
05-27 11:16:44.855 17561 17561 D conversations: name=Phönix helps me, address=14:60:CB:18:4C:0F
05-27 11:16:44.855 17561 17561 D conversations: name=S2, address=E3:28:E9:23:74:00
05-27 11:16:44.856 17561 17561 D conversations: name=GT-I8200N, address=E4:F8:EF:AD:A0:7B
05-27 11:16:44.856 17561 17561 D conversations: name=MeinTuxedo, address=C0:B6:F9:6F:22:F9
05-27 11:16:44.859 17561 17561 D conversations: HEADSET profile state: CONNECTED
05-27 11:16:44.859 17561 17561 D conversations: Bluetooth proxy for headset profile has started
05-27 11:16:44.859 17561 17561 D conversations: start done: BT state=HEADSET_UNAVAILABLE
05-27 11:16:44.859 17561 17561 D conversations: --- updateAudioDeviceState: wired headset=false, BT state=HEADSET_UNAVAILABLE
05-27 11:16:44.859 17561 17561 D conversations: Device status: available=[], selected=NONE, user selected=NONE
05-27 11:16:44.860 17561 17561 D conversations: setAudioDeviceInternal(device=EARPIECE)
05-27 11:16:44.860 17561 17561 D conversations: New device status: available=[SPEAKER_PHONE, EARPIECE], selected=EARPIECE
05-27 11:16:44.860 17561 17561 D conversations: onAudioDeviceChanged in activity: selected:EARPIECE, available:[SPEAKER_PHONE, EARPIECE]
05-27 11:16:44.939 17561 17561 D conversations: --- updateAudioDeviceState done
05-27 11:16:44.941 17561 17561 D conversations: AudioManager started
05-27 11:16:44.941 17561 17561 D conversations: onAudioDeviceChanged in activity: selected:EARPIECE, available:[SPEAKER_PHONE, EARPIECE]
05-27 11:16:44.946 17561 19992 D conversations: Account2@draugr.de: PeerConnectionState changed to CONNECTING
05-27 11:16:44.946 17561 19992 D conversations: onJingleRtpConnectionUpdate(CONNECTING)
05-27 11:16:44.946 17561 19992 D conversations: sending candidate: audio:0:candidate:60177186 1 udp 2122068735 fd00:1:fd00:1:fd00:1:fd00:1 39179 typ host generation 0 ufrag ePfM network-id 6 network-cost 10::UNKNOWN
05-27 11:16:44.947 17561 19992 D conversations: sending candidate: audio:0:candidate:1375957520 1 udp 2121998079 10.1.10.1 43184 typ host generation 0 ufrag ePfM network-id 5 network-cost 10::UNKNOWN
05-27 11:16:44.963 17561 17561 D conversations: BluetoothServiceListener.onServiceConnected: BT state=HEADSET_UNAVAILABLE
05-27 11:16:44.963 17561 17561 D conversations: updateAudioDeviceState
05-27 11:16:44.963 17561 17561 D conversations: --- updateAudioDeviceState: wired headset=false, BT state=HEADSET_UNAVAILABLE
05-27 11:16:44.963 17561 17561 D conversations: Device status: available=[SPEAKER_PHONE, EARPIECE], selected=EARPIECE, user selected=NONE
05-27 11:16:44.963 17561 17561 D conversations: updateDevice
05-27 11:16:44.967 17561 19992 D conversations: sending candidate: audio:0:candidate:842163049 1 udp 1685790463 88.209.32.73 37553 typ srflx raddr 10.1.10.1 rport 43184 generation 0 ufrag ePfM network-id 5 network-cost 10:stun:89.163.212.45:3478:UNKNOWN
05-27 11:16:44.968 17561 17561 D conversations: Connected bluetooth headset: name=MeinBose, state=CONNECTED, SCO audio=false
05-27 11:16:44.968 17561 17561 D conversations: updateDevice done: BT state=HEADSET_AVAILABLE
05-27 11:16:44.968 17561 17561 D conversations: Need BT audio: start=true, stop=false, BT state=HEADSET_AVAILABLE
05-27 11:16:44.968 17561 17561 D conversations: startSco: BT state=HEADSET_AVAILABLE, attempts: 0, SCO is on: false
05-27 11:16:44.968 17561 17561 D conversations: Starting Bluetooth SCO and waits for ACTION_AUDIO_STATE_CHANGED...
05-27 11:16:44.979 17561 17561 D conversations: startTimer
05-27 11:16:44.979 17561 17561 D conversations: startScoAudio done: BT state=SCO_CONNECTING, SCO is on: true
05-27 11:16:44.979 17561 17561 D conversations: setAudioDeviceInternal(device=EARPIECE)
05-27 11:16:44.979 17561 17561 D conversations: New device status: available=[SPEAKER_PHONE, BLUETOOTH, EARPIECE], selected=EARPIECE
05-27 11:16:44.979 17561 17561 D conversations: onAudioDeviceChanged in activity: selected:EARPIECE, available:[SPEAKER_PHONE, BLUETOOTH, EARPIECE]
05-27 11:16:44.979 17561 17561 D conversations: --- updateAudioDeviceState done
05-27 11:16:44.979 17561 17561 D conversations: onServiceConnected done: BT state=SCO_CONNECTING
05-27 11:16:45.132 17561 17561 D conversations: BluetoothHeadsetBroadcastReceiver.onReceive: a=ACTION_AUDIO_STATE_CHANGED, s=TURNING_ON, sb=false, BT state: SCO_CONNECTING
05-27 11:16:45.132 17561 17561 D conversations: +++ Bluetooth audio SCO is now connecting...
05-27 11:16:45.132 17561 17561 D conversations: onReceive done: BT state=SCO_CONNECTING
05-27 11:16:45.162 17561 17561 D conversations: BluetoothHeadsetBroadcastReceiver.onReceive: a=ACTION_AUDIO_STATE_CHANGED, s=ON, sb=false, BT state: SCO_CONNECTING
05-27 11:16:45.162 17561 17561 D conversations: cancelTimer
05-27 11:16:45.162 17561 17561 D conversations: +++ Bluetooth audio SCO is now connected
05-27 11:16:45.163 17561 17561 D conversations: updateAudioDeviceState
05-27 11:16:45.163 17561 17561 D conversations: --- updateAudioDeviceState: wired headset=false, BT state=SCO_CONNECTED
05-27 11:16:45.163 17561 17561 D conversations: Device status: available=[SPEAKER_PHONE, BLUETOOTH, EARPIECE], selected=EARPIECE, user selected=NONE
05-27 11:16:45.163 17561 17561 D conversations: Need BT audio: start=false, stop=false, BT state=SCO_CONNECTED
05-27 11:16:45.163 17561 17561 D conversations: setAudioDeviceInternal(device=BLUETOOTH)
05-27 11:16:45.163 17561 17561 D conversations: New device status: available=[SPEAKER_PHONE, BLUETOOTH, EARPIECE], selected=BLUETOOTH
05-27 11:16:45.163 17561 17561 D conversations: onAudioDeviceChanged in activity: selected:BLUETOOTH, available:[SPEAKER_PHONE, BLUETOOTH, EARPIECE]
05-27 11:16:45.163 17561 17561 D conversations: releasing proximity wake lock
05-27 11:16:45.164 17561 17561 D conversations: --- updateAudioDeviceState done
05-27 11:16:45.164 17561 17561 D conversations: onReceive done: BT state=SCO_CONNECTED
05-27 11:16:46.653 17561 17561 D conversations: toggle forced foreground service after receiving event (action=ping)
05-27 11:16:46.669 17561 17561 D conversations: ForegroundService: on
05-27 11:17:00.090 17561 19992 D conversations: Account2@draugr.de: PeerConnectionState changed to FAILED
05-27 11:17:00.104 17561 19992 D conversations: Account2@draugr.de: PeerConnectionState changed to CLOSED
05-27 11:17:00.104 17561 19992 D conversations: onJingleRtpConnectionUpdate(ENDING_CALL)
05-27 11:17:00.134 17561 20004 D conversations: Account2@draugr.de: transitioned into TERMINATED_CONNECTIVITY_ERROR
05-27 11:17:00.134 17561 20004 D conversations: onJingleRtpConnectionUpdate(CONNECTIVITY_ERROR)
05-27 11:17:00.134 17561 20004 D conversations: end card reached
05-27 11:17:00.136 17561 17561 D conversations: eu.siacs.conversations.services.AppRTCAudioManager.stop()
05-27 11:17:00.137 17561 17561 D conversations: stop: BT state=SCO_CONNECTED
05-27 11:17:00.138 17561 17561 D conversations: stopScoAudio: BT state=SCO_CONNECTED, SCO is on: true
05-27 11:17:00.138 17561 17561 D conversations: cancelTimer
05-27 11:17:00.145 17561 20004 D conversations: ForegroundService: on
05-27 11:17:00.147 17561 17561 D conversations: stopScoAudio done: BT state=SCO_DISCONNECTING, SCO is on: false
05-27 11:17:00.147 17561 17561 D conversations: cancelTimer
05-27 11:17:00.149 17561 17561 D conversations: stop done: BT state=UNINITIALIZED
05-27 11:17:00.151 17561 20004 D conversations:
05-27 11:17:00.229 17561 16888 D conversations: unable to route jingle packet:
05-27 11:17:00.255 17561 16888 D conversations: Account2@draugr.de: received IQ-error from contact1@draugr.de/Conversations.lXEU in RTP session. item-not-found
05-27 11:17:00.255 17561 16888 I conversations: Account2@draugr.de: ignoring error because session was already terminated
05-27 11:17:00.367 17561 17561 D conversations: Abandoned audio focus for VOICE_CALL streams
05-27 11:17:00.367 17561 17561 D conversations: stop@[name=main, id=2]
05-27 11:17:01.856 17561 17561 D conversations: ConversationsOverviewFragment.onStart()
05-27 11:17:01.859 17561 17561 D conversations: ConversationsOverviewFragment.onResume()
05-27 11:17:01.951 17561 17561 D conversations: Account2@draugr.de send ping (action=ui,lowTimeout=false)
05-27 11:17:03.162 17561 17561 D conversations: ConversationFragment.onAttach()
05-27 11:17:03.185 17561 17561 D conversations: reInit(hasExtras=true)
05-27 11:17:03.186 17561 17561 D conversations: trimming conversation
05-27 11:17:03.212 17561 17561 D conversations: scrolledToBottomAndNoPending=true
05-27 11:17:03.212 17561 17561 D conversations: jump to first unread message
05-27 11:17:03.212 17561 17561 D conversations: ConversationsOverviewFragment.onPause()
05-27 11:17:15.476 17561 16888 D conversations: AxolotlService (Account2@draugr.de): Received Message with session fingerprint: 05c20e1a777df6fa8c7b537db35bc98d050a5e9f055a3ca6145d1e567b473e6918
05-27 11:17:15.491 17561 16888 D conversations: using 12-byte IV for file transmission
05-27 11:17:15.494 17561 16888 D conversations: create temporary OMEMO encrypted file: /data/user/0/eu.siacs.conversations/cache/8dda4ea9-0b80-4560-ac34-b488ae8359ab(audio/mpeg)
05-27 11:17:15.498 17561 20007 D conversations: retrieve file size. interactive:false
05-27 11:17:15.498 17561 20007 D conversations: url: https://draugr.de:5443/upload/ee1f3c1ef24169aeac127cfbd9cdacf7e83c87b4/8bahyYhsFtUVghKH6WLkn8ytfam2I9gD4e31C8Be/RECORDING_20200527_111706631.m4a#166aadb3abc8e6972aa8c5e3881e64c8a3f945c3d36e0b0604d675a5a83952ef1bd8fad58b6f9dd57ce48860
05-27 11:17:16.377 17561 20010 D conversations: update unread count to 10
05-27 11:17:17.989 17561 17561 D conversations: toggle forced foreground service after receiving event (action=ping)
05-27 11:17:18.013 17561 17561 D conversations: ForegroundService: on
05-27 11:17:18.044 17561 17561 D conversations: toggle forced foreground service after receiving event (action=ping)
05-27 11:17:18.051 17561 17561 D conversations: ForegroundService: on
05-27 11:17:18.116 17561 17561 D conversations: toggle forced foreground service after receiving event (action=ping)
05-27 11:17:18.126 17561 17561 D conversations: ForegroundService: on
05-27 11:17:18.573 17561 17561 D conversations: action: eu.siacs.conversations.action.VIEW
05-27 11:17:18.573 17561 17561 D conversations: ConversationFragment.saveMessageDraftStopAudioPlayer()
05-27 11:17:18.573 17561 17561 D conversations: reInit(hasExtras=true)
05-27 11:17:18.589 17561 17561 D conversations: scrolledToBottomAndNoPending=true
05-27 11:17:18.589 17561 17561 D conversations: jump to first unread message
05-27 11:17:18.613 17561 17561 D conversations: update unread count to 9
05-27 11:17:18.615 17561 17561 D conversations: Account2@draugr.de: sending read marker to contact1@draugr.de/Conversations.lXEU
05-27 11:17:42.211 17561 17561 D conversations: AxolotlService (Account2@draugr.de): Finding devices without session for contact1@draugr.de
05-27 11:17:42.212 17561 17561 D conversations: AxolotlService (Account2@draugr.de): Cache miss: 37d587e3-dba1-4b5c-b252-519525c42782
05-27 11:17:42.235 17561 19516 D conversations: AxolotlService (Account2@draugr.de): Generated message, caching: 37d587e3-dba1-4b5c-b252-519525c42782
05-27 11:17:42.235 17561 19516 D conversations: AxolotlService (Account2@draugr.de): Cache hit: 37d587e3-dba1-4b5c-b252-519525c42782
05-27 11:17:47.074 17561 17561 D conversations: toggle forced foreground service after receiving event (action=ping)
05-27 11:17:47.126 17561 17561 D conversations: ForegroundService: on
05-27 11:17:49.207 17561 17561 D conversations: ConversationsOverviewFragment.onStart()
05-27 11:17:49.213 17561 17561 D conversations: ConversationsOverviewFragment.onResume()
05-27 11:17:53.402 17561 17561 D conversations: ConversationsOverviewFragment.onPause()
05-27 11:17:53.493 17561 17561 D conversations: app switched into background
05-27 11:17:53.700 17561 17561 D conversations: ConversationsOverviewFragment.onStart()
05-27 11:17:53.741 17561 17561 D conversations: ConversationsOverviewFragment.onResume()
05-27 11:17:53.848 17561 17561 D conversations: app switched into foreground
05-27 11:17:54.142 17561 17561 D conversations: ConversationsOverviewFragment.onPause()
05-27 11:17:54.183 17561 17561 D conversations: app switched into background
05-27 11:17:54.360 17561 17561 D conversations: ConversationsOverviewFragment.onStart()
05-27 11:17:54.362 17561 17561 D conversations: ConversationsOverviewFragment.onResume()
05-27 11:17:54.449 17561 17561 D conversations: app switched into foreground
05-27 11:17:58.182 17561 17561 D conversations: ConversationFragment.onAttach()
05-27 11:17:58.201 17561 17561 D conversations: reInit(hasExtras=true)
05-27 11:17:58.201 17561 17561 D conversations: trimming conversation
05-27 11:17:58.225 17561 17561 D conversations: scrolledToBottomAndNoPending=true
05-27 11:17:58.225 17561 17561 D conversations: jump to first unread message
05-27 11:17:58.226 17561 17561 D conversations: ConversationsOverviewFragment.onPause()
05-27 11:17:59.681 17561 16888 D conversations: AxolotlService (Account2@draugr.de): Received Message with session fingerprint: 05c20e1a777df6fa8c7b537db35bc98d050a5e9f055a3ca6145d1e567b473e6918
05-27 11:17:59.694 17561 16888 D conversations: using 12-byte IV for file transmission
05-27 11:17:59.694 17561 16888 D conversations: create temporary OMEMO encrypted file: /data/user/0/eu.siacs.conversations/cache/0f090448-060e-4d02-8ed1-c35d6416e381(image/png)
05-27 11:17:59.698 17561 20327 D conversations: retrieve file size. interactive:false
05-27 11:17:59.698 17561 20327 D conversations: url: https://draugr.de:5443/upload/ee1f3c1ef24169aeac127cfbd9cdacf7e83c87b4/9Tcsd3oqy45LAlw2WXG9BPKR9lKbwuh9U1gVCvWI/by2HJYMHSPCNsJuBleHs2A.png#4320d1a28d410e42d2d687f749f669e0acead738e998580aafa76675abc5c1b7e019396c8a2b7ea49b189ad3
05-27 11:18:00.877 17561 17573 D conversations: update unread count to 10
05-27 11:18:03.191 17561 17561 D conversations: action: eu.siacs.conversations.action.VIEW
05-27 11:18:03.192 17561 17561 D conversations: ConversationFragment.saveMessageDraftStopAudioPlayer()
05-27 11:18:03.192 17561 17561 D conversations: reInit(hasExtras=true)
05-27 11:18:03.208 17561 17561 D conversations: scrolledToBottomAndNoPending=true
05-27 11:18:03.208 17561 17561 D conversations: jump to first unread message
05-27 11:18:03.226 17561 17561 D conversations: update unread count to 9
05-27 11:18:03.228 17561 17561 D conversations: Account2@draugr.de: sending read marker to contact1@draugr.de/Conversations.lXEU
05-27 11:18:05.556 17561 17561 D conversations: ConversationsOverviewFragment.onStart()
05-27 11:18:05.558 17561 17561 D conversations: ConversationsOverviewFragment.onResume()
05-27 11:18:07.192 17561 17561 D conversations: ConversationsOverviewFragment.onPause()
05-27 11:18:07.240 17561 17561 D conversations: app switched into background
05-27 11:18:44.203 17561 17561 D conversations: toggle forced foreground service after receiving event (action=ping)
05-27 11:18:44.217 17561 17561 D conversations: ForegroundService: on
05-27 11:18:44.256 17561 17561 D conversations: toggle forced foreground service after receiving event (action=ping)
05-27 11:18:44.270 17561 17561 D conversations: ForegroundService: on
05-27 11:18:44.366 17561 17561 D conversations: toggle forced foreground service after receiving event (action=ping)
05-27 11:18:44.397 17561 17561 D conversations: ForegroundService: on
05-27 11:20:00.852 17561 17561 D conversations: toggle forced foreground service after receiving event (action=ping)
05-27 11:20:00.903 17561 17561 D conversations: ForegroundService: on
05-27 11:20:03.712 17561 17561 D conversations: ConversationsOverviewFragment.onStart()
05-27 11:20:03.754 17561 17561 D conversations: ConversationsOverviewFragment.onResume()
05-27 11:20:03.879 17561 17561 D conversations: Account2@draugr.de send ping (action=ui,lowTimeout=false)
05-27 11:20:03.887 17561 17561 D conversations: Account3@trashserver.net send ping (action=ui,lowTimeout=false)
05-27 11:20:03.944 17561 17561 D conversations: app switched into foreground
05-27 11:20:05.808 17561 17561 D conversations: ConversationFragment.onAttach()
05-27 11:20:05.852 17561 17561 D conversations: reInit(hasExtras=true)
05-27 11:20:05.852 17561 17561 D conversations: trimming conversation
05-27 11:20:05.866 17561 17561 D conversations: scrolledToBottomAndNoPending=true
05-27 11:20:05.866 17561 17561 D conversations: jump to first unread message
05-27 11:20:05.867 17561 17561 D conversations: ConversationsOverviewFragment.onPause()
05-27 11:20:23.519 17561 17561 D conversations: toggle forced foreground service after receiving event (action=idle_ping)
05-27 11:20:23.558 17561 17561 D conversations: ForegroundService: on
05-27 11:20:23.631 17561 17561 D conversations: toggle forced foreground service after receiving event (action=ping)
05-27 11:20:23.644 17561 17561 D conversations: ForegroundService: on
05-27 11:20:23.704 17561 17561 D conversations: toggle forced foreground service after receiving event (action=ping)
05-27 11:20:23.713 17561 17561 D conversations: ForegroundService: on
05-27 11:20:24.099 17561 17594 D conversations: deleted file /storage/emulated/0/Android/data/de.dwd.warnapp/cache/ubq/cache.db-shm internal=false, database hits=0
05-27 11:20:24.102 17561 17594 D conversations: deleted file /storage/emulated/0/Android/data/de.dwd.warnapp/cache/ubq/cache.db-wal internal=false, database hits=0
05-27 11:20:24.105 17561 17594 D conversations: deleted file /storage/emulated/0/Android/data/de.dwd.warnapp/cache/ubq/cache.db-shm internal=false, database hits=0
05-27 11:20:24.107 17561 17594 D conversations: deleted file /storage/emulated/0/Android/data/de.dwd.warnapp/cache/ubq/cache.db-wal internal=false, database hits=0
05-27 11:20:24.299 17561 17594 D conversations: deleted file /storage/emulated/0/Android/data/de.dwd.warnapp/cache/ubq/cache.db-shm internal=false, database hits=0
05-27 11:20:24.300 17561 17594 D conversations: deleted file /storage/emulated/0/Android/data/de.dwd.warnapp/cache/ubq/cache.db-wal internal=false, database hits=0
05-27 11:20:25.280 17561 17594 D conversations: deleted file /storage/emulated/0/Android/data/de.dwd.warnapp/cache/ubq/sA3dt8drwXE74ZwI38E6RJtyTeMZ9-r7HfuN5V8otKY internal=false, database hits=0
05-27 11:20:25.284 17561 17594 D conversations: deleted file /storage/emulated/0/Android/data/de.dwd.warnapp/cache/ubq/sA3dt8drwXE74ZwI38E6RJtyTeMZ9-r7HfuN5V8otKY.part internal=false, database hits=0
05-27 11:20:25.294 17561 17594 D conversations: deleted file /storage/emulated/0/Android/data/de.dwd.warnapp/cache/ubq/cache.db-shm internal=false, database hits=0
05-27 11:20:25.298 17561 17594 D conversations: deleted file /storage/emulated/0/Android/data/de.dwd.warnapp/cache/ubq/cache.db-wal internal=false, database hits=0
05-27 11:21:08.302 17561 17561 D conversations: app switched into background
05-27 11:23:01.621 17561 20981 D conversations: Received blocklist update from server
05-27 11:26:03.628 17561 17561 D conversations: toggle forced foreground service after receiving event (action=ping)
05-27 11:26:03.651 17561 17561 D conversations: ForegroundService: on
05-27 11:27:33.815 17561 17561 D conversations: reInit(hasExtras=false)
05-27 11:27:33.828 17561 17561 D conversations: scrolledToBottomAndNoPending=true
05-27 11:27:33.828 17561 17561 D conversations: jump to first unread message
05-27 11:27:34.060 17561 17561 D conversations: Account2@draugr.de send ping (action=ui,lowTimeout=false)
05-27 11:27:34.089 17561 17561 D conversations: Account3@trashserver.net send ping (action=ui,lowTimeout=false)
05-27 11:27:34.109 17561 17561 D conversations: app switched into foreground
05-27 11:27:34.109 17561 17561 D conversations: ConversationFragment.onBackendConnected()
05-27 11:27:34.161 17561 16888 D conversations: AxolotlService (Account2@draugr.de): Received PEP device list [1937786704, 1640101873, 1944314519, 269453002, 557118605] update from Account1@wiuwiu.de, processing...
05-27 11:27:34.174 17561 16888 D conversations: skipped device list update because it hasn't changed
05-27 11:27:34.788 17561 17561 D conversations: ignoring read callback. mActivityPaused=true
05-27 11:27:36.007 17561 17561 D conversations: ignoring read callback. mActivityPaused=true
05-27 11:27:44.585 17561 16688 D conversations: update unread count to 10
05-27 11:27:44.592 17561 16688 D conversations: Account3@trashserver.net: suppressing notification because turned off
05-27 11:27:54.185 17561 17561 D conversations: toggle forced foreground service after receiving event (action=ping)
05-27 11:27:54.213 17561 17561 D conversations: ForegroundService: on
05-27 11:27:54.243 17561 17561 D conversations: toggle forced foreground service after receiving event (action=ping)
05-27 11:27:54.264 17561 17561 D conversations: ForegroundService: on
05-27 11:27:54.319 17561 17561 D conversations: toggle forced foreground service after receiving event (action=ping)
05-27 11:27:54.340 17561 17561 D conversations: ForegroundService: on
05-27 11:28:15.512 17561 17561 D conversations: Account2@draugr.de send ping (action=ui,lowTimeout=false)
05-27 11:28:15.521 17561 17561 D conversations: Account3@trashserver.net send ping (action=ui,lowTimeout=false)
05-27 11:28:40.528 17561 17561 D conversations: ConversationsOverviewFragment.onStart()
05-27 11:28:40.532 17561 17561 D conversations: ConversationsOverviewFragment.onResume()
05-27 11:28:49.888 17561 17561 D conversations: ConversationsOverviewFragment.onPause()
05-27 11:28:49.934 17561 17561 D conversations: app switched into background
05-27 11:28:54.065 17561 17561 D conversations: toggle forced foreground service after receiving event (action=ping)
05-27 11:28:54.091 17561 17561 D conversations: ForegroundService: on
05-27 11:28:54.123 17561 17561 D conversations: toggle forced foreground service after receiving event (action=ping)
05-27 11:28:54.137 17561 17561 D conversations: ForegroundService: on
05-27 11:28:54.211 17561 17561 D conversations: toggle forced foreground service after receiving event (action=ping)
05-27 11:28:54.222 17561 17561 D conversations: ForegroundService: on
05-27 11:29:47.782 17561 17561 D conversations: ConversationsOverviewFragment.onStart()
05-27 11:29:47.786 17561 17561 D conversations: ConversationsOverviewFragment.onResume()
05-27 11:29:47.857 17561 17561 D conversations: Account2@draugr.de send ping (action=ui,lowTimeout=false)
05-27 11:29:47.906 17561 17561 D conversations: Account3@trashserver.net send ping (action=ui,lowTimeout=false)
05-27 11:29:47.978 17561 17561 D conversations: app switched into foreground
05-27 11:29:49.470 17561 16688 D conversations: skipped device list update because it hasn't changed
05-27 11:29:49.486 17561 16888 D conversations: skipped device list update because it hasn't changed
05-27 11:30:06.110 17561 17561 D conversations: ConversationFragment.onAttach()
05-27 11:30:06.142 17561 17561 D conversations: reInit(hasExtras=true)
05-27 11:30:06.142 17561 17561 D conversations: trimming conversation
05-27 11:30:06.162 17561 17561 D conversations: scrolledToBottomAndNoPending=true
05-27 11:30:06.162 17561 17561 D conversations: jump to first unread message
05-27 11:30:06.163 17561 17561 D conversations: ConversationsOverviewFragment.onPause()
05-27 11:30:07.451 17561 17561 D conversations: toggle forced foreground service after receiving event (action=ping)
05-27 11:30:07.465 17561 17561 D conversations: ForegroundService: on
05-27 11:30:07.488 17561 17561 D conversations: toggle forced foreground service after receiving event (action=ping)
05-27 11:30:07.496 17561 17561 D conversations: ForegroundService: on
05-27 11:30:07.556 17561 17561 D conversations: toggle forced foreground service after receiving event (action=ping)
05-27 11:30:07.575 17561 17561 D conversations: ForegroundService: on
05-27 11:30:14.260 17561 17561 D conversations: app switched into background
```
",
1068,https://api.github.com/repos/iNPUTmice/Conversations/issues/3754,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3754/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3754/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3754/events,https://github.com/iNPUTmice/Conversations/issues/3754,625484967,MDU6SXNzdWU2MjU0ODQ5Njc=,3754,Jingle Call Busy-Screen should display record voice mail button,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'id': 76683388, 'node_id': 'MDU6TGFiZWw3NjY4MzM4OA==', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/feature', 'name': 'feature', 'color': '128a00', 'default': False, 'description': 'Accepted feature request'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/5', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/5', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/5/labels', 'id': 5446719, 'node_id': 'MDk6TWlsZXN0b25lNTQ0NjcxOQ==', 'number': 5, 'title': '2.8.6', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 3, 'state': 'closed', 'created_at': '2020-05-21T08:36:25Z', 'updated_at': '2020-07-08T06:33:51Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:51Z'}",0,2020-05-27T08:22:04Z,2020-05-30T08:31:08Z,2020-05-30T08:31:08Z,OWNER,,,The 'Busy' screen should offer a button to record a voice mail (which will just be a regular voice message),
1069,https://api.github.com/repos/iNPUTmice/Conversations/issues/3753,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3753/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3753/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3753/events,https://github.com/iNPUTmice/Conversations/issues/3753,625343992,MDU6SXNzdWU2MjUzNDM5OTI=,3753,Code Review: potential bugs in `eu/siacs/conversations/parser/MessageParser.java` line 843,"{'login': 'stevenleeS0ht', 'id': 41497963, 'node_id': 'MDQ6VXNlcjQxNDk3OTYz', 'avatar_url': 'https://avatars1.githubusercontent.com/u/41497963?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/stevenleeS0ht', 'html_url': 'https://github.com/stevenleeS0ht', 'followers_url': 'https://api.github.com/users/stevenleeS0ht/followers', 'following_url': 'https://api.github.com/users/stevenleeS0ht/following{/other_user}', 'gists_url': 'https://api.github.com/users/stevenleeS0ht/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/stevenleeS0ht/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/stevenleeS0ht/subscriptions', 'organizations_url': 'https://api.github.com/users/stevenleeS0ht/orgs', 'repos_url': 'https://api.github.com/users/stevenleeS0ht/repos', 'events_url': 'https://api.github.com/users/stevenleeS0ht/events{/privacy}', 'received_events_url': 'https://api.github.com/users/stevenleeS0ht/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-05-27T03:18:01Z,2020-05-27T12:39:27Z,2020-05-27T05:31:26Z,NONE,,,"The code is follow:
```java
mXmppConnectionService.getJingleConnectionManager().deliverMessage(account, packet.getTo(), packet.getFrom(), child, remoteMsgId, serverMsgId, timestamp);
```
However, `deliverMessage` method expect `(Account, Jid, Jid, Element, String, long)`, there is one more argument provided to this method.",
1070,https://api.github.com/repos/iNPUTmice/Conversations/issues/3752,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3752/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3752/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3752/events,https://github.com/iNPUTmice/Conversations/issues/3752,624823379,MDU6SXNzdWU2MjQ4MjMzNzk=,3752,Race condidion when attempting to display video stream,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028640246, 'node_id': 'MDU6TGFiZWwyMDI4NjQwMjQ2', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/bug', 'name': 'bug', 'color': 'c95100', 'default': True, 'description': 'Accepted, reproducible bug'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/5', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/5', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/5/labels', 'id': 5446719, 'node_id': 'MDk6TWlsZXN0b25lNTQ0NjcxOQ==', 'number': 5, 'title': '2.8.6', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 3, 'state': 'closed', 'created_at': '2020-05-21T08:36:25Z', 'updated_at': '2020-07-08T06:33:51Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:51Z'}",0,2020-05-26T11:50:09Z,2020-05-27T13:53:20Z,2020-05-27T13:53:20Z,OWNER,,,"There might be a race leading up to this. It's probably save for the UI to just catch and ignore.
```
java.lang.IllegalStateException: MediaStreamTrack has been disposed.
at org.webrtc.MediaStreamTrack.checkMediaStreamTrackExists(MediaStreamTrack.java:120)
at org.webrtc.MediaStreamTrack.getNativeMediaStreamTrack(MediaStreamTrack.java:114)
at org.webrtc.VideoTrack.addSink(VideoTrack.java:40)
at eu.siacs.conversations.ui.RtpSessionActivity.updateVideoViews(RtpSessionActivity.java:765)
at eu.siacs.conversations.ui.RtpSessionActivity.lambda$onJingleRtpConnectionUpdate$4$RtpSessionActivity(RtpSessionActivity.java:892)
at eu.siacs.conversations.ui.-$$Lambda$RtpSessionActivity$zwP4CbuJkR2JW_EyCmT42WhqMYw.run(Unknown Source:8)
at android.os.Handler.handleCallback(Handler.java:789)
at android.os.Handler.dispatchMessage(Handler.java:98)
at android.os.Looper.loop(Looper.java:251)
at android.app.ActivityThread.main(ActivityThread.java:6589)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)
```",
1071,https://api.github.com/repos/iNPUTmice/Conversations/issues/3751,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3751/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3751/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3751/events,https://github.com/iNPUTmice/Conversations/issues/3751,624685288,MDU6SXNzdWU2MjQ2ODUyODg=,3751,Jingle Direct Init,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'id': 76683388, 'node_id': 'MDU6TGFiZWw3NjY4MzM4OA==', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/feature', 'name': 'feature', 'color': '128a00', 'default': False, 'description': 'Accepted feature request'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/5', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/5', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/5/labels', 'id': 5446719, 'node_id': 'MDk6TWlsZXN0b25lNTQ0NjcxOQ==', 'number': 5, 'title': '2.8.6', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 3, 'state': 'closed', 'created_at': '2020-05-21T08:36:25Z', 'updated_at': '2020-07-08T06:33:51Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:51Z'}",0,2020-05-26T08:09:40Z,2020-05-30T12:56:26Z,2020-05-30T12:56:25Z,OWNER,,,"Conversations is relying in Jingle Message Initiation to establish calls. However there might be clients out there that support all modern Jingle extensions to have compatible calls but don’t support JMI. For those clients it would be good if we could init directly.
* [ ] select Presence method needs filter for feature
* [ ] Calling RtpSessionActivity with full JID should direct init call
* [ ] detect if contact has at least one resource that supports message init",
1072,https://api.github.com/repos/iNPUTmice/Conversations/issues/3750,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3750/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3750/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3750/events,https://github.com/iNPUTmice/Conversations/issues/3750,623619748,MDU6SXNzdWU2MjM2MTk3NDg=,3750,"Display MUC JID in details instead of ""hosted at ..."" when ""advanced mode"" is selected","{'login': 'ericschdt', 'id': 43318127, 'node_id': 'MDQ6VXNlcjQzMzE4MTI3', 'avatar_url': 'https://avatars0.githubusercontent.com/u/43318127?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ericschdt', 'html_url': 'https://github.com/ericschdt', 'followers_url': 'https://api.github.com/users/ericschdt/followers', 'following_url': 'https://api.github.com/users/ericschdt/following{/other_user}', 'gists_url': 'https://api.github.com/users/ericschdt/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ericschdt/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ericschdt/subscriptions', 'organizations_url': 'https://api.github.com/users/ericschdt/orgs', 'repos_url': 'https://api.github.com/users/ericschdt/repos', 'events_url': 'https://api.github.com/users/ericschdt/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ericschdt/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-05-23T09:32:52Z,2020-05-23T14:56:56Z,2020-05-23T14:56:56Z,NONE,,,"#### General information
* **Version:** 2.8.3
* **Conversations source:** F-Droid
#### Steps to reproduce
1. Create a private non-anonymous MUC
#### Expected result
The MUC details says something like
`foobar@conference.blabla.im`
#### Actual result
`Hosted at conference.blabla.im`
#### Why do I need that?
Yes it's a random name, but I wanted to join my own MUC again with Dino, which simply did not autojoin or list the MUC on the server. In the end I had to invite myself via Conversations, which felt a little bit weird. I finally also got to know the MUC JID as Dino displays it. :)
I see no reason not to show the MUC JID, especially when the ""advanced mode"" is selected.",
1073,https://api.github.com/repos/iNPUTmice/Conversations/issues/3749,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3749/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3749/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3749/events,https://github.com/iNPUTmice/Conversations/issues/3749,622327839,MDU6SXNzdWU2MjIzMjc4Mzk=,3749,Show call duration - use 2 numbers for minutes,"{'login': 'licaon-kter', 'id': 2282799, 'node_id': 'MDQ6VXNlcjIyODI3OTk=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2282799?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/licaon-kter', 'html_url': 'https://github.com/licaon-kter', 'followers_url': 'https://api.github.com/users/licaon-kter/followers', 'following_url': 'https://api.github.com/users/licaon-kter/following{/other_user}', 'gists_url': 'https://api.github.com/users/licaon-kter/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/licaon-kter/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/licaon-kter/subscriptions', 'organizations_url': 'https://api.github.com/users/licaon-kter/orgs', 'repos_url': 'https://api.github.com/users/licaon-kter/repos', 'events_url': 'https://api.github.com/users/licaon-kter/events{/privacy}', 'received_events_url': 'https://api.github.com/users/licaon-kter/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-05-21T08:07:40Z,2020-05-21T08:14:40Z,2020-05-21T08:14:40Z,CONTRIBUTOR,,,...so it's `00:00` not `0:00`,
1074,https://api.github.com/repos/iNPUTmice/Conversations/issues/3748,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3748/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3748/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3748/events,https://github.com/iNPUTmice/Conversations/issues/3748,621472907,MDU6SXNzdWU2MjE0NzI5MDc=,3748,Feature Request: Upgrade a voice call to a video call,"{'login': 'heurekus', 'id': 47881430, 'node_id': 'MDQ6VXNlcjQ3ODgxNDMw', 'avatar_url': 'https://avatars3.githubusercontent.com/u/47881430?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/heurekus', 'html_url': 'https://github.com/heurekus', 'followers_url': 'https://api.github.com/users/heurekus/followers', 'following_url': 'https://api.github.com/users/heurekus/following{/other_user}', 'gists_url': 'https://api.github.com/users/heurekus/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/heurekus/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/heurekus/subscriptions', 'organizations_url': 'https://api.github.com/users/heurekus/orgs', 'repos_url': 'https://api.github.com/users/heurekus/repos', 'events_url': 'https://api.github.com/users/heurekus/events{/privacy}', 'received_events_url': 'https://api.github.com/users/heurekus/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-05-20T05:32:14Z,2020-05-20T05:55:35Z,2020-05-20T05:55:34Z,NONE,,,"It would be nice to be able to start a Conversations call as voice only (with device held to the ear) and then to upgrade it to video mode by pressing a video button (and thus also activating speaker mode at the same time). Later downgrade to voice only would also be nice (I know, this later part is sort of possible already today with switching the video off).",
1075,https://api.github.com/repos/iNPUTmice/Conversations/issues/3747,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3747/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3747/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3747/events,https://github.com/iNPUTmice/Conversations/issues/3747,621462928,MDU6SXNzdWU2MjE0NjI5Mjg=,3747,Feature Request: Alert in the same way as for normal calls,"{'login': 'heurekus', 'id': 47881430, 'node_id': 'MDQ6VXNlcjQ3ODgxNDMw', 'avatar_url': 'https://avatars3.githubusercontent.com/u/47881430?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/heurekus', 'html_url': 'https://github.com/heurekus', 'followers_url': 'https://api.github.com/users/heurekus/followers', 'following_url': 'https://api.github.com/users/heurekus/following{/other_user}', 'gists_url': 'https://api.github.com/users/heurekus/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/heurekus/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/heurekus/subscriptions', 'organizations_url': 'https://api.github.com/users/heurekus/orgs', 'repos_url': 'https://api.github.com/users/heurekus/repos', 'events_url': 'https://api.github.com/users/heurekus/events{/privacy}', 'received_events_url': 'https://api.github.com/users/heurekus/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-05-20T05:06:02Z,2020-05-20T05:09:34Z,2020-05-20T05:09:33Z,NONE,,,"With my alerting settings, I have an ascending volume for alerting calls, i.e. very quiet at the beginning and then rising. Conversations, however, starts with the maximum volume set for alerting. Especially for quiet environments that is not ideal.
So my feature request: Honor the settings for ascending alerting tone volume. If there is no access to this setting from inside the app, perhaps it is worth considering a dedicated Conversations settings option to have an ascending volume for the alerting tone?",
1076,https://api.github.com/repos/iNPUTmice/Conversations/issues/3746,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3746/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3746/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3746/events,https://github.com/iNPUTmice/Conversations/issues/3746,621462039,MDU6SXNzdWU2MjE0NjIwMzk=,3746,Simultaneous classic voice call and Conversations call issues,"{'login': 'heurekus', 'id': 47881430, 'node_id': 'MDQ6VXNlcjQ3ODgxNDMw', 'avatar_url': 'https://avatars3.githubusercontent.com/u/47881430?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/heurekus', 'html_url': 'https://github.com/heurekus', 'followers_url': 'https://api.github.com/users/heurekus/followers', 'following_url': 'https://api.github.com/users/heurekus/following{/other_user}', 'gists_url': 'https://api.github.com/users/heurekus/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/heurekus/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/heurekus/subscriptions', 'organizations_url': 'https://api.github.com/users/heurekus/orgs', 'repos_url': 'https://api.github.com/users/heurekus/repos', 'events_url': 'https://api.github.com/users/heurekus/events{/privacy}', 'received_events_url': 'https://api.github.com/users/heurekus/received_events', 'type': 'User', 'site_admin': False}","[{'id': 76683388, 'node_id': 'MDU6TGFiZWw3NjY4MzM4OA==', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/feature', 'name': 'feature', 'color': '128a00', 'default': False, 'description': 'Accepted feature request'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/10', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/10', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/10/labels', 'id': 5715881, 'node_id': 'MDk6TWlsZXN0b25lNTcxNTg4MQ==', 'number': 10, 'title': '2.8.11', 'description': '', 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 7, 'state': 'open', 'created_at': '2020-07-30T15:09:08Z', 'updated_at': '2020-09-01T12:04:49Z', 'due_on': None, 'closed_at': None}",2,2020-05-20T05:03:37Z,2020-08-29T06:17:07Z,2020-08-29T06:17:07Z,NONE,,,"#### General information
* **Version:** 2.8.3+fcr
* **Device:** Samsung S9
* **Android Version:** Android 8 - Lineage OS
* **Server name:** self hosted
* **Server software:** Prosody
* **Installed server modules:**
* **Conversations source:** F-Droid
#### Steps to reproduce
1. Make a 'normal' voice call in the cellular network on device A. Call is ongoing.
2. Take another device (B) and establish a CONVERSATIONS voice call to device A.
3. Device A shows incoming call from Conversations. User can accept the call
4. User can hear and talk 'into' the normal call and into the Conversations call at the same time
5. User can be heard in both calls
6. The remote ends can not hear each other (obviously, it's two different apps)
Main problem: The user is not aware that he is suddenly talking to two persons, as from a traditional UI perspective, an accepted incoming call during another call puts the first call on hold.
There could be different approaches to improve this behavior:
1. Reject the incoming Conversations call with a ""busy"" indication
2. Let the Conversations call come through, let the user accept it and automatically put the 'normal' call on hold. When the Conversation calls ends, the normal call is 'unheld'
3. Make a 3-way call out of this.
I guess 2. and 3. are not really feasible or overly complex to implement but I thought I'd mention them anyway for completeness.
Further: The reverse scenario, i.e. Conversations call is running and a 'normal' call comes in should also be considered.
",
1077,https://api.github.com/repos/iNPUTmice/Conversations/issues/3745,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3745/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3745/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3745/events,https://github.com/iNPUTmice/Conversations/issues/3745,621013206,MDU6SXNzdWU2MjEwMTMyMDY=,3745,Add/remove favourite - menu text does not change,"{'login': 'licaon-kter', 'id': 2282799, 'node_id': 'MDQ6VXNlcjIyODI3OTk=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2282799?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/licaon-kter', 'html_url': 'https://github.com/licaon-kter', 'followers_url': 'https://api.github.com/users/licaon-kter/followers', 'following_url': 'https://api.github.com/users/licaon-kter/following{/other_user}', 'gists_url': 'https://api.github.com/users/licaon-kter/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/licaon-kter/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/licaon-kter/subscriptions', 'organizations_url': 'https://api.github.com/users/licaon-kter/orgs', 'repos_url': 'https://api.github.com/users/licaon-kter/repos', 'events_url': 'https://api.github.com/users/licaon-kter/events{/privacy}', 'received_events_url': 'https://api.github.com/users/licaon-kter/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028640246, 'node_id': 'MDU6TGFiZWwyMDI4NjQwMjQ2', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/bug', 'name': 'bug', 'color': 'c95100', 'default': True, 'description': 'Accepted, reproducible bug'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/4', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/4', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/4/labels', 'id': 5427833, 'node_id': 'MDk6TWlsZXN0b25lNTQyNzgzMw==', 'number': 4, 'title': '2.8.5', 'description': '', 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 8, 'state': 'closed', 'created_at': '2020-05-15T17:05:14Z', 'updated_at': '2020-07-08T06:33:52Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:52Z'}",0,2020-05-19T14:15:53Z,2020-05-19T17:39:30Z,2020-05-19T17:39:29Z,CONTRIBUTOR,,,"...unless you exit the chat view and come back.
2.8.4, self-build, Tag
The action is done correctly, eg. Touch Add twice and it won't be faved _(when you exit to actually see it)_, or the other way around",
1078,https://api.github.com/repos/iNPUTmice/Conversations/issues/3744,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3744/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3744/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3744/events,https://github.com/iNPUTmice/Conversations/pull/3744,620984957,MDExOlB1bGxSZXF1ZXN0NDIwMTI1NzMy,3744,Fastlane update info,"{'login': 'licaon-kter', 'id': 2282799, 'node_id': 'MDQ6VXNlcjIyODI3OTk=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2282799?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/licaon-kter', 'html_url': 'https://github.com/licaon-kter', 'followers_url': 'https://api.github.com/users/licaon-kter/followers', 'following_url': 'https://api.github.com/users/licaon-kter/following{/other_user}', 'gists_url': 'https://api.github.com/users/licaon-kter/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/licaon-kter/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/licaon-kter/subscriptions', 'organizations_url': 'https://api.github.com/users/licaon-kter/orgs', 'repos_url': 'https://api.github.com/users/licaon-kter/repos', 'events_url': 'https://api.github.com/users/licaon-kter/events{/privacy}', 'received_events_url': 'https://api.github.com/users/licaon-kter/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-05-19T13:38:09Z,2020-05-19T13:55:04Z,2020-05-19T13:55:04Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/pulls/3744', 'html_url': 'https://github.com/iNPUTmice/Conversations/pull/3744', 'diff_url': 'https://github.com/iNPUTmice/Conversations/pull/3744.diff', 'patch_url': 'https://github.com/iNPUTmice/Conversations/pull/3744.patch'}",,
1079,https://api.github.com/repos/iNPUTmice/Conversations/issues/3743,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3743/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3743/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3743/events,https://github.com/iNPUTmice/Conversations/issues/3743,620939665,MDU6SXNzdWU2MjA5Mzk2NjU=,3743,Unclear security of video/audio calls,"{'login': 'Roxxor91', 'id': 4848448, 'node_id': 'MDQ6VXNlcjQ4NDg0NDg=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/4848448?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Roxxor91', 'html_url': 'https://github.com/Roxxor91', 'followers_url': 'https://api.github.com/users/Roxxor91/followers', 'following_url': 'https://api.github.com/users/Roxxor91/following{/other_user}', 'gists_url': 'https://api.github.com/users/Roxxor91/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Roxxor91/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Roxxor91/subscriptions', 'organizations_url': 'https://api.github.com/users/Roxxor91/orgs', 'repos_url': 'https://api.github.com/users/Roxxor91/repos', 'events_url': 'https://api.github.com/users/Roxxor91/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Roxxor91/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-05-19T12:33:28Z,2020-05-19T12:48:18Z,2020-05-19T12:48:18Z,NONE,,,"#### General information
* **Version:** 2.8.2
* **Device:** Sasmung A3 2016
* **Android Version:** Android 9 (LOS)
* **Server name:** self hosted
* **Server software:** prosody
* **Installed server modules:** All needed Modules for Conversations
* **Conversations source:** F-Droid
#### Steps to reproduce
1. Read Readme
2. No Information about Video/Audio Call Security/Technology used
#### Expected result
Find Information about Video/Audio security/technology
#### Actual result
I do not find Information about Video/Audio security/technology
#### Comment
Hi!
Thanks for the great new feature of video/audio calls. But how about security? As I see the technology is based on WebRTC? Is that correct? How about security? Is there transport encryption? End-to-End encryption? No encryption? It would be nice if the security would also be visible from the Readme/Store Information.
If there is no encryption, maybe this would help to implement it: https://jitsi.org/blog/e2ee/",
1080,https://api.github.com/repos/iNPUTmice/Conversations/issues/3742,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3742/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3742/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3742/events,https://github.com/iNPUTmice/Conversations/issues/3742,620910014,MDU6SXNzdWU2MjA5MTAwMTQ=,3742,"Having problem with spydex when i run code , getting no error but result as Run and location of a directory.","{'login': 'Pythonpreran', 'id': 65601871, 'node_id': 'MDQ6VXNlcjY1NjAxODcx', 'avatar_url': 'https://avatars0.githubusercontent.com/u/65601871?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Pythonpreran', 'html_url': 'https://github.com/Pythonpreran', 'followers_url': 'https://api.github.com/users/Pythonpreran/followers', 'following_url': 'https://api.github.com/users/Pythonpreran/following{/other_user}', 'gists_url': 'https://api.github.com/users/Pythonpreran/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Pythonpreran/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Pythonpreran/subscriptions', 'organizations_url': 'https://api.github.com/users/Pythonpreran/orgs', 'repos_url': 'https://api.github.com/users/Pythonpreran/repos', 'events_url': 'https://api.github.com/users/Pythonpreran/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Pythonpreran/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-05-19T11:45:34Z,2020-05-19T11:56:27Z,2020-05-19T11:56:27Z,NONE,,,"
As I mentioned above , the screenshot is here.
![Screenshot (24)](https://user-images.githubusercontent.com/65601871/82322545-4fe99700-99f4-11ea-9c51-7032d2adb9d6.png)
the code i am trying is in the pic.
",
1081,https://api.github.com/repos/iNPUTmice/Conversations/issues/3741,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3741/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3741/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3741/events,https://github.com/iNPUTmice/Conversations/issues/3741,620596939,MDU6SXNzdWU2MjA1OTY5Mzk=,3741,"Old accounts do not log in, new account does","{'login': 'Mothsdroyp', 'id': 49704294, 'node_id': 'MDQ6VXNlcjQ5NzA0Mjk0', 'avatar_url': 'https://avatars0.githubusercontent.com/u/49704294?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Mothsdroyp', 'html_url': 'https://github.com/Mothsdroyp', 'followers_url': 'https://api.github.com/users/Mothsdroyp/followers', 'following_url': 'https://api.github.com/users/Mothsdroyp/following{/other_user}', 'gists_url': 'https://api.github.com/users/Mothsdroyp/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Mothsdroyp/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Mothsdroyp/subscriptions', 'organizations_url': 'https://api.github.com/users/Mothsdroyp/orgs', 'repos_url': 'https://api.github.com/users/Mothsdroyp/repos', 'events_url': 'https://api.github.com/users/Mothsdroyp/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Mothsdroyp/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,5,2020-05-19T00:58:27Z,2020-05-27T00:07:55Z,2020-05-20T05:04:03Z,NONE,,,"#### General information
* **Version:** 2.8.3+fcr
* **Device:** Galaxy S9
* **Android Version:** Android 10 (stock)
* **Server name:** jabber.at, jabber.calyxinstitute.org jabber.lightwitch.org
* **Server software:** per servers above
* **Installed server modules:** per above public servers
* **Conversations source:** F-Droid
I updated conversations regularly. Sometime after an update the jabber.at and jabber.calyxinstitute.org servers started saying ""unauthorized"", while the newly created account at lightwitch.org would log in.
I downloaded a different app ""aTalk"" from F-droid to trouble shoot. On the same device all accounts would log-in with aTalk, but only the 1 of 3 as above would log in from conversations. On a computer all accounts log-in from chat client.
On conversations I tried deleting accounts and re-creating, but it still said ""unauthorized"" for all except lightwitch.org, while still logging in with aTalk app on the same Samsung device.
Unfortunately I was unable to get adb logcat -s conversations to give me output (bad cable perhaps). I will try again to get this log output later.
",
1082,https://api.github.com/repos/iNPUTmice/Conversations/issues/3740,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3740/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3740/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3740/events,https://github.com/iNPUTmice/Conversations/issues/3740,620352566,MDU6SXNzdWU2MjAzNTI1NjY=,3740,Wrong chat overview sorting,"{'login': 'jugendhacker', 'id': 12773748, 'node_id': 'MDQ6VXNlcjEyNzczNzQ4', 'avatar_url': 'https://avatars0.githubusercontent.com/u/12773748?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jugendhacker', 'html_url': 'https://github.com/jugendhacker', 'followers_url': 'https://api.github.com/users/jugendhacker/followers', 'following_url': 'https://api.github.com/users/jugendhacker/following{/other_user}', 'gists_url': 'https://api.github.com/users/jugendhacker/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jugendhacker/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jugendhacker/subscriptions', 'organizations_url': 'https://api.github.com/users/jugendhacker/orgs', 'repos_url': 'https://api.github.com/users/jugendhacker/repos', 'events_url': 'https://api.github.com/users/jugendhacker/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jugendhacker/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-05-18T16:40:04Z,2020-05-19T05:49:38Z,2020-05-19T05:49:38Z,NONE,,,"#### General information
* **Version:** 2.8.3+fcr
* **Device:** Samsung J5 2015 (j5nlte)
* **Android Version:** Android 10 (LOS)
* **Server name:** self hosted: jugendhacker.de
* **Server software:** ejabberd 20.04
* **Conversations source:** F-Droid
#### Steps to reproduce
1. someone sends a message to a MUC while being offline
2. later the person comes online again and the message is being send with the old timestamp
#### Expected result
Conversations should still order the chats in the overview by their real newest message (the one with the newest timestamp).
#### Actual result
Conversations does display the MUC further down in the list, based on the the timestamp of the message that arrived last.
",
1083,https://api.github.com/repos/iNPUTmice/Conversations/issues/3739,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3739/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3739/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3739/events,https://github.com/iNPUTmice/Conversations/issues/3739,620295299,MDU6SXNzdWU2MjAyOTUyOTk=,3739,not providing `ufrag` on a jingle causes calls to fail,"{'login': 'eeeeeta', 'id': 9402870, 'node_id': 'MDQ6VXNlcjk0MDI4NzA=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/9402870?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/eeeeeta', 'html_url': 'https://github.com/eeeeeta', 'followers_url': 'https://api.github.com/users/eeeeeta/followers', 'following_url': 'https://api.github.com/users/eeeeeta/following{/other_user}', 'gists_url': 'https://api.github.com/users/eeeeeta/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/eeeeeta/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/eeeeeta/subscriptions', 'organizations_url': 'https://api.github.com/users/eeeeeta/orgs', 'repos_url': 'https://api.github.com/users/eeeeeta/repos', 'events_url': 'https://api.github.com/users/eeeeeta/events{/privacy}', 'received_events_url': 'https://api.github.com/users/eeeeeta/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-05-18T15:19:13Z,2020-05-19T15:26:51Z,2020-05-19T15:26:51Z,NONE,,,"On [line 149 of SessionDescription.java](https://github.com/iNPUTmice/Conversations/blob/f7a0d2031a815a3a3478bc87aa15eee4a60b6971/src/main/java/eu/siacs/conversations/xmpp/jingle/SessionDescription.java#L149), the `ufrag` attribute on a jingle `` is checked for whitespace even if it is null (i.e. not provided by the other party). This causes the conversion to SDP to fail, and the call to be terminated:
```
05-18 16:13:47.472 23548 23548 D conversations: eta@theta.eu.org: unable convert offer from session-initiate to SDP
05-18 16:13:47.472 23548 23548 D conversations: java.lang.NullPointerException: Attempt to invoke interface method 'int java.lang.CharSequence.length()' on a null object reference
05-18 16:13:47.472 23548 23548 D conversations: at com.google.common.base.CharMatcher.indexIn(CharMatcher.java:560)
05-18 16:13:47.472 23548 23548 D conversations: at com.google.common.base.CharMatcher.indexIn(CharMatcher.java:541)
05-18 16:13:47.472 23548 23548 D conversations: at com.google.common.base.CharMatcher.matchesNoneOf(CharMatcher.java:527)
05-18 16:13:47.472 23548 23548 D conversations: at com.google.common.base.CharMatcher.matchesAnyOf(CharMatcher.java:493)
05-18 16:13:47.472 23548 23548 D conversations: at eu.siacs.conversations.xmpp.jingle.SessionDescription.checkNoWhitespace(SessionDescription.java:274)
05-18 16:13:47.472 23548 23548 D conversations: at eu.siacs.conversations.xmpp.jingle.SessionDescription.of(SessionDescription.java:149)
05-18 16:13:47.472 23548 23548 D conversations: at eu.siacs.conversations.xmpp.jingle.JingleRtpConnection.sendSessionAccept(JingleRtpConnection.java:405)
05-18 16:13:47.472 23548 23548 D conversations: at eu.siacs.conversations.xmpp.jingle.JingleRtpConnection.acceptCallFromSessionInitialized(JingleRtpConnection.java:971)
05-18 16:13:47.472 23548 23548 D conversations: at eu.siacs.conversations.xmpp.jingle.JingleRtpConnection.acceptCall(JingleRtpConnection.java:855)
05-18 16:13:47.472 23548 23548 D conversations: at eu.siacs.conversations.ui.RtpSessionActivity.checkRecorderAndAcceptCall(RtpSessionActivity.java:165)
05-18 16:13:47.472 23548 23548 D conversations: at eu.siacs.conversations.ui.RtpSessionActivity.requestPermissionsAndAcceptCall(RtpSessionActivity.java:158)
05-18 16:13:47.472 23548 23548 D conversations: at eu.siacs.conversations.ui.RtpSessionActivity.onBackendConnected(RtpSessionActivity.java:279)
05-18 16:13:47.472 23548 23548 D conversations: at eu.siacs.conversations.ui.XmppActivity$1.onServiceConnected(XmppActivity.java:112)
05-18 16:13:47.472 23548 23548 D conversations: at android.app.LoadedApk$ServiceDispatcher.doConnected(LoadedApk.java:1739)
05-18 16:13:47.472 23548 23548 D conversations: at android.app.LoadedApk$ServiceDispatcher$RunConnection.run(LoadedApk.java:1771)
05-18 16:13:47.472 23548 23548 D conversations: at android.os.Handler.handleCallback(Handler.java:873)
05-18 16:13:47.472 23548 23548 D conversations: at android.os.Handler.dispatchMessage(Handler.java:99)
05-18 16:13:47.472 23548 23548 D conversations: at android.os.Looper.loop(Looper.java:193)
05-18 16:13:47.472 23548 23548 D conversations: at android.app.ActivityThread.main(ActivityThread.java:6923)
05-18 16:13:47.472 23548 23548 D conversations: at java.lang.reflect.Method.invoke(Native Method)
05-18 16:13:47.472 23548 23548 D conversations: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
05-18 16:13:47.472 23548 23548 D conversations: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:870)
05-18 16:13:47.472 23548 23548 D conversations: eta@theta.eu.org: transitioned into TERMINATED_APPLICATION_FAILURE
```",
1084,https://api.github.com/repos/iNPUTmice/Conversations/issues/3738,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3738/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3738/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3738/events,https://github.com/iNPUTmice/Conversations/issues/3738,619665091,MDU6SXNzdWU2MTk2NjUwOTE=,3738,Audio call - dial tones should output via EARPHONE,"{'login': 'licaon-kter', 'id': 2282799, 'node_id': 'MDQ6VXNlcjIyODI3OTk=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2282799?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/licaon-kter', 'html_url': 'https://github.com/licaon-kter', 'followers_url': 'https://api.github.com/users/licaon-kter/followers', 'following_url': 'https://api.github.com/users/licaon-kter/following{/other_user}', 'gists_url': 'https://api.github.com/users/licaon-kter/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/licaon-kter/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/licaon-kter/subscriptions', 'organizations_url': 'https://api.github.com/users/licaon-kter/orgs', 'repos_url': 'https://api.github.com/users/licaon-kter/repos', 'events_url': 'https://api.github.com/users/licaon-kter/events{/privacy}', 'received_events_url': 'https://api.github.com/users/licaon-kter/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028640246, 'node_id': 'MDU6TGFiZWwyMDI4NjQwMjQ2', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/bug', 'name': 'bug', 'color': 'c95100', 'default': True, 'description': 'Accepted, reproducible bug'}]",closed,False,,[],"{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/4', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/4', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/4/labels', 'id': 5427833, 'node_id': 'MDk6TWlsZXN0b25lNTQyNzgzMw==', 'number': 4, 'title': '2.8.5', 'description': '', 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 8, 'state': 'closed', 'created_at': '2020-05-15T17:05:14Z', 'updated_at': '2020-07-08T06:33:52Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:52Z'}",0,2020-05-17T10:24:13Z,2020-05-21T13:40:14Z,2020-05-21T13:40:14Z,CONTRIBUTOR,,,"...not speaker _(at a really low volume)_
2.8.3 F-Droid",
1085,https://api.github.com/repos/iNPUTmice/Conversations/issues/3737,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3737/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3737/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3737/events,https://github.com/iNPUTmice/Conversations/issues/3737,619511363,MDU6SXNzdWU2MTk1MTEzNjM=,3737,Feature request: use XEP-0065 SOCKS5 as fallback when TURN is not available,"{'login': 'Andy-2639', 'id': 13392804, 'node_id': 'MDQ6VXNlcjEzMzkyODA0', 'avatar_url': 'https://avatars0.githubusercontent.com/u/13392804?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Andy-2639', 'html_url': 'https://github.com/Andy-2639', 'followers_url': 'https://api.github.com/users/Andy-2639/followers', 'following_url': 'https://api.github.com/users/Andy-2639/following{/other_user}', 'gists_url': 'https://api.github.com/users/Andy-2639/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Andy-2639/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Andy-2639/subscriptions', 'organizations_url': 'https://api.github.com/users/Andy-2639/orgs', 'repos_url': 'https://api.github.com/users/Andy-2639/repos', 'events_url': 'https://api.github.com/users/Andy-2639/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Andy-2639/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-05-16T16:38:38Z,2020-05-16T16:42:28Z,2020-05-16T16:42:28Z,NONE,,,"Conversations uses TURN for NAT traversal. As this is also used for SIP afaik, this seems to be a natural solution. However, not all XMPP servers advertise a TURN server.
At least ejabberd 20.04 needs an IP address configured for the TURN server. This can be problematic in case of an server with an dynamic IP address.
XEP-0065 also mentions (optional) UDP support. So please add support for using XEP-0065 as fallback when neither direct connection nor TURN is available (maybe also allow to use XEP-0065 TCP for AV calls when XEP-0065 UDP is unavailable).",
1086,https://api.github.com/repos/iNPUTmice/Conversations/issues/3736,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3736/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3736/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3736/events,https://github.com/iNPUTmice/Conversations/issues/3736,619510421,MDU6SXNzdWU2MTk1MTA0MjE=,3736,Feature request: Allow configuration of a port range for incoming connections,"{'login': 'Andy-2639', 'id': 13392804, 'node_id': 'MDQ6VXNlcjEzMzkyODA0', 'avatar_url': 'https://avatars0.githubusercontent.com/u/13392804?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Andy-2639', 'html_url': 'https://github.com/Andy-2639', 'followers_url': 'https://api.github.com/users/Andy-2639/followers', 'following_url': 'https://api.github.com/users/Andy-2639/following{/other_user}', 'gists_url': 'https://api.github.com/users/Andy-2639/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Andy-2639/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Andy-2639/subscriptions', 'organizations_url': 'https://api.github.com/users/Andy-2639/orgs', 'repos_url': 'https://api.github.com/users/Andy-2639/repos', 'events_url': 'https://api.github.com/users/Andy-2639/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Andy-2639/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-05-16T16:33:19Z,2020-05-16T16:46:02Z,2020-05-16T16:46:02Z,NONE,,,"There are XMPP servers without TURN support. To allow AV calls, it might helpful to support to limit the ports used for incoming connections (or UDP in general) to a user-defined range. So the user can configure (1:1) port-forwarding in his router.
FileZilla and Miranda NG are examples for software supporting user-defined port ranges for incoming connections.
The option might be hidden behind Advanced/Expert settings like the port configuration for the XMPP server.
Supporting UPnP might also be useful.",
1087,https://api.github.com/repos/iNPUTmice/Conversations/issues/3735,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3735/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3735/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3735/events,https://github.com/iNPUTmice/Conversations/issues/3735,619338290,MDU6SXNzdWU2MTkzMzgyOTA=,3735,Excessively long messages break the client permanently,"{'login': 'luke-jr', 'id': 1095675, 'node_id': 'MDQ6VXNlcjEwOTU2NzU=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1095675?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/luke-jr', 'html_url': 'https://github.com/luke-jr', 'followers_url': 'https://api.github.com/users/luke-jr/followers', 'following_url': 'https://api.github.com/users/luke-jr/following{/other_user}', 'gists_url': 'https://api.github.com/users/luke-jr/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/luke-jr/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/luke-jr/subscriptions', 'organizations_url': 'https://api.github.com/users/luke-jr/orgs', 'repos_url': 'https://api.github.com/users/luke-jr/repos', 'events_url': 'https://api.github.com/users/luke-jr/events{/privacy}', 'received_events_url': 'https://api.github.com/users/luke-jr/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028640246, 'node_id': 'MDU6TGFiZWwyMDI4NjQwMjQ2', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/bug', 'name': 'bug', 'color': 'c95100', 'default': True, 'description': 'Accepted, reproducible bug'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/4', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/4', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/4/labels', 'id': 5427833, 'node_id': 'MDk6TWlsZXN0b25lNTQyNzgzMw==', 'number': 4, 'title': '2.8.5', 'description': '', 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 8, 'state': 'closed', 'created_at': '2020-05-15T17:05:14Z', 'updated_at': '2020-07-08T06:33:52Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:52Z'}",0,2020-05-16T00:29:01Z,2020-05-22T16:24:03Z,2020-05-22T16:24:03Z,NONE,,,"#### General information
* **Version:** 2.8.3+pcr
* **Device:** Moto E LTE
* **Android Version:** LineageOS
* **Server name:** dashjr.org
* **Server software:** ejabberd 18.03
* **Conversations source:** PlayStore
#### Steps to reproduce
1. Send an extremely long message
#### Expected result
Message sends, or an error occurs once.
#### Actual result
Message is ""waiting"" forever. Client gets disconnected from the server for a ""policy violation"", and Conversations attempts to redeliver the message after reconnection, causing a loop in the policy violation. Messages to others might get out (unsure), but all communications with the original contact is impossible.
There is no way to cancel sending, so the only way I found to recover was to hack the history database manually.
#### Server log
```
2020-05-16 00:23:34.188 [info] <0.29033.7>@ejabberd_c2s:process_terminated:271 (tls|<0.29033.7>) Closing c2s session for luke@dashjr.org/Conversations.l1Ku: Stream closed by us: XML stanza is too big (policy-violation)
```
",
1088,https://api.github.com/repos/iNPUTmice/Conversations/issues/3734,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3734/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3734/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3734/events,https://github.com/iNPUTmice/Conversations/issues/3734,619240781,MDU6SXNzdWU2MTkyNDA3ODE=,3734,Echo when calling some specific devices,"{'login': 'manderseck', 'id': 55786970, 'node_id': 'MDQ6VXNlcjU1Nzg2OTcw', 'avatar_url': 'https://avatars3.githubusercontent.com/u/55786970?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/manderseck', 'html_url': 'https://github.com/manderseck', 'followers_url': 'https://api.github.com/users/manderseck/followers', 'following_url': 'https://api.github.com/users/manderseck/following{/other_user}', 'gists_url': 'https://api.github.com/users/manderseck/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/manderseck/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/manderseck/subscriptions', 'organizations_url': 'https://api.github.com/users/manderseck/orgs', 'repos_url': 'https://api.github.com/users/manderseck/repos', 'events_url': 'https://api.github.com/users/manderseck/events{/privacy}', 'received_events_url': 'https://api.github.com/users/manderseck/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028640246, 'node_id': 'MDU6TGFiZWwyMDI4NjQwMjQ2', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/bug', 'name': 'bug', 'color': 'c95100', 'default': True, 'description': 'Accepted, reproducible bug'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/4', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/4', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/4/labels', 'id': 5427833, 'node_id': 'MDk6TWlsZXN0b25lNTQyNzgzMw==', 'number': 4, 'title': '2.8.5', 'description': '', 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 8, 'state': 'closed', 'created_at': '2020-05-15T17:05:14Z', 'updated_at': '2020-07-08T06:33:52Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:52Z'}",11,2020-05-15T20:47:32Z,2020-05-21T09:13:56Z,2020-05-21T09:13:56Z,NONE,,,"#### General information
* **Version:** 2.8.3+fcr
* **Device:** Fairphone 2
* **Android Version:** Android 7.1.2
* **Conversations source:** F-Droid
#### Steps to reproduce
1. Call a contact that uses a Fairphone 2.
2. I will hear myself with a echo as long as I'm talking.
There shouldn't be an echo as this is very annoying. This was confirmed with other contacts using different phones. There I don't have an echo.
#### Additional information
Seems like this issue happens on phones where the hardware echo cancellation is broken and other apps have this issue as well, see the Fairphone forum:
https://forum.fairphone.com/t/echo-when-calling-via-some-apps-telegram-signal-hangout/28849/4
Since it looks like they cannot fix the hardware echo cancellation it would be cool if the mentioned switch to a software solution was a rather easy one.",
1089,https://api.github.com/repos/iNPUTmice/Conversations/issues/3733,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3733/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3733/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3733/events,https://github.com/iNPUTmice/Conversations/issues/3733,619183051,MDU6SXNzdWU2MTkxODMwNTE=,3733,Phone in standby does not receive calls,"{'login': 'morgenroth', 'id': 454499, 'node_id': 'MDQ6VXNlcjQ1NDQ5OQ==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/454499?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/morgenroth', 'html_url': 'https://github.com/morgenroth', 'followers_url': 'https://api.github.com/users/morgenroth/followers', 'following_url': 'https://api.github.com/users/morgenroth/following{/other_user}', 'gists_url': 'https://api.github.com/users/morgenroth/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/morgenroth/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/morgenroth/subscriptions', 'organizations_url': 'https://api.github.com/users/morgenroth/orgs', 'repos_url': 'https://api.github.com/users/morgenroth/repos', 'events_url': 'https://api.github.com/users/morgenroth/events{/privacy}', 'received_events_url': 'https://api.github.com/users/morgenroth/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-05-15T19:10:50Z,2020-05-21T18:17:23Z,2020-05-15T19:20:37Z,CONTRIBUTOR,,,"#### General information
* **Version:** 2.8.3+pcr
* **Device:** Google Pixel 3a
* **Android Version:** Android 10 (stock)
* **Server name:** self hosted
* **Server software:** prosody 0.10
* **Installed server modules:** smacks, csi, mam, cloud_notify, omemo_all_access, pep_vcard_avatar, turncredentials (and more)
* **Conversations source:** PlayStore
* **Battery optimization:** Conversations is exluded from optimization
#### Steps to reproduce
1. Put device in sleep (push power button once)
2. Wait a minute
3. Try to initiate a call to the device from another device
#### Expected result
What is the expected output?
The call screen appears and signals the call.
#### Actual result
What do you see instead?
The calling app shows the state ""Ringing..."", but the callee does not see anything until the device is switched on.
#### Hard guess
It looks like the device does not get any push notification via GCM for calls.
Does phone calls also trigger the GCM wake-up procedure?",
1090,https://api.github.com/repos/iNPUTmice/Conversations/issues/3732,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3732/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3732/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3732/events,https://github.com/iNPUTmice/Conversations/issues/3732,618791075,MDU6SXNzdWU2MTg3OTEwNzU=,3732,[Feature request] Missed call notifications,"{'login': 'truenicoco', 'id': 1313576, 'node_id': 'MDQ6VXNlcjEzMTM1NzY=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1313576?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/truenicoco', 'html_url': 'https://github.com/truenicoco', 'followers_url': 'https://api.github.com/users/truenicoco/followers', 'following_url': 'https://api.github.com/users/truenicoco/following{/other_user}', 'gists_url': 'https://api.github.com/users/truenicoco/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/truenicoco/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/truenicoco/subscriptions', 'organizations_url': 'https://api.github.com/users/truenicoco/orgs', 'repos_url': 'https://api.github.com/users/truenicoco/repos', 'events_url': 'https://api.github.com/users/truenicoco/events{/privacy}', 'received_events_url': 'https://api.github.com/users/truenicoco/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-05-15T08:25:19Z,2020-05-17T18:27:46Z,2020-05-16T16:46:36Z,NONE,,,"When a call is missed, a user has to manually open the conversations app to notice it. It would make sense that they are somehow more noticeable, on the lock screen for instance. A simple message-like notification would be OK I guess.",
1091,https://api.github.com/repos/iNPUTmice/Conversations/issues/3731,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3731/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3731/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3731/events,https://github.com/iNPUTmice/Conversations/issues/3731,618270598,MDU6SXNzdWU2MTgyNzA1OTg=,3731,Wrong camera-ratio using videocall-feature,"{'login': 'mdnghtman', 'id': 27377239, 'node_id': 'MDQ6VXNlcjI3Mzc3MjM5', 'avatar_url': 'https://avatars1.githubusercontent.com/u/27377239?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mdnghtman', 'html_url': 'https://github.com/mdnghtman', 'followers_url': 'https://api.github.com/users/mdnghtman/followers', 'following_url': 'https://api.github.com/users/mdnghtman/following{/other_user}', 'gists_url': 'https://api.github.com/users/mdnghtman/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mdnghtman/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mdnghtman/subscriptions', 'organizations_url': 'https://api.github.com/users/mdnghtman/orgs', 'repos_url': 'https://api.github.com/users/mdnghtman/repos', 'events_url': 'https://api.github.com/users/mdnghtman/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mdnghtman/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,10,2020-05-14T14:19:16Z,2020-07-13T15:53:01Z,,NONE,,,"#### General information
* **Version:** 2.8.3+fcr
* **Device:** Samsung Galaxy S3 LTE
* **Android Version:** Android 7 (LOS 14.1)
* **Conversations source:** F-Droid
Using the new videocall-feature my camera will be stretched. Out of ratio.
It's wider than it should be, in vertical mode, and narrower than it should be, in horizontal mode.
Hope we can sort this out together.",
1092,https://api.github.com/repos/iNPUTmice/Conversations/issues/3729,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3729/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3729/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3729/events,https://github.com/iNPUTmice/Conversations/issues/3729,617880719,MDU6SXNzdWU2MTc4ODA3MTk=,3729,Feature Request: Auto-reconnect webrtc session when network is changed.,"{'login': 'dingdongnigetou', 'id': 5841139, 'node_id': 'MDQ6VXNlcjU4NDExMzk=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/5841139?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dingdongnigetou', 'html_url': 'https://github.com/dingdongnigetou', 'followers_url': 'https://api.github.com/users/dingdongnigetou/followers', 'following_url': 'https://api.github.com/users/dingdongnigetou/following{/other_user}', 'gists_url': 'https://api.github.com/users/dingdongnigetou/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dingdongnigetou/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dingdongnigetou/subscriptions', 'organizations_url': 'https://api.github.com/users/dingdongnigetou/orgs', 'repos_url': 'https://api.github.com/users/dingdongnigetou/repos', 'events_url': 'https://api.github.com/users/dingdongnigetou/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dingdongnigetou/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-05-14T02:42:29Z,2020-05-14T06:34:39Z,2020-05-14T06:34:39Z,NONE,,,"
Network changed case:
* WIFI->Cellular or WIFI->WIFI or Cellular->WIFI
* The public IP of Cellular-Network is changed
For more stable, we should consider this issue.",
1093,https://api.github.com/repos/iNPUTmice/Conversations/issues/3728,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3728/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3728/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3728/events,https://github.com/iNPUTmice/Conversations/issues/3728,617709343,MDU6SXNzdWU2MTc3MDkzNDM=,3728,Add room configuration for logging,"{'login': 'larchange', 'id': 287506, 'node_id': 'MDQ6VXNlcjI4NzUwNg==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/287506?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/larchange', 'html_url': 'https://github.com/larchange', 'followers_url': 'https://api.github.com/users/larchange/followers', 'following_url': 'https://api.github.com/users/larchange/following{/other_user}', 'gists_url': 'https://api.github.com/users/larchange/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/larchange/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/larchange/subscriptions', 'organizations_url': 'https://api.github.com/users/larchange/orgs', 'repos_url': 'https://api.github.com/users/larchange/repos', 'events_url': 'https://api.github.com/users/larchange/events{/privacy}', 'received_events_url': 'https://api.github.com/users/larchange/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,8,2020-05-13T19:47:18Z,2020-05-14T18:28:36Z,2020-05-14T18:09:55Z,NONE,,,"#### General information
* **Version:** 2.8.2
* **Device:** Xiaomi
* **Android Version:** Android 10 (stock)
* **Server name:** self hosted
* **Server software:** metronome 3.14
* **Installed server modules:** MAM
* **Conversations source:** F-Droid
#### Steps to reproduce
1. Create a private room
2. Invite account B with account A
3. Discuss
4. Disconnect B
5. A send message
6. B reconnect
#### Expected result
B should receive A's message
#### Actual result
B don't see the message
That's because Conversations don't set ""logging configuration"". I believe that should be the default in private muc or it need to be togglable in room configuration.
To mitigate this metronome has just added a way to configure default configuration if not provided by the client.",
1094,https://api.github.com/repos/iNPUTmice/Conversations/issues/3727,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3727/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3727/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3727/events,https://github.com/iNPUTmice/Conversations/issues/3727,617673120,MDU6SXNzdWU2MTc2NzMxMjA=,3727,Feature request: visual icons / color coding for a/v,"{'login': 'tyler71', 'id': 4926565, 'node_id': 'MDQ6VXNlcjQ5MjY1NjU=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/4926565?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/tyler71', 'html_url': 'https://github.com/tyler71', 'followers_url': 'https://api.github.com/users/tyler71/followers', 'following_url': 'https://api.github.com/users/tyler71/following{/other_user}', 'gists_url': 'https://api.github.com/users/tyler71/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/tyler71/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/tyler71/subscriptions', 'organizations_url': 'https://api.github.com/users/tyler71/orgs', 'repos_url': 'https://api.github.com/users/tyler71/repos', 'events_url': 'https://api.github.com/users/tyler71/events{/privacy}', 'received_events_url': 'https://api.github.com/users/tyler71/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-05-13T18:46:37Z,2020-05-14T06:42:08Z,2020-05-14T06:42:07Z,NONE,,,"When receiving a call, it'd be nice if the call had a visual icon, perhaps color coded, to indicate the type of call beyond the message `Incoming [video] call`
![small](https://user-images.githubusercontent.com/4926565/81851811-e870aa80-950e-11ea-802a-f2604884d5ab.jpg) ![smallvideo](https://user-images.githubusercontent.com/4926565/81851815-e870aa80-950e-11ea-88c7-71468162d8c2.jpg)
(used [feather icons](https://feathericons.com/?query=camera) to demo)",
1095,https://api.github.com/repos/iNPUTmice/Conversations/issues/3726,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3726/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3726/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3726/events,https://github.com/iNPUTmice/Conversations/issues/3726,617034957,MDU6SXNzdWU2MTcwMzQ5NTc=,3726,Auto hide call controls,"{'login': 'licaon-kter', 'id': 2282799, 'node_id': 'MDQ6VXNlcjIyODI3OTk=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2282799?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/licaon-kter', 'html_url': 'https://github.com/licaon-kter', 'followers_url': 'https://api.github.com/users/licaon-kter/followers', 'following_url': 'https://api.github.com/users/licaon-kter/following{/other_user}', 'gists_url': 'https://api.github.com/users/licaon-kter/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/licaon-kter/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/licaon-kter/subscriptions', 'organizations_url': 'https://api.github.com/users/licaon-kter/orgs', 'repos_url': 'https://api.github.com/users/licaon-kter/repos', 'events_url': 'https://api.github.com/users/licaon-kter/events{/privacy}', 'received_events_url': 'https://api.github.com/users/licaon-kter/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028699543, 'node_id': 'MDU6TGFiZWwyMDI4Njk5NTQz', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/wontfix', 'name': 'wontfix', 'color': '007ebc', 'default': True, 'description': 'Manually closed'}]",closed,False,,[],,3,2020-05-12T23:42:05Z,2020-05-13T09:50:45Z,2020-05-13T07:19:37Z,CONTRIBUTOR,,,"...after a few seconds, show call controls if user touches the screen, hide if they touch again.",
1096,https://api.github.com/repos/iNPUTmice/Conversations/issues/3725,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3725/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3725/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3725/events,https://github.com/iNPUTmice/Conversations/issues/3725,616623585,MDU6SXNzdWU2MTY2MjM1ODU=,3725, XMPP/Jingle calling between Conversations (Android) and Pidgin (Linux),"{'login': 'merge', 'id': 503356, 'node_id': 'MDQ6VXNlcjUwMzM1Ng==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/503356?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/merge', 'html_url': 'https://github.com/merge', 'followers_url': 'https://api.github.com/users/merge/followers', 'following_url': 'https://api.github.com/users/merge/following{/other_user}', 'gists_url': 'https://api.github.com/users/merge/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/merge/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/merge/subscriptions', 'organizations_url': 'https://api.github.com/users/merge/orgs', 'repos_url': 'https://api.github.com/users/merge/repos', 'events_url': 'https://api.github.com/users/merge/events{/privacy}', 'received_events_url': 'https://api.github.com/users/merge/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-05-12T12:40:01Z,2020-05-12T14:01:55Z,2020-05-12T12:50:13Z,NONE,,,"#### General information
* **Version:** 2.8.2+fcr
* **Device:** Nexus 5X
* **Android Version:** LineageOS 15.1 (Android 8.1.0)
* **Server name:** jabber.at
* **Server software:**
* **Installed server modules:**
* **Conversations source:** F-Droid
#### Steps to reproduce
1. Open Pidgin with different XMPP Account on a Linux desktop
2. No Call capability is shown in Conversations
3. Call capability is shown in Pidgin but calling fails very early
#### Expected result
XMPP/Jingle audio calling working between Conversations (Android) and Pidgin (Linux)
#### Actual result
Audio (or Video) calling doesn't work. It works very well when *both* Accounts use Pidgin (Linux) or *both* use Conversations.
#### Debug output
Logs when trying to call (audio) from Pidgin are below (Pidgin at least ""discovers"" that is could call)
```
05-12 14:36:39.536 D/conversations(24312): martink@jabber.at: packet delivered to JingleRtpConnection
05-12 14:36:39.541 D/conversations(24312): martink@jabber.at: improperly formatted contents
05-12 14:36:39.541 D/conversations(24312): java.lang.SecurityException: Use of DTLS-SRTP (XEP-0320) is required for content audio-session
05-12 14:36:39.541 D/conversations(24312): at eu.siacs.conversations.xmpp.jingle.RtpContentMap.requireDTLSFingerprint(RtpContentMap.java:81)
05-12 14:36:39.541 D/conversations(24312): at eu.siacs.conversations.xmpp.jingle.JingleRtpConnection.receiveSessionInitiate(JingleRtpConnection.java:285)
05-12 14:36:39.541 D/conversations(24312): at eu.siacs.conversations.xmpp.jingle.JingleRtpConnection.deliverPacket(JingleRtpConnection.java:167)
05-12 14:36:39.541 D/conversations(24312): at eu.siacs.conversations.xmpp.jingle.JingleConnectionManager.deliverPacket(JingleConnectionManager.java:110)
05-12 14:36:39.541 D/conversations(24312): at eu.siacs.conversations.services.XmppConnectionService.lambda$createConnection$11$XmppConnectionService(XmppConnectionService.java:1345)
05-12 14:36:39.541 D/conversations(24312): at eu.siacs.conversations.services.-$$Lambda$XmppConnectionService$VYN9drkH9aobUCuwT-F_1u6C7v8.onJinglePacketReceived(Unknown Source:2)
05-12 14:36:39.541 D/conversations(24312): at eu.siacs.conversations.xmpp.XmppConnection.processIq(XmppConnection.java:729)
05-12 14:36:39.541 D/conversations(24312): at eu.siacs.conversations.xmpp.XmppConnection.processStream(XmppConnection.java:636)
05-12 14:36:39.541 D/conversations(24312): at eu.siacs.conversations.xmpp.XmppConnection.processStream(XmppConnection.java:484)
05-12 14:36:39.541 D/conversations(24312): at eu.siacs.conversations.xmpp.XmppConnection.connect(XmppConnection.java:376)
05-12 14:36:39.541 D/conversations(24312): at eu.siacs.conversations.xmpp.XmppConnection.run(XmppConnection.java:455)
05-12 14:36:39.541 D/conversations(24312): at java.lang.Thread.run(Thread.java:764)
05-12 14:36:39.543 D/conversations(24312): martink@jabber.at: transitioned into TERMINATED_APPLICATION_FAILURE
05-12 14:36:39.577 D/conversations(24312): ForegroundService: on
05-12 14:36:39.594 D/conversations(24312): Use of DTLS-SRTP (XEP-0320) is required for content audio-session
```",
1097,https://api.github.com/repos/iNPUTmice/Conversations/issues/3724,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3724/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3724/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3724/events,https://github.com/iNPUTmice/Conversations/issues/3724,616618859,MDU6SXNzdWU2MTY2MTg4NTk=,3724,Client Cert Account can only not be added on setup process,"{'login': 'TuxCoder', 'id': 2470864, 'node_id': 'MDQ6VXNlcjI0NzA4NjQ=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/2470864?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/TuxCoder', 'html_url': 'https://github.com/TuxCoder', 'followers_url': 'https://api.github.com/users/TuxCoder/followers', 'following_url': 'https://api.github.com/users/TuxCoder/following{/other_user}', 'gists_url': 'https://api.github.com/users/TuxCoder/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/TuxCoder/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/TuxCoder/subscriptions', 'organizations_url': 'https://api.github.com/users/TuxCoder/orgs', 'repos_url': 'https://api.github.com/users/TuxCoder/repos', 'events_url': 'https://api.github.com/users/TuxCoder/events{/privacy}', 'received_events_url': 'https://api.github.com/users/TuxCoder/received_events', 'type': 'User', 'site_admin': False}","[{'id': 76683388, 'node_id': 'MDU6TGFiZWw3NjY4MzM4OA==', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/feature', 'name': 'feature', 'color': '128a00', 'default': False, 'description': 'Accepted feature request'}]",closed,False,,[],"{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/3', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/3', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/3/labels', 'id': 5398560, 'node_id': 'MDk6TWlsZXN0b25lNTM5ODU2MA==', 'number': 3, 'title': '2.8.4', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 4, 'state': 'closed', 'created_at': '2020-05-08T16:06:33Z', 'updated_at': '2020-07-08T06:33:54Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:54Z'}",2,2020-05-12T12:32:28Z,2020-05-13T11:52:17Z,2020-05-13T11:52:17Z,NONE,,,"#### General information
* **Version:** 2.8.1+fcr (fdroid)
* **Device:** Xiaomi Mi Note 4, and other
* **Android Version:** Android 9 (linageos)
* **Server name:** self hosted client cert only
* **Server software:** prosody 0.11.2
* **Installed server modules:** Stream Managment, CSI, MAM,...
* **Conversations source:** F-Droid
#### Steps to reproduce
1. wipe app data
2. try to add an account with client certifiacate
#### Expected result
Be able to add an account with client certificate at setup time
#### Actual result
Can only add account with password
#### Current Workaround
Add dummy user on conversation.im and delete that later
#### ~~Debug output~~ UI Problem
",
1098,https://api.github.com/repos/iNPUTmice/Conversations/issues/3723,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3723/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3723/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3723/events,https://github.com/iNPUTmice/Conversations/issues/3723,616618252,MDU6SXNzdWU2MTY2MTgyNTI=,3723,[bug] crashes if server does only support client cert,"{'login': 'TuxCoder', 'id': 2470864, 'node_id': 'MDQ6VXNlcjI0NzA4NjQ=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/2470864?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/TuxCoder', 'html_url': 'https://github.com/TuxCoder', 'followers_url': 'https://api.github.com/users/TuxCoder/followers', 'following_url': 'https://api.github.com/users/TuxCoder/following{/other_user}', 'gists_url': 'https://api.github.com/users/TuxCoder/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/TuxCoder/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/TuxCoder/subscriptions', 'organizations_url': 'https://api.github.com/users/TuxCoder/orgs', 'repos_url': 'https://api.github.com/users/TuxCoder/repos', 'events_url': 'https://api.github.com/users/TuxCoder/events{/privacy}', 'received_events_url': 'https://api.github.com/users/TuxCoder/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-05-12T12:31:28Z,2020-05-12T19:53:36Z,2020-05-12T12:48:43Z,NONE,,,"#### General information
* **Version:** 2.8.1+fcr (fdroid)
* **Device:** Xiaomi Mi xx, and others
* **Android Version:** Android 9 (stock)
* **Server name:** `jabber (d0t) o-g (d0t)` , self hosted client cert only
* **Server software:** prosody 0.11.2
* **Installed server modules:** Stream Managment, CSI, MAM,...
* **Conversations source:** F-Droid
#### Steps to reproduce
1. try to add account to that host above (randome name/password)
#### Expected result
show error/ switch to client cert auth
#### Actual result
crash
#### Debug output
````
05-12 14:28:08.599 29412 29438 E AndroidRuntime: FATAL EXCEPTION: Thread-4
05-12 14:28:08.599 29412 29438 E AndroidRuntime: Process: eu.siacs.conversations, PID: 29412
05-12 14:28:08.599 29412 29438 E AndroidRuntime: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String java.lang.Object.toString()' on a null object reference
05-12 14:28:08.599 29412 29438 E AndroidRuntime: at eu.siacs.conversations.xmpp.XmppConnection.authenticate(XmppConnection.java:902)
05-12 14:28:08.599 29412 29438 E AndroidRuntime: at eu.siacs.conversations.xmpp.XmppConnection.processStreamFeatures(XmppConnection.java:850)
05-12 14:28:08.599 29412 29438 E AndroidRuntime: at eu.siacs.conversations.xmpp.XmppConnection.processStream(XmppConnection.java:466)
05-12 14:28:08.599 29412 29438 E AndroidRuntime: at eu.siacs.conversations.xmpp.XmppConnection.switchOverToTls(XmppConnection.java:807)
05-12 14:28:08.599 29412 29438 E AndroidRuntime: at eu.siacs.conversations.xmpp.XmppConnection.processStream(XmppConnection.java:468)
05-12 14:28:08.599 29412 29438 E AndroidRuntime: at eu.siacs.conversations.xmpp.XmppConnection.connect(XmppConnection.java:376)
05-12 14:28:08.599 29412 29438 E AndroidRuntime: at eu.siacs.conversations.xmpp.XmppConnection.run(XmppConnection.java:455)
05-12 14:28:08.599 29412 29438 E AndroidRuntime: at java.lang.Thread.run(Thread.java:764)
````
",
1099,https://api.github.com/repos/iNPUTmice/Conversations/issues/3722,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3722/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3722/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3722/events,https://github.com/iNPUTmice/Conversations/issues/3722,616103938,MDU6SXNzdWU2MTYxMDM5Mzg=,3722,[Feature request] Support Message Moderation,"{'login': 'meaz', 'id': 13604424, 'node_id': 'MDQ6VXNlcjEzNjA0NDI0', 'avatar_url': 'https://avatars3.githubusercontent.com/u/13604424?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/meaz', 'html_url': 'https://github.com/meaz', 'followers_url': 'https://api.github.com/users/meaz/followers', 'following_url': 'https://api.github.com/users/meaz/following{/other_user}', 'gists_url': 'https://api.github.com/users/meaz/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/meaz/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/meaz/subscriptions', 'organizations_url': 'https://api.github.com/users/meaz/orgs', 'repos_url': 'https://api.github.com/users/meaz/repos', 'events_url': 'https://api.github.com/users/meaz/events{/privacy}', 'received_events_url': 'https://api.github.com/users/meaz/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028699543, 'node_id': 'MDU6TGFiZWwyMDI4Njk5NTQz', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/wontfix', 'name': 'wontfix', 'color': '007ebc', 'default': True, 'description': 'Manually closed'}]",closed,False,,[],,1,2020-05-11T18:51:05Z,2020-05-13T07:20:05Z,2020-05-13T07:20:01Z,NONE,,,"It would be nice if COnversations could support XEP-0425: Message Moderation. Prosody has a module for that: [mod_muc_moderation]( https://modules.prosody.im/mod_muc_moderation.html)
and conversejs already supports this, so I guess this is something possible.
That would be really useful to moderate a muc from a smartphone.
",
1100,https://api.github.com/repos/iNPUTmice/Conversations/issues/3721,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3721/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3721/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3721/events,https://github.com/iNPUTmice/Conversations/issues/3721,616035459,MDU6SXNzdWU2MTYwMzU0NTk=,3721,Swipe to answer/reject call,"{'login': 'licaon-kter', 'id': 2282799, 'node_id': 'MDQ6VXNlcjIyODI3OTk=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2282799?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/licaon-kter', 'html_url': 'https://github.com/licaon-kter', 'followers_url': 'https://api.github.com/users/licaon-kter/followers', 'following_url': 'https://api.github.com/users/licaon-kter/following{/other_user}', 'gists_url': 'https://api.github.com/users/licaon-kter/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/licaon-kter/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/licaon-kter/subscriptions', 'organizations_url': 'https://api.github.com/users/licaon-kter/orgs', 'repos_url': 'https://api.github.com/users/licaon-kter/repos', 'events_url': 'https://api.github.com/users/licaon-kter/events{/privacy}', 'received_events_url': 'https://api.github.com/users/licaon-kter/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,0,2020-05-11T17:00:45Z,2020-05-12T08:26:42Z,,CONTRIBUTOR,,,"...is already in the users muscle memory.
Also, usability, eg. not answer/reject by mistake when picking up the device.",
1101,https://api.github.com/repos/iNPUTmice/Conversations/issues/3720,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3720/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3720/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3720/events,https://github.com/iNPUTmice/Conversations/pull/3720,615821811,MDExOlB1bGxSZXF1ZXN0NDE2MDUzMTY1,3720,Add fastlange changelog too,"{'login': 'licaon-kter', 'id': 2282799, 'node_id': 'MDQ6VXNlcjIyODI3OTk=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2282799?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/licaon-kter', 'html_url': 'https://github.com/licaon-kter', 'followers_url': 'https://api.github.com/users/licaon-kter/followers', 'following_url': 'https://api.github.com/users/licaon-kter/following{/other_user}', 'gists_url': 'https://api.github.com/users/licaon-kter/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/licaon-kter/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/licaon-kter/subscriptions', 'organizations_url': 'https://api.github.com/users/licaon-kter/orgs', 'repos_url': 'https://api.github.com/users/licaon-kter/repos', 'events_url': 'https://api.github.com/users/licaon-kter/events{/privacy}', 'received_events_url': 'https://api.github.com/users/licaon-kter/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-05-11T11:46:01Z,2020-05-11T13:57:36Z,2020-05-11T13:57:36Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/pulls/3720', 'html_url': 'https://github.com/iNPUTmice/Conversations/pull/3720', 'diff_url': 'https://github.com/iNPUTmice/Conversations/pull/3720.diff', 'patch_url': 'https://github.com/iNPUTmice/Conversations/pull/3720.patch'}",,
1102,https://api.github.com/repos/iNPUTmice/Conversations/issues/3719,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3719/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3719/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3719/events,https://github.com/iNPUTmice/Conversations/issues/3719,615805263,MDU6SXNzdWU2MTU4MDUyNjM=,3719,Set ICE discovery to continues,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'id': 76683388, 'node_id': 'MDU6TGFiZWw3NjY4MzM4OA==', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/feature', 'name': 'feature', 'color': '128a00', 'default': False, 'description': 'Accepted feature request'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/4', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/4', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/4/labels', 'id': 5427833, 'node_id': 'MDk6TWlsZXN0b25lNTQyNzgzMw==', 'number': 4, 'title': '2.8.5', 'description': '', 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 8, 'state': 'closed', 'created_at': '2020-05-15T17:05:14Z', 'updated_at': '2020-07-08T06:33:52Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:52Z'}",0,2020-05-11T11:18:31Z,2020-05-25T09:13:24Z,2020-05-25T09:13:24Z,OWNER,,,In order to recover from network switches we should set ICE discovery to continues. There should be a (relatively) short timeout for re connection attempts. XMPP layer should probably retry more aggressively while in that state.,
1103,https://api.github.com/repos/iNPUTmice/Conversations/issues/3718,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3718/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3718/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3718/events,https://github.com/iNPUTmice/Conversations/issues/3718,615754874,MDU6SXNzdWU2MTU3NTQ4NzQ=,3718,"If multiple URLs are present in a message, only the first one is copied","{'login': 'marmistrz', 'id': 2914938, 'node_id': 'MDQ6VXNlcjI5MTQ5Mzg=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2914938?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/marmistrz', 'html_url': 'https://github.com/marmistrz', 'followers_url': 'https://api.github.com/users/marmistrz/followers', 'following_url': 'https://api.github.com/users/marmistrz/following{/other_user}', 'gists_url': 'https://api.github.com/users/marmistrz/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/marmistrz/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/marmistrz/subscriptions', 'organizations_url': 'https://api.github.com/users/marmistrz/orgs', 'repos_url': 'https://api.github.com/users/marmistrz/repos', 'events_url': 'https://api.github.com/users/marmistrz/events{/privacy}', 'received_events_url': 'https://api.github.com/users/marmistrz/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-05-11T10:00:13Z,2020-05-14T06:43:12Z,2020-05-14T06:43:11Z,CONTRIBUTOR,,,"#### General information
* **Version:** 2.8.1.
* **Device:** N/A
* **Android Version:** N/A
* **Server name:** N/A
* **Server software:** N/A
* **Installed server modules:** N/A
* **Conversations source:** F-Droid
#### Steps to reproduce
1. Receive a message containing multiple URLs
2. Right click the second URL
3. Click ""copy URL""
3. Paste.
#### Expected result
The second url is pasted
#### Actual result
The first url is pasted
#### Debug output
I guess N/A, because it's clearly an UI-related bug.
Let me know if it's really needed, then I'll get the logcat.",
1104,https://api.github.com/repos/iNPUTmice/Conversations/issues/3717,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3717/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3717/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3717/events,https://github.com/iNPUTmice/Conversations/issues/3717,615628054,MDU6SXNzdWU2MTU2MjgwNTQ=,3717,Send retrtact after failing to establish session after JMI,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028640246, 'node_id': 'MDU6TGFiZWwyMDI4NjQwMjQ2', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/bug', 'name': 'bug', 'color': 'c95100', 'default': True, 'description': 'Accepted, reproducible bug'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/3', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/3', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/3/labels', 'id': 5398560, 'node_id': 'MDk6TWlsZXN0b25lNTM5ODU2MA==', 'number': 3, 'title': '2.8.4', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 4, 'state': 'closed', 'created_at': '2020-05-08T16:06:33Z', 'updated_at': '2020-07-08T06:33:54Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:54Z'}",0,2020-05-11T06:36:16Z,2020-05-11T10:36:49Z,2020-05-11T10:36:49Z,OWNER,,,"If we fail to set up webrtc after receiving a proceed and before sending session-initiate we should send a retract.
Since 2.8.2 the other party will display that as ""retracted"". As the initiator we should display that as application failure.",
1105,https://api.github.com/repos/iNPUTmice/Conversations/issues/3716,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3716/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3716/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3716/events,https://github.com/iNPUTmice/Conversations/issues/3716,615621190,MDU6SXNzdWU2MTU2MjExOTA=,3716,Indicate server support for Audio/Video calls,"{'login': 'jacksgt', 'id': 11589682, 'node_id': 'MDQ6VXNlcjExNTg5Njgy', 'avatar_url': 'https://avatars3.githubusercontent.com/u/11589682?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jacksgt', 'html_url': 'https://github.com/jacksgt', 'followers_url': 'https://api.github.com/users/jacksgt/followers', 'following_url': 'https://api.github.com/users/jacksgt/following{/other_user}', 'gists_url': 'https://api.github.com/users/jacksgt/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jacksgt/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jacksgt/subscriptions', 'organizations_url': 'https://api.github.com/users/jacksgt/orgs', 'repos_url': 'https://api.github.com/users/jacksgt/repos', 'events_url': 'https://api.github.com/users/jacksgt/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jacksgt/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-05-11T06:21:37Z,2020-05-11T06:33:34Z,2020-05-11T06:33:34Z,NONE,,,"Hello,
thank you for the excellent audio and video calling feature!
I thought it would be useful to indicate whether the server correctly announces a STUN/TURN server via XEP-0215 in the 'Server Info' page.
Manage Accounts > Show Server Info
![Screenshot_20200511-084856](https://user-images.githubusercontent.com/11589682/81530043-ba516600-9368-11ea-8a9b-3f76b148962b.png)
",
1106,https://api.github.com/repos/iNPUTmice/Conversations/issues/3715,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3715/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3715/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3715/events,https://github.com/iNPUTmice/Conversations/issues/3715,615458303,MDU6SXNzdWU2MTU0NTgzMDM=,3715,Fix Socks5 destination for direct candidates,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028640246, 'node_id': 'MDU6TGFiZWwyMDI4NjQwMjQ2', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/bug', 'name': 'bug', 'color': 'c95100', 'default': True, 'description': 'Accepted, reproducible bug'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/3', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/3', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/3/labels', 'id': 5398560, 'node_id': 'MDk6TWlsZXN0b25lNTM5ODU2MA==', 'number': 3, 'title': '2.8.4', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 4, 'state': 'closed', 'created_at': '2020-05-08T16:06:33Z', 'updated_at': '2020-07-08T06:33:54Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:54Z'}",1,2020-05-10T19:22:14Z,2020-05-11T10:36:49Z,2020-05-11T10:36:48Z,OWNER,,,"We correctly calculate proxy candidate destinations as `transport id + proxy owner jid + other jid` but for direct candidates it’s `transport id + initiator jid + responder jid`
See https://xmpp.org/extensions/xep-0260.html#appendix-notes",
1107,https://api.github.com/repos/iNPUTmice/Conversations/issues/3714,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3714/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3714/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3714/events,https://github.com/iNPUTmice/Conversations/issues/3714,615440871,MDU6SXNzdWU2MTU0NDA4NzE=,3714,Properly separate unread from read messages; Properly restore scroll position,"{'login': 'ltGuillaume', 'id': 4777345, 'node_id': 'MDQ6VXNlcjQ3NzczNDU=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/4777345?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ltGuillaume', 'html_url': 'https://github.com/ltGuillaume', 'followers_url': 'https://api.github.com/users/ltGuillaume/followers', 'following_url': 'https://api.github.com/users/ltGuillaume/following{/other_user}', 'gists_url': 'https://api.github.com/users/ltGuillaume/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ltGuillaume/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ltGuillaume/subscriptions', 'organizations_url': 'https://api.github.com/users/ltGuillaume/orgs', 'repos_url': 'https://api.github.com/users/ltGuillaume/repos', 'events_url': 'https://api.github.com/users/ltGuillaume/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ltGuillaume/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028699543, 'node_id': 'MDU6TGFiZWwyMDI4Njk5NTQz', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/wontfix', 'name': 'wontfix', 'color': '007ebc', 'default': True, 'description': 'Manually closed'}]",closed,False,,[],,5,2020-05-10T17:45:21Z,2020-05-20T12:16:14Z,2020-05-10T19:06:35Z,NONE,,,"#### General information
* **Version:** 2.8.2+fcr
* **Device:** Samsung Galaxy S5
* **Android Version:** Android 9 (LineageOS 16)
* **Conversations source:** F-Droid
#### Steps to reproduce
1. Open a conversation
2. Close and wait for a load of new messages
3. Open the conversation again
#### Expected result
- Restoring the scroll position to where it was when leaving the conversation in step 2.
- A clear distinction between the messages already seen and those yet to be read (depending on the scroll position when closing the conversation in step 2). A separator stating ""New messages"" would be the most intuitive thing to do.
#### Actual result
- I have to scroll back to where I left manually, every single time, because the conversation is opened either at the bottom, or somewhere far below the last message I saw. It kind of acts like the scroll position is saved as a percentage, which obviously won't work when new messages have been received (haven't checked the source).
- I have to re-read multiple messages in order to find out where I was before, which is so annoying that I just give up and thus miss out on several discussed topics in the conversation.
What also happens is that the conversation is wrongfully opened at the bottom and shortly after a whole stream of new messages are added while constantly jumping to the bottom. This can go on for many seconds.",
1108,https://api.github.com/repos/iNPUTmice/Conversations/issues/3713,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3713/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3713/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3713/events,https://github.com/iNPUTmice/Conversations/issues/3713,615411743,MDU6SXNzdWU2MTU0MTE3NDM=,3713,"User question, how to make a audio or video call via Conversations?","{'login': 'stevenleeS0ht', 'id': 41497963, 'node_id': 'MDQ6VXNlcjQxNDk3OTYz', 'avatar_url': 'https://avatars1.githubusercontent.com/u/41497963?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/stevenleeS0ht', 'html_url': 'https://github.com/stevenleeS0ht', 'followers_url': 'https://api.github.com/users/stevenleeS0ht/followers', 'following_url': 'https://api.github.com/users/stevenleeS0ht/following{/other_user}', 'gists_url': 'https://api.github.com/users/stevenleeS0ht/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/stevenleeS0ht/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/stevenleeS0ht/subscriptions', 'organizations_url': 'https://api.github.com/users/stevenleeS0ht/orgs', 'repos_url': 'https://api.github.com/users/stevenleeS0ht/repos', 'events_url': 'https://api.github.com/users/stevenleeS0ht/events{/privacy}', 'received_events_url': 'https://api.github.com/users/stevenleeS0ht/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-05-10T15:10:28Z,2020-05-10T23:23:13Z,2020-05-10T15:55:51Z,NONE,,,"Since 2.8.0, it's is said to support audio and video call, it is great. But I don't yet figure out how to do that.
And I am sure that the server I use support xep0215.",
1109,https://api.github.com/repos/iNPUTmice/Conversations/issues/3712,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3712/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3712/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3712/events,https://github.com/iNPUTmice/Conversations/issues/3712,615387045,MDU6SXNzdWU2MTUzODcwNDU=,3712,App keeps crashing on start on device with of order audio system.,"{'login': 'tuxayo', 'id': 2678215, 'node_id': 'MDQ6VXNlcjI2NzgyMTU=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2678215?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/tuxayo', 'html_url': 'https://github.com/tuxayo', 'followers_url': 'https://api.github.com/users/tuxayo/followers', 'following_url': 'https://api.github.com/users/tuxayo/following{/other_user}', 'gists_url': 'https://api.github.com/users/tuxayo/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/tuxayo/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/tuxayo/subscriptions', 'organizations_url': 'https://api.github.com/users/tuxayo/orgs', 'repos_url': 'https://api.github.com/users/tuxayo/repos', 'events_url': 'https://api.github.com/users/tuxayo/events{/privacy}', 'received_events_url': 'https://api.github.com/users/tuxayo/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-05-10T13:00:30Z,2020-05-15T21:16:23Z,2020-05-10T16:32:06Z,NONE,,,"#### General information
* **Version:** 2.8.2
* **Device:** Galaxy S5
* **Android Version:** Android 9 (LineageOS for microG 16)
* **Server name:** conversations.im
* **Conversations source:** F-Droid
#### Steps to reproduce
Nothing. Actually some time after the upgrade I got the 1st Android message about the crash. (background service?)
Then I tried to open the app and it just crashes.
Very important info: my device has suffered massive damage from previous owner and nothing related to audio works.
- ear piece
- speaker
- jack
- microphone
Thus many apps crash when trying to use audio.
I'm pretty sure it's related to that due to the logs and the fact that the upgrade was from 2.7.X to 2.8.X
```
at android.media.ToneGenerator.(ToneGenerator.java:746)
at eu.siacs.conversations.xmpp.jingle.ToneManager.(ToneManager.java:24)
```
#### Debug output
BTW, `adb logcat -s conversations` is too restrictive:
````
05-10 14:43:28.274 11748 11748 D conversations: action: null
05-10 14:43:28.323 11748 11748 D conversations: ConversationsOverviewFragment.onStart()
05-10 14:43:28.324 11748 11748 D conversations: ConversationsOverviewFragment.onResume()
````
full logs
````
05-10 14:41:28.546 576 620 I chatty : uid=1000(system) ActivityManager identical 3 lines
05-10 14:41:29.549 576 620 W ActivityManager: Scheduling restart of crashed service eu.siacs.conversations/.services.XmppConnectionService in 1000ms
05-10 14:41:29.616 576 26141 I ActivityManager: START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=eu.siacs.conversations/.ui.ConversationActivity bnds=[731,1217][935,1455]} from uid 10095
05-10 14:41:29.665 576 622 I ActivityManager: Start proc 11676:eu.siacs.conversations/u0a155 for activity eu.siacs.conversations/.ui.ConversationActivity
05-10 14:41:29.738 11676 11676 I s.conversation: The ClassLoaderContext is a special shared library.
05-10 14:41:29.814 576 771 I ActivityManager: START u0 {cmp=eu.siacs.conversations/.ui.ConversationsActivity} from uid 10155
05-10 14:41:29.858 11676 11676 E ToneGenerator: Unable to marshal AudioFlinger
05-10 14:41:29.858 11676 11676 E ToneGenerator: ToneGenerator init failed
05-10 14:41:29.859 11676 11676 D AndroidRuntime: Shutting down VM
05-10 14:41:29.860 11676 11676 E AndroidRuntime: FATAL EXCEPTION: main
05-10 14:41:29.860 11676 11676 E AndroidRuntime: Process: eu.siacs.conversations, PID: 11676
05-10 14:41:29.860 11676 11676 E AndroidRuntime: java.lang.RuntimeException: Unable to instantiate service eu.siacs.conversations.services.XmppConnectionService: java.lang.RuntimeException: Init failed
05-10 14:41:29.860 11676 11676 E AndroidRuntime: at android.app.ActivityThread.handleCreateService(ActivityThread.java:3557)
05-10 14:41:29.860 11676 11676 E AndroidRuntime: at android.app.ActivityThread.access$1300(ActivityThread.java:200)
05-10 14:41:29.860 11676 11676 E AndroidRuntime: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1672)
05-10 14:41:29.860 11676 11676 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:106)
05-10 14:41:29.860 11676 11676 E AndroidRuntime: at android.os.Looper.loop(Looper.java:193)
05-10 14:41:29.860 11676 11676 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:6718)
05-10 14:41:29.860 11676 11676 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
05-10 14:41:29.860 11676 11676 E AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:491)
05-10 14:41:29.860 11676 11676 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
05-10 14:41:29.860 11676 11676 E AndroidRuntime: Caused by: java.lang.RuntimeException: Init failed
05-10 14:41:29.860 11676 11676 E AndroidRuntime: at android.media.ToneGenerator.native_setup(Native Method)
05-10 14:41:29.860 11676 11676 E AndroidRuntime: at android.media.ToneGenerator.(ToneGenerator.java:746)
05-10 14:41:29.860 11676 11676 E AndroidRuntime: at eu.siacs.conversations.xmpp.jingle.ToneManager.(ToneManager.java:24)
05-10 14:41:29.860 11676 11676 E AndroidRuntime: at eu.siacs.conversations.xmpp.jingle.JingleConnectionManager.(JingleConnectionManager.java:54)
05-10 14:41:29.860 11676 11676 E AndroidRuntime: at eu.siacs.conversations.services.XmppConnectionService.(XmppConnectionService.java:231)
05-10 14:41:29.860 11676 11676 E AndroidRuntime: at java.lang.Class.newInstance(Native Method)
05-10 14:41:29.860 11676 11676 E AndroidRuntime: at android.app.AppComponentFactory.instantiateService(AppComponentFactory.java:103)
05-10 14:41:29.860 11676 11676 E AndroidRuntime: at android.support.v4.app.CoreComponentFactory.instantiateService(CoreComponentFactory.java:68)
05-10 14:41:29.860 11676 11676 E AndroidRuntime: at android.app.ActivityThread.handleCreateService(ActivityThread.java:3552)
05-10 14:41:29.860 11676 11676 E AndroidRuntime: ... 8 more
05-10 14:41:29.866 576 621 I ActivityManager: Showing crash dialog for package eu.siacs.conversations u0
05-10 14:41:29.903 576 4760 W Adreno-EGL: : EGL_BAD_ATTRIBUTE
05-10 14:41:29.904 576 4760 D vndksupport: Loading /vendor/lib/hw/gralloc.msm8974.so from current namespace instead of sphal namespace.
05-10 14:41:30.319 576 620 W ActivityManager: Activity pause timeout for ActivityRecord{3d5875f u0 eu.siacs.conversations/.ui.ConversationActivity t3761 f}
````
",
1110,https://api.github.com/repos/iNPUTmice/Conversations/issues/3711,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3711/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3711/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3711/events,https://github.com/iNPUTmice/Conversations/issues/3711,615364403,MDU6SXNzdWU2MTUzNjQ0MDM=,3711,Make some adjustment to make org.webrtc Resolvable by Android Studio.,"{'login': 'stevenleeS0ht', 'id': 41497963, 'node_id': 'MDQ6VXNlcjQxNDk3OTYz', 'avatar_url': 'https://avatars1.githubusercontent.com/u/41497963?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/stevenleeS0ht', 'html_url': 'https://github.com/stevenleeS0ht', 'followers_url': 'https://api.github.com/users/stevenleeS0ht/followers', 'following_url': 'https://api.github.com/users/stevenleeS0ht/following{/other_user}', 'gists_url': 'https://api.github.com/users/stevenleeS0ht/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/stevenleeS0ht/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/stevenleeS0ht/subscriptions', 'organizations_url': 'https://api.github.com/users/stevenleeS0ht/orgs', 'repos_url': 'https://api.github.com/users/stevenleeS0ht/repos', 'events_url': 'https://api.github.com/users/stevenleeS0ht/events{/privacy}', 'received_events_url': 'https://api.github.com/users/stevenleeS0ht/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-05-10T10:44:20Z,2020-05-10T11:23:54Z,2020-05-10T11:23:54Z,NONE,,,"When open Android Studio,
It indicate the following error message below cursor `Cannot resolve symbol 'webrtc'`
#### General information
* **Version:** 2.6.0
* **Device:** Xiaomi Mi A1
* **Android Version:** Android 9 (stock)
* **Server name:** conversations.im, jabber.at or self hosted
* **Server software:** ejabberd 19.09.1 or prosody 0.11.3 (if known)
* **Installed server modules:** Stream Managment, CSI, MAM
* **Conversations source:** PlayStore, PlayStore Beta Channel, F-Droid, self build (latest HEAD)
#### Steps to reproduce
1. …
2. …
#### Expected result
What is the expected output?
#### Actual result
What do you see instead?
#### Debug output
Please post the output of adb logcat. The log should begin with the start of Conversations and include all the
steps it takes to reproduce the problem.
````
adb logcat -s conversations
````
",
1111,https://api.github.com/repos/iNPUTmice/Conversations/issues/3710,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3710/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3710/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3710/events,https://github.com/iNPUTmice/Conversations/issues/3710,615262580,MDU6SXNzdWU2MTUyNjI1ODA=,3710,Feature request: Add a setting to disable auto join on invite,"{'login': 'rapenne-s', 'id': 248016, 'node_id': 'MDQ6VXNlcjI0ODAxNg==', 'avatar_url': 'https://avatars2.githubusercontent.com/u/248016?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rapenne-s', 'html_url': 'https://github.com/rapenne-s', 'followers_url': 'https://api.github.com/users/rapenne-s/followers', 'following_url': 'https://api.github.com/users/rapenne-s/following{/other_user}', 'gists_url': 'https://api.github.com/users/rapenne-s/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rapenne-s/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rapenne-s/subscriptions', 'organizations_url': 'https://api.github.com/users/rapenne-s/orgs', 'repos_url': 'https://api.github.com/users/rapenne-s/repos', 'events_url': 'https://api.github.com/users/rapenne-s/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rapenne-s/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,1,2020-05-09T21:22:30Z,2020-05-10T03:04:09Z,,NONE,,,"#### General information
* **Version:** 2.8.1+fcr
* **Device:** BQ Aquaris X
* **Android Version:** Android 10 (lineageos 17.1)
* **Server name:**self hosted
* **Server software:** prosody 0.11.4
* **Installed server modules:** CSI,MAM,TURN
* **Conversations source:** F-Droid
#### Steps to reproduce
Getting invited into a MUC
#### Expected result
- Having a setting to disable auto-join and keep it as a default
- Being asked if I want to join instead of auto-joining
#### Actual result
I joined a channel I didn't want.
This could be abused by inviting people into rooms they don't want too to show unwanted content.
#### Debug output
Can't get adb to work on OpenBSD :/",
1112,https://api.github.com/repos/iNPUTmice/Conversations/issues/3709,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3709/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3709/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3709/events,https://github.com/iNPUTmice/Conversations/issues/3709,615155691,MDU6SXNzdWU2MTUxNTU2OTE=,3709,Move call icon to left,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'id': 76683388, 'node_id': 'MDU6TGFiZWw3NjY4MzM4OA==', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/feature', 'name': 'feature', 'color': '128a00', 'default': False, 'description': 'Accepted feature request'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/2', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/2', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/2/labels', 'id': 5384887, 'node_id': 'MDk6TWlsZXN0b25lNTM4NDg4Nw==', 'number': 2, 'title': '2.8.3', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 6, 'state': 'closed', 'created_at': '2020-05-05T08:02:14Z', 'updated_at': '2020-07-08T06:33:55Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:55Z'}",0,2020-05-09T11:30:51Z,2020-05-09T19:43:07Z,2020-05-09T19:43:07Z,OWNER,,,The call icon should probably be moved to the left so other icons remain in their places.,
1113,https://api.github.com/repos/iNPUTmice/Conversations/issues/3708,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3708/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3708/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3708/events,https://github.com/iNPUTmice/Conversations/issues/3708,615107925,MDU6SXNzdWU2MTUxMDc5MjU=,3708,Show call duration during voice calls,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'id': 76683388, 'node_id': 'MDU6TGFiZWw3NjY4MzM4OA==', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/feature', 'name': 'feature', 'color': '128a00', 'default': False, 'description': 'Accepted feature request'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/2', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/2', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/2/labels', 'id': 5384887, 'node_id': 'MDk6TWlsZXN0b25lNTM4NDg4Nw==', 'number': 2, 'title': '2.8.3', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 6, 'state': 'closed', 'created_at': '2020-05-05T08:02:14Z', 'updated_at': '2020-07-08T06:33:55Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:55Z'}",1,2020-05-09T06:43:18Z,2020-05-09T09:15:19Z,2020-05-09T09:15:19Z,OWNER,,,Voice calls should show the duration of the current call.,
1114,https://api.github.com/repos/iNPUTmice/Conversations/issues/3707,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3707/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3707/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3707/events,https://github.com/iNPUTmice/Conversations/issues/3707,614969941,MDU6SXNzdWU2MTQ5Njk5NDE=,3707,Catch Native Link Error,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028640246, 'node_id': 'MDU6TGFiZWwyMDI4NjQwMjQ2', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/bug', 'name': 'bug', 'color': 'c95100', 'default': True, 'description': 'Accepted, reproducible bug'}]",closed,False,,[],"{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/2', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/2', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/2/labels', 'id': 5384887, 'node_id': 'MDk6TWlsZXN0b25lNTM4NDg4Nw==', 'number': 2, 'title': '2.8.3', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 6, 'state': 'closed', 'created_at': '2020-05-05T08:02:14Z', 'updated_at': '2020-07-08T06:33:55Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:55Z'}",0,2020-05-08T20:29:12Z,2020-05-09T17:49:07Z,2020-05-09T17:49:07Z,OWNER,,,When using the APK for a wrong platform Conversations will crash trying to init WebRTC; We can and should catch that Exception and display Application Error instead.,
1115,https://api.github.com/repos/iNPUTmice/Conversations/issues/3706,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3706/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3706/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3706/events,https://github.com/iNPUTmice/Conversations/issues/3706,614701389,MDU6SXNzdWU2MTQ3MDEzODk=,3706,Turning hands-free off mutes the mike,"{'login': 'rma-x', 'id': 4435732, 'node_id': 'MDQ6VXNlcjQ0MzU3MzI=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/4435732?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/rma-x', 'html_url': 'https://github.com/rma-x', 'followers_url': 'https://api.github.com/users/rma-x/followers', 'following_url': 'https://api.github.com/users/rma-x/following{/other_user}', 'gists_url': 'https://api.github.com/users/rma-x/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/rma-x/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/rma-x/subscriptions', 'organizations_url': 'https://api.github.com/users/rma-x/orgs', 'repos_url': 'https://api.github.com/users/rma-x/repos', 'events_url': 'https://api.github.com/users/rma-x/events{/privacy}', 'received_events_url': 'https://api.github.com/users/rma-x/received_events', 'type': 'User', 'site_admin': False}",[],open,False,,[],,4,2020-05-08T12:05:28Z,2020-05-23T10:43:07Z,,NONE,,,"#### General information
* **Version:** 2.8.1
* **Device:** Zuk Z1
* **Android Version:** Cyanogen OS 12.1, based on Android 5.1.1 (stock)
* **Server name:** self hosted
* **Server software:** prosody 0.11.5
* **Installed server modules:** All that Conversations' ""Server Info"" checks for
* **Conversations source:** F-Droid
#### Steps to reproduce
1. Make an audio call (incoming or outgoing doesn't matter)
2. Disable hands-free speaking by tapping on the speaker icon until it is stroked-trough.
#### Expected result
Speaker volume goes down, so that I can talk to the other party by holding the phone to my ear.
#### Actual result
Speaker volume does go down and I can still hear the other party, but the other party doesn't hear me anymore as if my microphone was muted although the microphone icon still shows it in unmuted state. Going back to hands-free mode also unmutes my microphone again.
Debug output can be provided on rquest.
",
1116,https://api.github.com/repos/iNPUTmice/Conversations/issues/3705,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3705/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3705/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3705/events,https://github.com/iNPUTmice/Conversations/issues/3705,614673893,MDU6SXNzdWU2MTQ2NzM4OTM=,3705,Allow Volume Control when playing Audio through Earpiece,"{'login': 'paskalito', 'id': 8012793, 'node_id': 'MDQ6VXNlcjgwMTI3OTM=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/8012793?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/paskalito', 'html_url': 'https://github.com/paskalito', 'followers_url': 'https://api.github.com/users/paskalito/followers', 'following_url': 'https://api.github.com/users/paskalito/following{/other_user}', 'gists_url': 'https://api.github.com/users/paskalito/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/paskalito/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/paskalito/subscriptions', 'organizations_url': 'https://api.github.com/users/paskalito/orgs', 'repos_url': 'https://api.github.com/users/paskalito/repos', 'events_url': 'https://api.github.com/users/paskalito/events{/privacy}', 'received_events_url': 'https://api.github.com/users/paskalito/received_events', 'type': 'User', 'site_admin': False}","[{'id': 76683388, 'node_id': 'MDU6TGFiZWw3NjY4MzM4OA==', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/feature', 'name': 'feature', 'color': '128a00', 'default': False, 'description': 'Accepted feature request'}]",closed,False,,[],"{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/4', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/4', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/4/labels', 'id': 5427833, 'node_id': 'MDk6TWlsZXN0b25lNTQyNzgzMw==', 'number': 4, 'title': '2.8.5', 'description': '', 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 8, 'state': 'closed', 'created_at': '2020-05-15T17:05:14Z', 'updated_at': '2020-07-08T06:33:52Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:52Z'}",0,2020-05-08T11:06:28Z,2020-05-25T08:44:14Z,2020-05-25T08:44:13Z,NONE,,,"#### General information
* **Version:** 2.8.1
* **Device:** Galaxy S4
* **Android Version:** Android 7 (LOS)
* **Conversations source:** Fdroid
#### Steps to reproduce
1. Play an Audio Message/file
2. Hold it on your ear/trigger ""switch to earpiece""
3. push Volume Up/Down
#### Expected result
Volume Changes
#### Actual result
Nothing. happends
#### Comment
Espicially Problematic when using Earphones (way too loud)
",
1117,https://api.github.com/repos/iNPUTmice/Conversations/issues/3704,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3704/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3704/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3704/events,https://github.com/iNPUTmice/Conversations/issues/3704,614630842,MDU6SXNzdWU2MTQ2MzA4NDI=,3704,No notification about videocalls,"{'login': 'mase76', 'id': 2173853, 'node_id': 'MDQ6VXNlcjIxNzM4NTM=', 'avatar_url': 'https://avatars2.githubusercontent.com/u/2173853?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mase76', 'html_url': 'https://github.com/mase76', 'followers_url': 'https://api.github.com/users/mase76/followers', 'following_url': 'https://api.github.com/users/mase76/following{/other_user}', 'gists_url': 'https://api.github.com/users/mase76/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mase76/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mase76/subscriptions', 'organizations_url': 'https://api.github.com/users/mase76/orgs', 'repos_url': 'https://api.github.com/users/mase76/repos', 'events_url': 'https://api.github.com/users/mase76/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mase76/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-05-08T09:39:48Z,2020-05-08T14:05:43Z,2020-05-08T14:05:42Z,NONE,,,"#### General information
Version:2.8.1
Device: Sony XperiaX
Android Version: Lineage 16.1 without Gservices
Server name: self hosted
Server software: Prosody 0.11.5
Installed server modules: Stream Managment, CSI, MAM, Turncredentials (100% compliant)
Conversations source: F-Droid
#### Steps to reproduce
1. Doing a voicecall when Conversations is in the background or display is off.
#### Expected result
I get a notification about the call like normal phone calls.
#### Actual result
Nothing happens, until I take conversations to foreground. Normal messages work as expected. Battery optimization is turned off, and the foreground service is activated.
",
1118,https://api.github.com/repos/iNPUTmice/Conversations/issues/3703,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3703/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3703/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3703/events,https://github.com/iNPUTmice/Conversations/issues/3703,614335582,MDU6SXNzdWU2MTQzMzU1ODI=,3703,Calls don't work with personal DNS filter running,"{'login': 'afonari', 'id': 1243352, 'node_id': 'MDQ6VXNlcjEyNDMzNTI=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/1243352?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/afonari', 'html_url': 'https://github.com/afonari', 'followers_url': 'https://api.github.com/users/afonari/followers', 'following_url': 'https://api.github.com/users/afonari/following{/other_user}', 'gists_url': 'https://api.github.com/users/afonari/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/afonari/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/afonari/subscriptions', 'organizations_url': 'https://api.github.com/users/afonari/orgs', 'repos_url': 'https://api.github.com/users/afonari/repos', 'events_url': 'https://api.github.com/users/afonari/events{/privacy}', 'received_events_url': 'https://api.github.com/users/afonari/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,4,2020-05-07T20:50:52Z,2020-05-08T06:27:27Z,2020-05-08T06:27:27Z,NONE,,,"#### General information
* **Version:** 2.8.1 fdroid
* **Device:** BLU R1 HD
* **Android Version:** Android 6 (stock)
* **Server name:** conversations.im
* **Conversations source:** F-Droid
#### Steps to reproduce
1. Install personal DNS filter: https://github.com/IngoZenz/personaldnsfilter
2. Try to make a call. It gets stuck on Connecting phase.
Workaround. Add conversations to the white list.",
1119,https://api.github.com/repos/iNPUTmice/Conversations/issues/3702,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3702/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3702/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3702/events,https://github.com/iNPUTmice/Conversations/issues/3702,614199519,MDU6SXNzdWU2MTQxOTk1MTk=,3702,Can't initiate voice call via TURN,"{'login': 'tastytea', 'id': 3681516, 'node_id': 'MDQ6VXNlcjM2ODE1MTY=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/3681516?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/tastytea', 'html_url': 'https://github.com/tastytea', 'followers_url': 'https://api.github.com/users/tastytea/followers', 'following_url': 'https://api.github.com/users/tastytea/following{/other_user}', 'gists_url': 'https://api.github.com/users/tastytea/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/tastytea/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/tastytea/subscriptions', 'organizations_url': 'https://api.github.com/users/tastytea/orgs', 'repos_url': 'https://api.github.com/users/tastytea/repos', 'events_url': 'https://api.github.com/users/tastytea/events{/privacy}', 'received_events_url': 'https://api.github.com/users/tastytea/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,5,2020-05-07T16:47:02Z,2020-05-10T11:50:04Z,2020-05-07T17:00:46Z,NONE,,,"#### General information
* **Version:** 2.8.1+fcr
* **Device:** Motorola Moto G 2014 LTE
* **Android Version:** 7.1.2 (LineageOS)
* **Server name:** [tzend.de](https://compliance.conversations.im/server/tzend.de/)
* **Server software:** prosody 0.11.3
* **Installed server modules:** Stream Managment, CSI, MAM, turncredentials (the recently updated version), …
* **Conversations source:** F-Droid
#### Steps to reproduce
1. Be in need of a TURN server
2. Try to initiate voice-call
#### Expected result
Conversations initiates a voice-call.
#### Actual result
Conversations sends the globally routed IPv6 and the local IPv4 as candidates, but not the IP of the TURN server. It receives the IP of the TURN server, a VPN IPv4 and a globally routed IPv4. The same happens when I call him and when he calls me.
I followed and and I have verified that STUN and TURN works with .
This happens between 2 people on the same server, with different (but identically configured) VHosts, with the same STUN and TURN server, with the same Conversations version from the same source. Voice calls work if we are in the same VPN (and thus don't need TURN).
#### Debug output
`185.244.193.180` is the STUN/TURN server.
``` shell-session
$ adb logcat -v time -s conversations
05-07 17:26:21.499 D/conversations( 8308): : activating grace period till 17:28:45
05-07 17:26:22.800 D/conversations( 8308): update unread count to 162
05-07 17:26:22.813 D/conversations( 8308): : suppressing notification because turned off
05-07 17:26:25.598 D/conversations( 8308): eu.siacs.conversations.ui.RtpSessionActivity.onCreate()
05-07 17:26:25.719 D/conversations( 8308): send ping (action=ui,lowTimeout=false)
05-07 17:26:25.725 D/conversations( 8308): onJingleRtpConnectionUpdate(FINDING_DEVICE)
05-07 17:26:25.736 D/conversations( 8308): "">
05-07 17:26:25.738 D/conversations( 8308): acquiring proximity wake lock
05-07 17:26:25.849 D/conversations( 8308): eu.siacs.conversations.xmpp.jingle.ToneManager.transition(RINGING)
05-07 17:26:25.850 D/conversations( 8308): onJingleRtpConnectionUpdate(RINGING)
05-07 17:26:25.853 D/conversations( 8308): : flagging session l50ms+Ts8P1KQtb8nsSpBg as DISCOVERED
05-07 17:26:25.959 D/conversations( 8308): session proposal already at discovered. not going to fall back
05-07 17:26:25.976 D/conversations( 8308): checking microphone availability took 250ms
05-07 17:26:27.852 D/conversations( 8308): AxolotlService (): Received Message with session fingerprint: 05110bffe76973488ef52d4717bb221e6b13a575c1dc1e2ace5360c48373d31c6e
05-07 17:26:27.890 D/conversations( 8308): update unread count to 163
05-07 17:26:30.064 D/conversations( 8308): : transitioned into PROPOSED
05-07 17:26:30.065 D/conversations( 8308): onJingleRtpConnectionUpdate(RINGING)
05-07 17:26:30.073 D/conversations( 8308): ForegroundService: off
05-07 17:26:30.075 D/conversations( 8308): : delivered message to JingleRtpConnection
05-07 17:26:30.075 D/conversations( 8308): : transitioned into PROCEED
05-07 17:26:30.075 D/conversations( 8308): onJingleRtpConnectionUpdate(RINGING)
05-07 17:26:30.146 D/conversations( 8308): ForegroundService: on
05-07 17:26:30.146 D/conversations( 8308): : prepare session-initiate
05-07 17:26:30.197 D/conversations( 8308): : discovered ICE Server: [stun:turn.tzend.de:3478?transport=udp] [:] [TLS_CERT_POLICY_SECURE] [] [null] [null]
05-07 17:26:30.197 D/conversations( 8308): : discovered ICE Server: [stun:turn.tzend.de:3478?transport=tcp] [:] [TLS_CERT_POLICY_SECURE] [] [null] [null]
05-07 17:26:30.198 D/conversations( 8308): : discovered ICE Server: [turn:turn.tzend.de:3478?transport=udp] [:] [TLS_CERT_POLICY_SECURE] [] [null] [null]
05-07 17:26:30.198 D/conversations( 8308): : discovered ICE Server: [turn:turn.tzend.de:3478?transport=tcp] [:] [TLS_CERT_POLICY_SECURE] [] [null] [null]
05-07 17:26:30.208 D/conversations( 8308): ctor
05-07 17:26:30.208 D/conversations( 8308): create@[name=main, id=1]
05-07 17:26:30.208 D/conversations( 8308): ctor
05-07 17:26:30.208 D/conversations( 8308): speaker phone preference: EARPIECE
05-07 17:26:30.208 D/conversations( 8308): AppRTCProximitySensor@[name=main, id=1]
05-07 17:26:30.208 D/conversations( 8308): defaultAudioDevice: EARPIECE
05-07 17:26:30.208 D/conversations( 8308): Android SDK: 25, Release: 7.1.2, Brand: motorola, Device: thea, Id: NJH47F, Hardware: qcom, Manufacturer: motorola, Model: Moto G 2014 LTE, Product: lineage_thea
05-07 17:26:30.208 D/conversations( 8308): start
05-07 17:26:30.208 D/conversations( 8308): AudioManager starts...
05-07 17:26:30.213 D/conversations( 8308): Audio focus request granted for VOICE_CALL streams
05-07 17:26:30.234 D/conversations( 8308): start
05-07 17:26:30.236 D/conversations( 8308): BluetoothAdapter: enabled=false, state=OFF, name=schnibble, address=02:00:00:00:00:00
05-07 17:26:30.239 D/conversations( 8308): HEADSET profile state: DISCONNECTED
05-07 17:26:30.239 D/conversations( 8308): Bluetooth proxy for headset profile has started
05-07 17:26:30.239 D/conversations( 8308): start done: BT state=HEADSET_UNAVAILABLE
05-07 17:26:30.239 D/conversations( 8308): --- updateAudioDeviceState: wired headset=false, BT state=HEADSET_UNAVAILABLE
05-07 17:26:30.239 D/conversations( 8308): Device status: available=[], selected=NONE, user selected=NONE
05-07 17:26:30.240 D/conversations( 8308): setAudioDeviceInternal(device=EARPIECE)
05-07 17:26:30.240 D/conversations( 8308): New device status: available=[EARPIECE, SPEAKER_PHONE], selected=EARPIECE
05-07 17:26:30.241 D/conversations( 8308): onAudioDeviceChanged in activity: selected:EARPIECE, available:[EARPIECE, SPEAKER_PHONE]
05-07 17:26:30.241 D/conversations( 8308): --- updateAudioDeviceState done
05-07 17:26:30.242 D/conversations( 8308): AudioManager started
05-07 17:26:30.242 D/conversations( 8308): onAudioDeviceChanged in activity: selected:EARPIECE, available:[EARPIECE, SPEAKER_PHONE]
05-07 17:26:30.271 D/conversations( 8308): : transitioned into SESSION_INITIALIZED_PRE_APPROVED
05-07 17:26:30.272 D/conversations( 8308): onJingleRtpConnectionUpdate(RINGING)
05-07 17:26:30.281 D/conversations( 8308): ForegroundService: on
05-07 17:26:30.338 D/conversations( 8308): sending candidate: audio:0:candidate:2704560342 1 udp 2122066175 2003: 58033 typ host generation 0 ufrag NUOB network-id 4 network-cost 10::UNKNOWN
05-07 17:26:30.340 D/conversations( 8308): sending candidate: audio:0:candidate:247817538 1 udp 2121998079 192. 34068 typ host generation 0 ufrag NUOB network-id 3 network-cost 10::UNKNOWN
05-07 17:26:32.928 D/conversations( 8308): : packet delivered to JingleRtpConnection
05-07 17:26:32.936 D/conversations( 8308): processing session-accept with 1 contents
05-07 17:26:32.936 D/conversations( 8308): : transitioned into SESSION_ACCEPTED
05-07 17:26:32.940 D/conversations( 8308): onJingleRtpConnectionUpdate(CONNECTING)
05-07 17:26:32.980 D/conversations( 8308): ForegroundService: on
05-07 17:26:33.074 D/conversations( 8308): no remote video tracks found
05-07 17:26:33.078 D/conversations( 8308): : packet delivered to JingleRtpConnection
05-07 17:26:33.083 D/conversations( 8308): received candidate: audio:0:candidate:269996551 1 udp 2122194687 10. 44431 typ host generation 0 ufrag m+Se::UNKNOWN
05-07 17:26:33.085 D/conversations( 8308): : PeerConnectionState changed to CONNECTING
05-07 17:26:33.086 D/conversations( 8308): onJingleRtpConnectionUpdate(CONNECTING)
05-07 17:26:33.090 D/conversations( 8308): : packet delivered to JingleRtpConnection
05-07 17:26:33.094 D/conversations( 8308): received candidate: audio:0:candidate:842163049 1 udp 1685987071 31. 44431 typ srflx raddr 10. rport 44431 generation 0 ufrag m+Se::UNKNOWN
05-07 17:26:33.099 D/conversations( 8308): : packet delivered to JingleRtpConnection
05-07 17:26:33.105 D/conversations( 8308): received candidate: audio:0:candidate:2090023256 1 udp 41820159 185.244.193.180 60751 typ relay raddr 31. rport 44431 generation 0 ufrag m+Se::UNKNOWN
05-07 17:26:33.123 D/conversations( 8308): : packet delivered to JingleRtpConnection
05-07 17:26:33.130 D/conversations( 8308): received candidate: audio:0:candidate:839959976 1 udp 25042687 185.244.193.180 65173 typ relay raddr 31. rport 43146 generation 0 ufrag m+Se::UNKNOWN
05-07 17:26:40.046 D/conversations( 8308): update unread count to 164
05-07 17:26:40.052 D/conversations( 8308): : suppressing notification because turned off
05-07 17:26:40.098 D/conversations( 8308): update unread count to 165
05-07 17:26:40.102 D/conversations( 8308): : suppressing notification because turned off
05-07 17:26:40.343 D/conversations( 8308): update unread count to 166
05-07 17:26:40.347 D/conversations( 8308): : suppressing notification because turned off
05-07 17:26:47.714 D/conversations( 8308): update unread count to 167
05-07 17:26:47.719 D/conversations( 8308): : suppressing notification because turned off
05-07 17:26:48.271 D/conversations( 8308): : PeerConnectionState changed to FAILED
05-07 17:26:48.285 D/conversations( 8308): : PeerConnectionState changed to CLOSED
05-07 17:26:48.287 D/conversations( 8308): eu.siacs.conversations.xmpp.jingle.ToneManager.transition(ENDING_CALL)
05-07 17:26:48.290 D/conversations( 8308): onJingleRtpConnectionUpdate(ENDING_CALL)
05-07 17:26:48.337 D/conversations( 8308): stop
05-07 17:26:48.337 D/conversations( 8308): stop: BT state=HEADSET_UNAVAILABLE
05-07 17:26:48.338 D/conversations( 8308): stopScoAudio: BT state=HEADSET_UNAVAILABLE, SCO is on: false
05-07 17:26:48.338 D/conversations( 8308): cancelTimer
05-07 17:26:48.338 D/conversations( 8308): stop done: BT state=UNINITIALIZED
05-07 17:26:48.342 D/conversations( 8308): : transitioned into TERMINATED_CONNECTIVITY_ERROR
05-07 17:26:48.342 D/conversations( 8308): onJingleRtpConnectionUpdate(CONNECTIVITY_ERROR)
05-07 17:26:48.342 D/conversations( 8308): end card reached
05-07 17:26:48.343 D/conversations( 8308): releasing proximity wake lock
05-07 17:26:48.392 D/conversations( 8308): ForegroundService: off
05-07 17:26:48.393 D/conversations( 8308): Abandoned audio focus for VOICE_CALL streams
05-07 17:26:48.393 D/conversations( 8308): stop@[name=main, id=1]
05-07 17:26:48.393 D/conversations( 8308): AudioManager stopped
05-07 17:26:48.440 D/conversations( 8308):
05-07 17:26:48.441 D/conversations( 8308): : packet delivered to JingleRtpConnection
05-07 17:26:48.446 D/conversations( 8308): : received session terminate reason=connectivity-error() while in state TERMINATED_CONNECTIVITY_ERROR
05-07 17:26:48.446 D/conversations( 8308): : ignoring session terminate because already in TERMINATED_CONNECTIVITY_ERROR
05-07 17:26:48.525 D/conversations( 8308): : received IQ-error from /Conversations.8MEU in RTP session. item-not-found
05-07 17:26:48.525 I/conversations( 8308): : ignoring error because session was already terminated
05-07 17:26:49.894 D/conversations( 8308): reInit(hasExtras=false)
05-07 17:26:49.919 D/conversations( 8308): scrolledToBottomAndNoPending=true
05-07 17:26:49.919 D/conversations( 8308): jump to first unread message
05-07 17:26:50.056 D/conversations( 8308): ConversationFragment.onBackendConnected()
05-07 17:26:50.081 D/conversations( 8308): update unread count to 166
05-07 17:26:50.082 D/conversations( 8308): : sending read marker to /Conversations.8MEU
```
coturn log (`192.` is me, `31.` is my contact, `185.244.193.180` is the STUN/TURN server):
```
2020-05-07 15:50:22 [turnserver] 41: handle_udp_packet: New UDP endpoint: local addr 185.244.193.180:3478, remote addr 31.:56285_
2020-05-07 15:50:22 [turnserver] 41: session 002000000000000001: realm user <>: incoming packet BINDING processed, success_
2020-05-07 15:50:22 [turnserver] 41: session 002000000000000001: realm user <>: incoming packet message processed, error 401: Unauthorized_
2020-05-07 15:50:22 [turnserver] 41: IPv4. tcp or tls connected to: 31.:51732_
2020-05-07 15:50:23 [turnserver] 41: session 000000000000000001: realm user <>: incoming packet message processed, error 401: Unauthorized_
2020-05-07 15:50:23 [turnserver] 41: IPv4. Local relay addr: 185.244.193.180:58759_
2020-05-07 15:50:23 [turnserver] 41: session 002000000000000001: new, realm=, username=<1588945817>, lifetime=600_
2020-05-07 15:50:23 [turnserver] 41: session 002000000000000001: realm user <1588945817>: incoming packet ALLOCATE processed, success_
2020-05-07 15:50:23 [turnserver] 42: IPv4. Local relay addr: 185.244.193.180:55141_
2020-05-07 15:50:23 [turnserver] 42: session 000000000000000001: new, realm=, username=<1588945817>, lifetime=600_
2020-05-07 15:50:23 [turnserver] 42: session 000000000000000001: realm user <1588945817>: incoming packet ALLOCATE processed, success_
2020-05-07 15:50:23 [turnserver] 42: session 002000000000000001: peer 192. lifetime updated: 300_
2020-05-07 15:50:23 [turnserver] 42: session 002000000000000001: realm user <1588945817>: incoming packet CREATE_PERMISSION processed, success_
2020-05-07 15:50:23 [turnserver] 42: session 000000000000000001: peer 192. lifetime updated: 300_
2020-05-07 15:50:23 [turnserver] 42: session 000000000000000001: realm user <1588945817>: incoming packet CREATE_PERMISSION processed, success_
2020-05-07 15:50:33 [turnserver] 51: session 002000000000000001: realm user <1588945817>: incoming packet BINDING processed, success_
2020-05-07 15:50:38 [turnserver] 57: session 002000000000000001: refreshed, realm=, username=<1588945817>, lifetime=0_
2020-05-07 15:50:38 [turnserver] 57: session 002000000000000001: realm user <1588945817>: incoming packet REFRESH processed, success_
2020-05-07 15:50:38 [turnserver] 57: session 000000000000000001: refreshed, realm=, username=<1588945817>, lifetime=0_
2020-05-07 15:50:38 [turnserver] 57: session 000000000000000001: realm user <1588945817>: incoming packet REFRESH processed, success_
2020-05-07 15:50:38 [turnserver] 57: session 000000000000000001: TCP socket closed remotely 31.:51732_
2020-05-07 15:50:38 [turnserver] 57: session 000000000000000001: usage: realm=, username=<1588945817>, rp=105, rb=13664, sp=4, sb=380_
2020-05-07 15:50:38 [turnserver] 57: session 000000000000000001: closed (2nd stage), user <1588945817> realm origin <>, local 185.244.193.180:3478, remote 31.:51732, reason: TCP connection closed by client (callback)_
2020-05-07 15:50:38 [turnserver] 57: session 000000000000000001: delete: realm=, username=<1588945817>_
2020-05-07 15:50:38 [turnserver] 57: session 000000000000000001: peer 192. deleted_
2020-05-07 15:50:39 [turnserver] 58: session 002000000000000001: usage: realm=, username=<1588945817>, rp=107, rb=13704, sp=6, sb=580_
2020-05-07 15:50:39 [turnserver] 58: session 002000000000000001: closed (2nd stage), user <1588945817> realm origin <>, local 185.244.193.180:3478, remote 31.:56285, reason: allocation timeout_
2020-05-07 15:50:39 [turnserver] 58: session 002000000000000001: delete: realm=, username=<1588945817>_
2020-05-07 15:50:39 [turnserver] 58: session 002000000000000001: peer 192. deleted_
```",
1120,https://api.github.com/repos/iNPUTmice/Conversations/issues/3701,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3701/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3701/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3701/events,https://github.com/iNPUTmice/Conversations/issues/3701,613570768,MDU6SXNzdWU2MTM1NzA3Njg=,3701,Dismiss 'Incoming (video) call' notification on crash,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028640246, 'node_id': 'MDU6TGFiZWwyMDI4NjQwMjQ2', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/bug', 'name': 'bug', 'color': 'c95100', 'default': True, 'description': 'Accepted, reproducible bug'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/2', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/2', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/2/labels', 'id': 5384887, 'node_id': 'MDk6TWlsZXN0b25lNTM4NDg4Nw==', 'number': 2, 'title': '2.8.3', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 6, 'state': 'closed', 'created_at': '2020-05-05T08:02:14Z', 'updated_at': '2020-07-08T06:33:55Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:55Z'}",0,2020-05-06T19:50:50Z,2020-05-08T17:34:29Z,2020-05-08T17:34:29Z,OWNER,,,"If the application crashes the 'Incoming call' notification will continue to ring and annoy the user. Our exception handler should attempt to dismiss the notification.
(Also verify that this is actually happening)",
1121,https://api.github.com/repos/iNPUTmice/Conversations/issues/3700,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3700/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3700/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3700/events,https://github.com/iNPUTmice/Conversations/issues/3700,613565372,MDU6SXNzdWU2MTM1NjUzNzI=,3700,Hide Microphone button in video-only session,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028640246, 'node_id': 'MDU6TGFiZWwyMDI4NjQwMjQ2', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/bug', 'name': 'bug', 'color': 'c95100', 'default': True, 'description': 'Accepted, reproducible bug'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/2', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/2', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/2/labels', 'id': 5384887, 'node_id': 'MDk6TWlsZXN0b25lNTM4NDg4Nw==', 'number': 2, 'title': '2.8.3', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 6, 'state': 'closed', 'created_at': '2020-05-05T08:02:14Z', 'updated_at': '2020-07-08T06:33:55Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:55Z'}",2,2020-05-06T19:41:49Z,2020-05-11T12:39:08Z,2020-05-08T19:16:03Z,OWNER,,,"Another client could potentially offer us a video-only session (which we would accept);
The UI would still try to display a MIC enable/disable button and try to discover the current microphone state which will fail with an IllegalStateException because no Audio Track has been set up.
```
java.lang.IllegalStateException: Local audio track does not exist (yet)
at eu.siacs.conversations.xmpp.jingle.WebRTCWrapper.isMicrophoneEnabled(WebRTCWrapper.java:309)
at eu.siacs.conversations.xmpp.jingle.JingleRtpConnection.isMicrophoneEnabled(JingleRtpConnection.java:1033)
at eu.siacs.conversations.ui.RtpSessionActivity.updateInCallButtonConfiguration(RtpSessionActivity.java:583)
at eu.siacs.conversations.ui.RtpSessionActivity.updateButtonConfiguration(RtpSessionActivity.java:553)
at eu.siacs.conversations.ui.RtpSessionActivity.lambda$onJingleRtpConnectionUpdate$4$RtpSessionActivity(RtpSessionActivity.java:849)
at eu.siacs.conversations.ui.-$$Lambda$RtpSessionActivity$zwP4CbuJkR2JW_EyCmT42WhqMYw.run(Unknown Source:8)
at android.os.Handler.handleCallback(Handler.java:873)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:214)
at android.app.ActivityThread.main(ActivityThread.java:7073)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:494)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:965
```",
1122,https://api.github.com/repos/iNPUTmice/Conversations/issues/3699,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3699/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3699/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3699/events,https://github.com/iNPUTmice/Conversations/pull/3699,612718830,MDExOlB1bGxSZXF1ZXN0NDEzNjEwMzE5,3699,Locate sounds too privacy invading,"{'login': 'licaon-kter', 'id': 2282799, 'node_id': 'MDQ6VXNlcjIyODI3OTk=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2282799?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/licaon-kter', 'html_url': 'https://github.com/licaon-kter', 'followers_url': 'https://api.github.com/users/licaon-kter/followers', 'following_url': 'https://api.github.com/users/licaon-kter/following{/other_user}', 'gists_url': 'https://api.github.com/users/licaon-kter/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/licaon-kter/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/licaon-kter/subscriptions', 'organizations_url': 'https://api.github.com/users/licaon-kter/orgs', 'repos_url': 'https://api.github.com/users/licaon-kter/repos', 'events_url': 'https://api.github.com/users/licaon-kter/events{/privacy}', 'received_events_url': 'https://api.github.com/users/licaon-kter/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-05-05T16:06:37Z,2020-05-09T19:43:06Z,2020-05-09T19:43:06Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/pulls/3699', 'html_url': 'https://github.com/iNPUTmice/Conversations/pull/3699', 'diff_url': 'https://github.com/iNPUTmice/Conversations/pull/3699.diff', 'patch_url': 'https://github.com/iNPUTmice/Conversations/pull/3699.patch'}",...while you actually want to find an IP candidate and not GPS coords,
1123,https://api.github.com/repos/iNPUTmice/Conversations/issues/3698,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3698/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3698/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3698/events,https://github.com/iNPUTmice/Conversations/issues/3698,612415983,MDU6SXNzdWU2MTI0MTU5ODM=,3698,Resolve 'Busy' when two people are calling each other,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'id': 76683388, 'node_id': 'MDU6TGFiZWw3NjY4MzM4OA==', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/feature', 'name': 'feature', 'color': '128a00', 'default': False, 'description': 'Accepted feature request'}]",closed,False,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}]","{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/2', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/2', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/2/labels', 'id': 5384887, 'node_id': 'MDk6TWlsZXN0b25lNTM4NDg4Nw==', 'number': 2, 'title': '2.8.3', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 6, 'state': 'closed', 'created_at': '2020-05-05T08:02:14Z', 'updated_at': '2020-07-08T06:33:55Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:55Z'}",1,2020-05-05T08:04:12Z,2020-05-10T12:09:27Z,2020-05-10T12:09:27Z,OWNER,,,"When two people are trying to call each other at the same time pick up call instead of showing busy.
* Only if media is the same
* Regarding tie breaking: https://xmpp.org/extensions/xep-0166.html#def-action-ties",
1124,https://api.github.com/repos/iNPUTmice/Conversations/issues/3697,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3697/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3697/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3697/events,https://github.com/iNPUTmice/Conversations/issues/3697,611497203,MDU6SXNzdWU2MTE0OTcyMDM=,3697,Tones are silent when calling with vibrate & silent,"{'login': 'tyler71', 'id': 4926565, 'node_id': 'MDQ6VXNlcjQ5MjY1NjU=', 'avatar_url': 'https://avatars0.githubusercontent.com/u/4926565?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/tyler71', 'html_url': 'https://github.com/tyler71', 'followers_url': 'https://api.github.com/users/tyler71/followers', 'following_url': 'https://api.github.com/users/tyler71/following{/other_user}', 'gists_url': 'https://api.github.com/users/tyler71/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/tyler71/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/tyler71/subscriptions', 'organizations_url': 'https://api.github.com/users/tyler71/orgs', 'repos_url': 'https://api.github.com/users/tyler71/repos', 'events_url': 'https://api.github.com/users/tyler71/events{/privacy}', 'received_events_url': 'https://api.github.com/users/tyler71/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-05-03T20:14:22Z,2020-05-03T21:15:30Z,2020-05-03T21:15:30Z,NONE,,,"#### General information
* **Version:** HEAD (b6d38f8e8)+fsd
* **Device:** Nokia 7.1
* **Android Version:** 10
* **Server name:** self hosted
* **Server software:** ejabberd 20.04
* **Conversations source:** self build (latest HEAD)
#### Steps to reproduce
1. Set phone to vibrate / silent
2. Call another user
#### Expected result
Ringing (dialing), connected / busy and disconnect tone
#### Actual result
No sound. However, you can switch between sound and vibrate / silent during the call and the tones will resume.
#### Debug output
[No Sound](http://dpaste.com/2VGE4M4)
[Sound](http://dpaste.com/16DFDCW)
___
I am able to hear the tones on a Samsung J3 Android 8.1 device in sound / vibrate / silent mode.",
1125,https://api.github.com/repos/iNPUTmice/Conversations/issues/3696,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3696/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3696/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3696/events,https://github.com/iNPUTmice/Conversations/pull/3696,611496667,MDExOlB1bGxSZXF1ZXN0NDEyNjU5Mzkx,3696,This assert will always fail on tablets that dont have an earpiece.,"{'login': 'ashjas', 'id': 788766, 'node_id': 'MDQ6VXNlcjc4ODc2Ng==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/788766?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ashjas', 'html_url': 'https://github.com/ashjas', 'followers_url': 'https://api.github.com/users/ashjas/followers', 'following_url': 'https://api.github.com/users/ashjas/following{/other_user}', 'gists_url': 'https://api.github.com/users/ashjas/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ashjas/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ashjas/subscriptions', 'organizations_url': 'https://api.github.com/users/ashjas/orgs', 'repos_url': 'https://api.github.com/users/ashjas/repos', 'events_url': 'https://api.github.com/users/ashjas/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ashjas/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-05-03T20:11:51Z,2020-05-04T01:52:23Z,2020-05-03T20:49:44Z,NONE,,"{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/pulls/3696', 'html_url': 'https://github.com/iNPUTmice/Conversations/pull/3696', 'diff_url': 'https://github.com/iNPUTmice/Conversations/pull/3696.diff', 'patch_url': 'https://github.com/iNPUTmice/Conversations/pull/3696.patch'}",,
1126,https://api.github.com/repos/iNPUTmice/Conversations/issues/3695,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3695/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3695/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3695/events,https://github.com/iNPUTmice/Conversations/pull/3695,611485718,MDExOlB1bGxSZXF1ZXN0NDEyNjUxNjQw,3695,Revert magic text,"{'login': 'licaon-kter', 'id': 2282799, 'node_id': 'MDQ6VXNlcjIyODI3OTk=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2282799?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/licaon-kter', 'html_url': 'https://github.com/licaon-kter', 'followers_url': 'https://api.github.com/users/licaon-kter/followers', 'following_url': 'https://api.github.com/users/licaon-kter/following{/other_user}', 'gists_url': 'https://api.github.com/users/licaon-kter/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/licaon-kter/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/licaon-kter/subscriptions', 'organizations_url': 'https://api.github.com/users/licaon-kter/orgs', 'repos_url': 'https://api.github.com/users/licaon-kter/repos', 'events_url': 'https://api.github.com/users/licaon-kter/events{/privacy}', 'received_events_url': 'https://api.github.com/users/licaon-kter/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-05-03T19:17:27Z,2020-05-03T19:58:09Z,2020-05-03T19:58:09Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/pulls/3695', 'html_url': 'https://github.com/iNPUTmice/Conversations/pull/3695', 'diff_url': 'https://github.com/iNPUTmice/Conversations/pull/3695.diff', 'patch_url': 'https://github.com/iNPUTmice/Conversations/pull/3695.patch'}","@comradekingu Why this change?
I'm not a native speaker, and ""A guide is setup"" sounds rather odd.",
1127,https://api.github.com/repos/iNPUTmice/Conversations/issues/3694,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3694/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3694/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3694/events,https://github.com/iNPUTmice/Conversations/pull/3694,611478865,MDExOlB1bGxSZXF1ZXN0NDEyNjQ2OTYw,3694,Typo you you,"{'login': 'licaon-kter', 'id': 2282799, 'node_id': 'MDQ6VXNlcjIyODI3OTk=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2282799?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/licaon-kter', 'html_url': 'https://github.com/licaon-kter', 'followers_url': 'https://api.github.com/users/licaon-kter/followers', 'following_url': 'https://api.github.com/users/licaon-kter/following{/other_user}', 'gists_url': 'https://api.github.com/users/licaon-kter/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/licaon-kter/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/licaon-kter/subscriptions', 'organizations_url': 'https://api.github.com/users/licaon-kter/orgs', 'repos_url': 'https://api.github.com/users/licaon-kter/repos', 'events_url': 'https://api.github.com/users/licaon-kter/events{/privacy}', 'received_events_url': 'https://api.github.com/users/licaon-kter/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-05-03T18:41:57Z,2020-05-03T19:49:01Z,2020-05-03T19:49:01Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/pulls/3694', 'html_url': 'https://github.com/iNPUTmice/Conversations/pull/3694', 'diff_url': 'https://github.com/iNPUTmice/Conversations/pull/3694.diff', 'patch_url': 'https://github.com/iNPUTmice/Conversations/pull/3694.patch'}",,
1128,https://api.github.com/repos/iNPUTmice/Conversations/issues/3693,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3693/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3693/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3693/events,https://github.com/iNPUTmice/Conversations/issues/3693,611347514,MDU6SXNzdWU2MTEzNDc1MTQ=,3693,Back camera should not mirror,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028640246, 'node_id': 'MDU6TGFiZWwyMDI4NjQwMjQ2', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/bug', 'name': 'bug', 'color': 'c95100', 'default': True, 'description': 'Accepted, reproducible bug'}]",closed,False,,[],"{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/1', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/1', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/1/labels', 'id': 5370295, 'node_id': 'MDk6TWlsZXN0b25lNTM3MDI5NQ==', 'number': 1, 'title': '2.8.2', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 5, 'state': 'closed', 'created_at': '2020-05-01T07:49:45Z', 'updated_at': '2020-07-08T06:33:57Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:57Z'}",0,2020-05-03T06:52:01Z,2020-05-03T09:55:09Z,2020-05-03T09:55:09Z,OWNER,,,The preview of the back camera should not be mirrored.,
1129,https://api.github.com/repos/iNPUTmice/Conversations/issues/3692,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3692/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3692/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3692/events,https://github.com/iNPUTmice/Conversations/issues/3692,611347251,MDU6SXNzdWU2MTEzNDcyNTE=,3692,Show date and time for missed calls,"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'id': 76683388, 'node_id': 'MDU6TGFiZWw3NjY4MzM4OA==', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/feature', 'name': 'feature', 'color': '128a00', 'default': False, 'description': 'Accepted feature request'}]",closed,False,,[],"{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/1', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/1', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/1/labels', 'id': 5370295, 'node_id': 'MDk6TWlsZXN0b25lNTM3MDI5NQ==', 'number': 1, 'title': '2.8.2', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 5, 'state': 'closed', 'created_at': '2020-05-01T07:49:45Z', 'updated_at': '2020-07-08T06:33:57Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:57Z'}",0,2020-05-03T06:49:53Z,2020-05-03T16:36:24Z,2020-05-03T16:36:24Z,OWNER,,,Missed calls should show a date and a time.,
1130,https://api.github.com/repos/iNPUTmice/Conversations/issues/3691,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3691/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3691/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3691/events,https://github.com/iNPUTmice/Conversations/issues/3691,611291303,MDU6SXNzdWU2MTEyOTEzMDM=,3691,Continious crash: java.lang.NoClassDefFoundError: Not a primitive type: '\u0000',"{'login': 'dadosch', 'id': 12801390, 'node_id': 'MDQ6VXNlcjEyODAxMzkw', 'avatar_url': 'https://avatars1.githubusercontent.com/u/12801390?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dadosch', 'html_url': 'https://github.com/dadosch', 'followers_url': 'https://api.github.com/users/dadosch/followers', 'following_url': 'https://api.github.com/users/dadosch/following{/other_user}', 'gists_url': 'https://api.github.com/users/dadosch/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dadosch/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dadosch/subscriptions', 'organizations_url': 'https://api.github.com/users/dadosch/orgs', 'repos_url': 'https://api.github.com/users/dadosch/repos', 'events_url': 'https://api.github.com/users/dadosch/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dadosch/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-05-02T22:58:32Z,2020-05-03T08:52:02Z,2020-05-03T08:47:16Z,NONE,,,"#### General information
* **Version:** 2.7.1+fcr
* **Device:** Samsung Galaxy A3 2016
* **Android Version:** Android 7.0 (stock)
* **Server name:** self hosted
* **Server software:** prosody
* **Installed server modules:** Stream Managment, CSI, MAM
* **Conversations source:** F-Droid
#### Steps to reproduce
1. open conversations
#### Expected result
Conversations should open regularly
#### Actual result
Conversations crashes at start, even cleaning cache doesn't solve it.
#### Debug output
````
05-03 00:28:43.008 15365 15365 D conversations: ForegroundService: on
05-03 00:28:43.009 15365 15365 D conversations: update unread count to 0
05-03 00:28:43.060 15365 15388 D conversations: restoring messages...
05-03 00:28:43.073 15365 15365 D conversations: ForegroundService: on
05-03 00:28:43.097 15365 15394 D conversations: account@domain.tld: connecting
05-03 00:28:43.113 15365 15391 D conversations: start merging phone contacts with roster
05-03 00:28:43.113 15365 15391 D conversations: finished merging phone contacts
05-03 00:28:43.131 15365 15365 D conversations: resetting all attempt counts
05-03 00:28:47.541 15365 15394 D conversations: Resolver: [Result{ip='8.8.8.8', hostame='domain.tld', port=5222, directTls=false, authenticated=false, priority=5}, Result{ip='ipv6ip', hostame='domain.tld', port=5222, directTls=false, authenticated=false, priority=5}]
05-03 00:28:47.543 15365 15394 D conversations: verified hostname null
05-03 00:28:47.544 15365 15394 D conversations: account@domain.tld: using values from resolver domain.tld/8.8.8.8:5222 tls: false
05-03 00:28:47.931 15365 15394 D XmppDomainVerifier: searching for domain.tld in srvNames: [] xmppAddrs: [] domains:[*.domain.tld, domain.tld]
05-03 00:28:47.931 15365 15394 D XmppDomainVerifier: comparing .de and .domain.tld
05-03 00:28:47.931 15365 15394 D XmppDomainVerifier: domain domain.tld matched domain.tld
05-03 00:28:47.934 15365 15394 D conversations: account@domain.tld: TLS connection established
05-03 00:28:48.073 15365 15394 D conversations: account@domain.tld: protocol=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384
05-03 00:28:48.075 15365 15394 D conversations: account@domain.tld/Conversations.2zwI: Authenticating with PLAIN
05-03 00:28:48.132 15365 15394 D conversations: account@domain.tld: logged in
05-03 00:28:48.246 15365 15394 D conversations: account@domain.tld: not counting stanza(IqPacket). Not in smacks session.
05-03 00:28:48.249 15365 15394 D conversations: account@domain.tld: starting service discovery
05-03 00:28:48.271 15365 15394 D conversations: account@domain.tld: server caps came from cache
05-03 00:28:48.288 15365 15394 D conversations: account@domain.tld: stream management(3) enabled (resumable)
05-03 00:28:48.331 15365 15394 D conversations: account@domain.tld: Requesting block list
05-03 00:28:48.405 15365 15394 D conversations: Received blocklist update from server
05-03 00:28:48.495 15365 15394 E AndroidRuntime: FATAL EXCEPTION: Thread-6
05-03 00:28:48.495 15365 15394 E AndroidRuntime: Process: eu.siacs.conversations, PID: 15365
05-03 00:28:48.495 15365 15394 E AndroidRuntime: java.lang.NoClassDefFoundError: Not a primitive type: '\u0000'
05-03 00:28:48.495 15365 15394 E AndroidRuntime: at eu.siacs.conversations.parser.IqParser.bundle(IqParser.java:270)
05-03 00:28:48.495 15365 15394 E AndroidRuntime: at eu.siacs.conversations.crypto.axolotl.AxolotlService$4.onIqPacketReceived(AxolotlService.java:552)
05-03 00:28:48.495 15365 15394 E AndroidRuntime: at eu.siacs.conversations.xmpp.XmppConnection.processIq(XmppConnection.java:763)
05-03 00:28:48.495 15365 15394 E AndroidRuntime: at eu.siacs.conversations.xmpp.XmppConnection.processStream(XmppConnection.java:636)
05-03 00:28:48.495 15365 15394 E AndroidRuntime: at eu.siacs.conversations.xmpp.XmppConnection.processStream(XmppConnection.java:484)
05-03 00:28:48.495 15365 15394 E AndroidRuntime: at eu.siacs.conversations.xmpp.XmppConnection.switchOverToTls(XmppConnection.java:807)
05-03 00:28:48.495 15365 15394 E AndroidRuntime: at eu.siacs.conversations.xmpp.XmppConnection.processStream(XmppConnection.java:468)
05-03 00:28:48.495 15365 15394 E AndroidRuntime: at eu.siacs.conversations.xmpp.XmppConnection.connect(XmppConnection.java:376)
05-03 00:28:48.495 15365 15394 E AndroidRuntime: at eu.siacs.conversations.xmpp.XmppConnection.run(XmppConnection.java:455)
05-03 00:28:48.495 15365 15394 E AndroidRuntime: at java.lang.Thread.run(Thread.java:762)
````
",
1131,https://api.github.com/repos/iNPUTmice/Conversations/issues/3690,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3690/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3690/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3690/events,https://github.com/iNPUTmice/Conversations/issues/3690,611243706,MDU6SXNzdWU2MTEyNDM3MDY=,3690,Right way switching a phone with Quicksy,"{'login': 'Schlumpf', 'id': 329423, 'node_id': 'MDQ6VXNlcjMyOTQyMw==', 'avatar_url': 'https://avatars1.githubusercontent.com/u/329423?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Schlumpf', 'html_url': 'https://github.com/Schlumpf', 'followers_url': 'https://api.github.com/users/Schlumpf/followers', 'following_url': 'https://api.github.com/users/Schlumpf/following{/other_user}', 'gists_url': 'https://api.github.com/users/Schlumpf/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Schlumpf/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Schlumpf/subscriptions', 'organizations_url': 'https://api.github.com/users/Schlumpf/orgs', 'repos_url': 'https://api.github.com/users/Schlumpf/repos', 'events_url': 'https://api.github.com/users/Schlumpf/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Schlumpf/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-05-02T18:07:10Z,2020-05-02T18:23:08Z,2020-05-02T18:13:00Z,NONE,,,"#### General information
* **Version:** 2.8.0
* **Server name:** quicksy.im
* **Quicksy source:** PlayStore
#### Question
What is the right way to switch a phone as a Quicksy user?
My friend has a new phone and moved his apps with a backup tool. But on the new phone, Quicksy asks him for a password. If he tries, to use Conversations on the new phone with the extracted password from the old Quicksy phone, he gets an error, telling something about ""Verletzung der Richtlinien"".
What should he do?",
1132,https://api.github.com/repos/iNPUTmice/Conversations/issues/3689,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3689/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3689/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3689/events,https://github.com/iNPUTmice/Conversations/pull/3689,611181534,MDExOlB1bGxSZXF1ZXN0NDEyNDQ3MTUx,3689,show date/time for calls in conversation,"{'login': 'kriztan', 'id': 3350754, 'node_id': 'MDQ6VXNlcjMzNTA3NTQ=', 'avatar_url': 'https://avatars3.githubusercontent.com/u/3350754?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/kriztan', 'html_url': 'https://github.com/kriztan', 'followers_url': 'https://api.github.com/users/kriztan/followers', 'following_url': 'https://api.github.com/users/kriztan/following{/other_user}', 'gists_url': 'https://api.github.com/users/kriztan/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/kriztan/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/kriztan/subscriptions', 'organizations_url': 'https://api.github.com/users/kriztan/orgs', 'repos_url': 'https://api.github.com/users/kriztan/repos', 'events_url': 'https://api.github.com/users/kriztan/events{/privacy}', 'received_events_url': 'https://api.github.com/users/kriztan/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,4,2020-05-02T12:49:45Z,2020-05-03T06:50:48Z,2020-05-03T06:50:48Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/pulls/3689', 'html_url': 'https://github.com/iNPUTmice/Conversations/pull/3689', 'diff_url': 'https://github.com/iNPUTmice/Conversations/pull/3689.diff', 'patch_url': 'https://github.com/iNPUTmice/Conversations/pull/3689.patch'}",(cherry picked from commit f85fb363c133827fd4890b65fcf2baee8ec8fd7c),
1133,https://api.github.com/repos/iNPUTmice/Conversations/issues/3688,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3688/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3688/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3688/events,https://github.com/iNPUTmice/Conversations/pull/3688,611169922,MDExOlB1bGxSZXF1ZXN0NDEyNDQxMDE3,3688,Spelling: Language reworked,"{'login': 'comradekingu', 'id': 13802408, 'node_id': 'MDQ6VXNlcjEzODAyNDA4', 'avatar_url': 'https://avatars1.githubusercontent.com/u/13802408?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/comradekingu', 'html_url': 'https://github.com/comradekingu', 'followers_url': 'https://api.github.com/users/comradekingu/followers', 'following_url': 'https://api.github.com/users/comradekingu/following{/other_user}', 'gists_url': 'https://api.github.com/users/comradekingu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/comradekingu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/comradekingu/subscriptions', 'organizations_url': 'https://api.github.com/users/comradekingu/orgs', 'repos_url': 'https://api.github.com/users/comradekingu/repos', 'events_url': 'https://api.github.com/users/comradekingu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/comradekingu/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-05-02T11:57:03Z,2020-05-02T14:51:25Z,2020-05-02T14:51:25Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/pulls/3688', 'html_url': 'https://github.com/iNPUTmice/Conversations/pull/3688', 'diff_url': 'https://github.com/iNPUTmice/Conversations/pull/3688.diff', 'patch_url': 'https://github.com/iNPUTmice/Conversations/pull/3688.patch'}","Happy to join to rework the language across the board.
Hopefully #1278 can be revisited, as I log onto Transifex without accepting their new terms and conditions.",
1134,https://api.github.com/repos/iNPUTmice/Conversations/issues/3687,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3687/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3687/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3687/events,https://github.com/iNPUTmice/Conversations/issues/3687,610687719,MDU6SXNzdWU2MTA2ODc3MTk=,3687,Mark 'Missed call' log entries as 'unread' (bold in overview),"{'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}","[{'id': 76683388, 'node_id': 'MDU6TGFiZWw3NjY4MzM4OA==', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/feature', 'name': 'feature', 'color': '128a00', 'default': False, 'description': 'Accepted feature request'}]",closed,False,,[],"{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/1', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/1', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/1/labels', 'id': 5370295, 'node_id': 'MDk6TWlsZXN0b25lNTM3MDI5NQ==', 'number': 1, 'title': '2.8.2', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 5, 'state': 'closed', 'created_at': '2020-05-01T07:49:45Z', 'updated_at': '2020-07-08T06:33:57Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:57Z'}",0,2020-05-01T10:39:26Z,2020-05-03T16:07:12Z,2020-05-03T16:07:12Z,OWNER,,,"Missed calls that either got rejected automatically after a timeout or were retracted by the initiator should count as 'unread' messages.
Note to self: After restore from db those should not be pushed to the notification blacklog.
",
1135,https://api.github.com/repos/iNPUTmice/Conversations/issues/3686,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3686/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3686/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3686/events,https://github.com/iNPUTmice/Conversations/issues/3686,610678345,MDU6SXNzdWU2MTA2NzgzNDU=,3686,Option to mute/unmute the loudspeaker while the call is ringing,"{'login': 'Perflyst', 'id': 26308977, 'node_id': 'MDQ6VXNlcjI2MzA4OTc3', 'avatar_url': 'https://avatars1.githubusercontent.com/u/26308977?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Perflyst', 'html_url': 'https://github.com/Perflyst', 'followers_url': 'https://api.github.com/users/Perflyst/followers', 'following_url': 'https://api.github.com/users/Perflyst/following{/other_user}', 'gists_url': 'https://api.github.com/users/Perflyst/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Perflyst/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Perflyst/subscriptions', 'organizations_url': 'https://api.github.com/users/Perflyst/orgs', 'repos_url': 'https://api.github.com/users/Perflyst/repos', 'events_url': 'https://api.github.com/users/Perflyst/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Perflyst/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028699543, 'node_id': 'MDU6TGFiZWwyMDI4Njk5NTQz', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/wontfix', 'name': 'wontfix', 'color': '007ebc', 'default': True, 'description': 'Manually closed'}]",closed,False,,[],,3,2020-05-01T10:13:17Z,2020-05-02T19:24:10Z,2020-05-01T10:33:10Z,NONE,,,I would like to mute myself or enable the loudspeaker while the call is not connected yet,
1136,https://api.github.com/repos/iNPUTmice/Conversations/issues/3685,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3685/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3685/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3685/events,https://github.com/iNPUTmice/Conversations/issues/3685,610347047,MDU6SXNzdWU2MTAzNDcwNDc=,3685,[FR] Display time of incoming/outgoing/missed call,"{'login': 'ericschdt', 'id': 43318127, 'node_id': 'MDQ6VXNlcjQzMzE4MTI3', 'avatar_url': 'https://avatars0.githubusercontent.com/u/43318127?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ericschdt', 'html_url': 'https://github.com/ericschdt', 'followers_url': 'https://api.github.com/users/ericschdt/followers', 'following_url': 'https://api.github.com/users/ericschdt/following{/other_user}', 'gists_url': 'https://api.github.com/users/ericschdt/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ericschdt/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ericschdt/subscriptions', 'organizations_url': 'https://api.github.com/users/ericschdt/orgs', 'repos_url': 'https://api.github.com/users/ericschdt/repos', 'events_url': 'https://api.github.com/users/ericschdt/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ericschdt/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,3,2020-04-30T19:56:55Z,2020-05-03T06:50:19Z,2020-05-03T06:50:18Z,NONE,,,Just like it's done for chat messages already. This would definitely improve the UX further more. :) ,
1137,https://api.github.com/repos/iNPUTmice/Conversations/issues/3684,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3684/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3684/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3684/events,https://github.com/iNPUTmice/Conversations/pull/3684,609816387,MDExOlB1bGxSZXF1ZXN0NDExMzQwNDI1,3684,Update repo links,"{'login': 'licaon-kter', 'id': 2282799, 'node_id': 'MDQ6VXNlcjIyODI3OTk=', 'avatar_url': 'https://avatars1.githubusercontent.com/u/2282799?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/licaon-kter', 'html_url': 'https://github.com/licaon-kter', 'followers_url': 'https://api.github.com/users/licaon-kter/followers', 'following_url': 'https://api.github.com/users/licaon-kter/following{/other_user}', 'gists_url': 'https://api.github.com/users/licaon-kter/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/licaon-kter/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/licaon-kter/subscriptions', 'organizations_url': 'https://api.github.com/users/licaon-kter/orgs', 'repos_url': 'https://api.github.com/users/licaon-kter/repos', 'events_url': 'https://api.github.com/users/licaon-kter/events{/privacy}', 'received_events_url': 'https://api.github.com/users/licaon-kter/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-04-30T10:49:51Z,2020-04-30T10:51:27Z,2020-04-30T10:51:27Z,CONTRIBUTOR,,"{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/pulls/3684', 'html_url': 'https://github.com/iNPUTmice/Conversations/pull/3684', 'diff_url': 'https://github.com/iNPUTmice/Conversations/pull/3684.diff', 'patch_url': 'https://github.com/iNPUTmice/Conversations/pull/3684.patch'}",,
1138,https://api.github.com/repos/iNPUTmice/Conversations/issues/3683,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3683/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3683/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3683/events,https://github.com/iNPUTmice/Conversations/issues/3683,609742048,MDU6SXNzdWU2MDk3NDIwNDg=,3683,[FR] Video Call: Option to switch between front- and rear camera,"{'login': 'ericschdt', 'id': 43318127, 'node_id': 'MDQ6VXNlcjQzMzE4MTI3', 'avatar_url': 'https://avatars0.githubusercontent.com/u/43318127?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/ericschdt', 'html_url': 'https://github.com/ericschdt', 'followers_url': 'https://api.github.com/users/ericschdt/followers', 'following_url': 'https://api.github.com/users/ericschdt/following{/other_user}', 'gists_url': 'https://api.github.com/users/ericschdt/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/ericschdt/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/ericschdt/subscriptions', 'organizations_url': 'https://api.github.com/users/ericschdt/orgs', 'repos_url': 'https://api.github.com/users/ericschdt/repos', 'events_url': 'https://api.github.com/users/ericschdt/events{/privacy}', 'received_events_url': 'https://api.github.com/users/ericschdt/received_events', 'type': 'User', 'site_admin': False}","[{'id': 76683388, 'node_id': 'MDU6TGFiZWw3NjY4MzM4OA==', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/feature', 'name': 'feature', 'color': '128a00', 'default': False, 'description': 'Accepted feature request'}]",closed,False,,[],"{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/1', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/1', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/1/labels', 'id': 5370295, 'node_id': 'MDk6TWlsZXN0b25lNTM3MDI5NQ==', 'number': 1, 'title': '2.8.2', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 5, 'state': 'closed', 'created_at': '2020-05-01T07:49:45Z', 'updated_at': '2020-07-08T06:33:57Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:57Z'}",0,2020-04-30T09:11:10Z,2020-05-02T15:17:00Z,2020-05-02T15:17:00Z,NONE,,,That would be great! :-),
1139,https://api.github.com/repos/iNPUTmice/Conversations/issues/3682,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3682/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3682/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3682/events,https://github.com/iNPUTmice/Conversations/issues/3682,608933053,MDU6SXNzdWU2MDg5MzMwNTM=,3682,App crashes on tablet when audio calling,"{'login': 'nillebor', 'id': 59985723, 'node_id': 'MDQ6VXNlcjU5OTg1NzIz', 'avatar_url': 'https://avatars2.githubusercontent.com/u/59985723?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/nillebor', 'html_url': 'https://github.com/nillebor', 'followers_url': 'https://api.github.com/users/nillebor/followers', 'following_url': 'https://api.github.com/users/nillebor/following{/other_user}', 'gists_url': 'https://api.github.com/users/nillebor/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/nillebor/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/nillebor/subscriptions', 'organizations_url': 'https://api.github.com/users/nillebor/orgs', 'repos_url': 'https://api.github.com/users/nillebor/repos', 'events_url': 'https://api.github.com/users/nillebor/events{/privacy}', 'received_events_url': 'https://api.github.com/users/nillebor/received_events', 'type': 'User', 'site_admin': False}","[{'id': 2028640246, 'node_id': 'MDU6TGFiZWwyMDI4NjQwMjQ2', 'url': 'https://api.github.com/repos/iNPUTmice/Conversations/labels/bug', 'name': 'bug', 'color': 'c95100', 'default': True, 'description': 'Accepted, reproducible bug'}]",closed,False,,[],"{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/1', 'html_url': 'https://github.com/iNPUTmice/Conversations/milestone/1', 'labels_url': 'https://api.github.com/repos/iNPUTmice/Conversations/milestones/1/labels', 'id': 5370295, 'node_id': 'MDk6TWlsZXN0b25lNTM3MDI5NQ==', 'number': 1, 'title': '2.8.2', 'description': None, 'creator': {'login': 'iNPUTmice', 'id': 192229, 'node_id': 'MDQ6VXNlcjE5MjIyOQ==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/192229?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iNPUTmice', 'html_url': 'https://github.com/iNPUTmice', 'followers_url': 'https://api.github.com/users/iNPUTmice/followers', 'following_url': 'https://api.github.com/users/iNPUTmice/following{/other_user}', 'gists_url': 'https://api.github.com/users/iNPUTmice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iNPUTmice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iNPUTmice/subscriptions', 'organizations_url': 'https://api.github.com/users/iNPUTmice/orgs', 'repos_url': 'https://api.github.com/users/iNPUTmice/repos', 'events_url': 'https://api.github.com/users/iNPUTmice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iNPUTmice/received_events', 'type': 'User', 'site_admin': False}, 'open_issues': 0, 'closed_issues': 5, 'state': 'closed', 'created_at': '2020-05-01T07:49:45Z', 'updated_at': '2020-07-08T06:33:57Z', 'due_on': None, 'closed_at': '2020-07-08T06:33:57Z'}",5,2020-04-29T10:08:03Z,2020-05-02T16:07:25Z,2020-05-02T16:07:25Z,NONE,,,"#### General information
* **Version:** 2.8.0
* **Device:** Samsung Tab A 2016 SM T580
* **Android Version:** Android 9 (LineageOS)
* **Server name:** jabber.de
* **Conversations source:** PlayStore
#### Steps to reproduce
when calling via the app on 2 tablets, the completely crashes and closes. the app crashes when the called party accepts the call. Video calls work without problems. Calling also works on mobile phones (with LineageOS). has any other similar problems?
i would also like to be able to switch the calls to speakers. an associated button is of course also missing. I would also find it good if a call sign could be heard for the caller, now all you have to do is look at the display to see if the call has already been answered.
I know that the function is only new, there may be a bug or two",
1140,https://api.github.com/repos/iNPUTmice/Conversations/issues/3681,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3681/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3681/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3681/events,https://github.com/iNPUTmice/Conversations/issues/3681,608468168,MDU6SXNzdWU2MDg0NjgxNjg=,3681,Display ban reason,"{'login': 'Ppjet6', 'id': 138302, 'node_id': 'MDQ6VXNlcjEzODMwMg==', 'avatar_url': 'https://avatars0.githubusercontent.com/u/138302?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Ppjet6', 'html_url': 'https://github.com/Ppjet6', 'followers_url': 'https://api.github.com/users/Ppjet6/followers', 'following_url': 'https://api.github.com/users/Ppjet6/following{/other_user}', 'gists_url': 'https://api.github.com/users/Ppjet6/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Ppjet6/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Ppjet6/subscriptions', 'organizations_url': 'https://api.github.com/users/Ppjet6/orgs', 'repos_url': 'https://api.github.com/users/Ppjet6/repos', 'events_url': 'https://api.github.com/users/Ppjet6/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Ppjet6/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-04-28T16:53:56Z,2020-07-27T19:50:40Z,2020-07-27T19:50:40Z,NONE,,,"#### General information
* **Version:** 2.7.1+fcr
#### Steps to reproduce
1. Get banned from a channel with reason ""foo""
#### Actual result
""You have been from this group chat"" ""Leave""
#### Expected result
A note that you have been banned from the channel, including the reason ""foo"".
Banning is also sometimes used to prevent presence spam when a mobile client goes rogue, and admins generally leave a useful message such as ""It's only temporary"" or ""ping me at.. when your connection gets better"" or something. It would be nice to be able to see this context.",
1141,https://api.github.com/repos/iNPUTmice/Conversations/issues/3680,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3680/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3680/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3680/events,https://github.com/iNPUTmice/Conversations/pull/3680,607789170,MDExOlB1bGxSZXF1ZXN0NDA5Njk0Mzky,3680,Add CI/CD,"{'login': 'dtpnk', 'id': 32763831, 'node_id': 'MDQ6VXNlcjMyNzYzODMx', 'avatar_url': 'https://avatars0.githubusercontent.com/u/32763831?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dtpnk', 'html_url': 'https://github.com/dtpnk', 'followers_url': 'https://api.github.com/users/dtpnk/followers', 'following_url': 'https://api.github.com/users/dtpnk/following{/other_user}', 'gists_url': 'https://api.github.com/users/dtpnk/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dtpnk/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dtpnk/subscriptions', 'organizations_url': 'https://api.github.com/users/dtpnk/orgs', 'repos_url': 'https://api.github.com/users/dtpnk/repos', 'events_url': 'https://api.github.com/users/dtpnk/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dtpnk/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,0,2020-04-27T19:20:03Z,2020-04-27T19:20:16Z,2020-04-27T19:20:16Z,NONE,,"{'url': 'https://api.github.com/repos/iNPUTmice/Conversations/pulls/3680', 'html_url': 'https://github.com/iNPUTmice/Conversations/pull/3680', 'diff_url': 'https://github.com/iNPUTmice/Conversations/pull/3680.diff', 'patch_url': 'https://github.com/iNPUTmice/Conversations/pull/3680.patch'}","## What
* Add CI/CD (github action)
## Why
* having apk as test version as artifact",
1142,https://api.github.com/repos/iNPUTmice/Conversations/issues/3679,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3679/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3679/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3679/events,https://github.com/iNPUTmice/Conversations/issues/3679,607703235,MDU6SXNzdWU2MDc3MDMyMzU=,3679,Thank you for making the audio/video calls feature,"{'login': 'immanuelfodor', 'id': 21174107, 'node_id': 'MDQ6VXNlcjIxMTc0MTA3', 'avatar_url': 'https://avatars2.githubusercontent.com/u/21174107?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/immanuelfodor', 'html_url': 'https://github.com/immanuelfodor', 'followers_url': 'https://api.github.com/users/immanuelfodor/followers', 'following_url': 'https://api.github.com/users/immanuelfodor/following{/other_user}', 'gists_url': 'https://api.github.com/users/immanuelfodor/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/immanuelfodor/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/immanuelfodor/subscriptions', 'organizations_url': 'https://api.github.com/users/immanuelfodor/orgs', 'repos_url': 'https://api.github.com/users/immanuelfodor/repos', 'events_url': 'https://api.github.com/users/immanuelfodor/events{/privacy}', 'received_events_url': 'https://api.github.com/users/immanuelfodor/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,1,2020-04-27T16:57:58Z,2020-04-28T07:48:02Z,2020-04-28T07:48:02Z,NONE,,,"Hi Everyone, I just wanted to thank you for making the audio/video calls feature happen! Works fantastic with Prosody + Coturn with the turncredentials community module (https://prosody.im/doc/coturn). Jitsi is also great for conferencing but so great for on-demand 1-on-1 calls, however, this is easy to use, works like other messengers, and wife-compatible! :grinning: Thank you, again, it was worth waiting for it.",
1143,https://api.github.com/repos/iNPUTmice/Conversations/issues/3678,https://api.github.com/repos/iNPUTmice/Conversations,https://api.github.com/repos/iNPUTmice/Conversations/issues/3678/labels{/name},https://api.github.com/repos/iNPUTmice/Conversations/issues/3678/comments,https://api.github.com/repos/iNPUTmice/Conversations/issues/3678/events,https://github.com/iNPUTmice/Conversations/issues/3678,607323249,MDU6SXNzdWU2MDczMjMyNDk=,3678,Package org.webrtc does not exist,"{'login': 'fulmeek', 'id': 36341513, 'node_id': 'MDQ6VXNlcjM2MzQxNTEz', 'avatar_url': 'https://avatars0.githubusercontent.com/u/36341513?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/fulmeek', 'html_url': 'https://github.com/fulmeek', 'followers_url': 'https://api.github.com/users/fulmeek/followers', 'following_url': 'https://api.github.com/users/fulmeek/following{/other_user}', 'gists_url': 'https://api.github.com/users/fulmeek/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/fulmeek/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/fulmeek/subscriptions', 'organizations_url': 'https://api.github.com/users/fulmeek/orgs', 'repos_url': 'https://api.github.com/users/fulmeek/repos', 'events_url': 'https://api.github.com/users/fulmeek/events{/privacy}', 'received_events_url': 'https://api.github.com/users/fulmeek/received_events', 'type': 'User', 'site_admin': False}",[],closed,False,,[],,2,2020-04-27T07:55:07Z,2020-04-27T08:21:04Z,2020-04-27T07:59:17Z,NONE,,,"Hi there,
While trying to compile from the latest sources, the build fails (output see below).
#### Steps to reproduce
1. Do a fresh clone from the repo
2. Try to build one of the targets
This happens both in Android Studio (everything up to date) and using `gradlew` from the terminal.
It always used to work perfectly fine before. Do I miss something?
#### Build log
````
Executing tasks: [:assembleConversationsFreeCompatDebug] in project /[...]/Conversations
> Task :libs:xmpp-addr:compileJava
> Task :libs:xmpp-addr:processResources NO-SOURCE
> Task :libs:xmpp-addr:classes
> Task :libs:xmpp-addr:jar
> Task :preBuild UP-TO-DATE
> Task :extractProguardFiles
> Task :preConversationsFreeCompatDebugBuild
> Task :compileConversationsFreeCompatDebugAidl NO-SOURCE
> Task :compileConversationsFreeCompatDebugRenderscript NO-SOURCE
> Task :generateConversationsFreeCompatDebugBuildConfig
> Task :prepareLintJar
> Task :generateConversationsFreeCompatDebugResValues
> Task :generateConversationsFreeCompatDebugResources
> Task :prepareLintJarForPublish
> Task :generateConversationsFreeCompatDebugSources
> Task :dataBindingExportBuildInfoConversationsFreeCompatDebug
> Task :dataBindingMergeGenClassesConversationsFreeCompatDebug
> Task :mainApkListPersistenceConversationsFreeCompatDebug
> Task :createConversationsFreeCompatDebugCompatibleScreenManifests
> Task :extractDeepLinksConversationsFreeCompatDebug
> Task :processConversationsFreeCompatDebugManifest
/[...]/Conversations/src/conversations/AndroidManifest.xml:6:5-42:19 Warning:
application@android:label was tagged at AndroidManifest.xml:6 to replace other declarations but no other declaration present
/[...]/Conversations/src/conversations/AndroidManifest.xml:39:5-41:31 Warning:
uses-permission#android.permission.READ_PHONE_STATE was tagged at AndroidManifest.xml:39 to remove other declarations but no other declaration present
> Task :mergeConversationsFreeCompatDebugShaders
> Task :compileConversationsFreeCompatDebugShaders
> Task :generateConversationsFreeCompatDebugAssets
> Task :mergeConversationsFreeCompatDebugAssets
> Task :checkConversationsFreeCompatDebugDuplicateClasses
> Task :processConversationsFreeCompatDebugJavaRes NO-SOURCE
> Task :mergeConversationsFreeCompatDebugJniLibFolders
> Task :mergeConversationsFreeCompatDebugResources
> Task :processConversationsFreeCompatDebugResources
> Task :mergeConversationsFreeCompatDebugNativeLibs
> Task :stripConversationsFreeCompatDebugDebugSymbols
> Task :validateSigningConversationsFreeCompatDebug
> Task :javaPreCompileConversationsFreeCompatDebug
> Task :dataBindingExportFeaturePackageIdsConversationsFreeCompatDebug
> Task :dataBindingMergeDependencyArtifactsConversationsFreeCompatDebug
> Task :dataBindingGenBaseClassesConversationsFreeCompatDebug
> Task :compileConversationsFreeCompatDebugJavaWithJavac
/[...]/Conversations/src/main/java/eu/siacs/conversations/services/AppRTCAudioManager.java:26: error: package org.webrtc does not exist
import org.webrtc.ThreadUtils;
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/JingleRtpConnection.java:15: error: package org.webrtc does not exist
import org.webrtc.EglBase;
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/JingleRtpConnection.java:16: error: package org.webrtc does not exist
import org.webrtc.IceCandidate;
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/JingleRtpConnection.java:17: error: package org.webrtc does not exist
import org.webrtc.PeerConnection;
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/JingleRtpConnection.java:18: error: package org.webrtc does not exist
import org.webrtc.VideoTrack;
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/WebRTCWrapper.java:16: error: package org.webrtc does not exist
import org.webrtc.AudioSource;
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/WebRTCWrapper.java:17: error: package org.webrtc does not exist
import org.webrtc.AudioTrack;
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/WebRTCWrapper.java:18: error: package org.webrtc does not exist
import org.webrtc.Camera1Enumerator;
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/WebRTCWrapper.java:19: error: package org.webrtc does not exist
import org.webrtc.Camera2Enumerator;
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/WebRTCWrapper.java:20: error: package org.webrtc does not exist
import org.webrtc.CameraEnumerationAndroid;
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/WebRTCWrapper.java:21: error: package org.webrtc does not exist
import org.webrtc.CameraEnumerator;
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/WebRTCWrapper.java:22: error: package org.webrtc does not exist
import org.webrtc.CameraVideoCapturer;
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/WebRTCWrapper.java:23: error: package org.webrtc does not exist
import org.webrtc.CandidatePairChangeEvent;
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/WebRTCWrapper.java:24: error: package org.webrtc does not exist
import org.webrtc.DataChannel;
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/WebRTCWrapper.java:25: error: package org.webrtc does not exist
import org.webrtc.DefaultVideoDecoderFactory;
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/WebRTCWrapper.java:26: error: package org.webrtc does not exist
import org.webrtc.DefaultVideoEncoderFactory;
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/WebRTCWrapper.java:27: error: package org.webrtc does not exist
import org.webrtc.EglBase;
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/WebRTCWrapper.java:28: error: package org.webrtc does not exist
import org.webrtc.IceCandidate;
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/WebRTCWrapper.java:29: error: package org.webrtc does not exist
import org.webrtc.MediaConstraints;
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/WebRTCWrapper.java:30: error: package org.webrtc does not exist
import org.webrtc.MediaStream;
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/WebRTCWrapper.java:31: error: package org.webrtc does not exist
import org.webrtc.MediaStreamTrack;
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/WebRTCWrapper.java:32: error: package org.webrtc does not exist
import org.webrtc.PeerConnection;
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/WebRTCWrapper.java:33: error: package org.webrtc does not exist
import org.webrtc.PeerConnectionFactory;
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/WebRTCWrapper.java:34: error: package org.webrtc does not exist
import org.webrtc.RtpReceiver;
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/WebRTCWrapper.java:35: error: package org.webrtc does not exist
import org.webrtc.RtpTransceiver;
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/WebRTCWrapper.java:36: error: package org.webrtc does not exist
import org.webrtc.SdpObserver;
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/WebRTCWrapper.java:37: error: package org.webrtc does not exist
import org.webrtc.SessionDescription;
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/WebRTCWrapper.java:38: error: package org.webrtc does not exist
import org.webrtc.SurfaceTextureHelper;
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/WebRTCWrapper.java:39: error: package org.webrtc does not exist
import org.webrtc.VideoSource;
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/WebRTCWrapper.java:40: error: package org.webrtc does not exist
import org.webrtc.VideoTrack;
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/services/AppRTCBluetoothManager.java:32: error: package org.webrtc does not exist
import org.webrtc.ThreadUtils;
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/services/AppRTCProximitySensor.java:21: error: package org.webrtc does not exist
import org.webrtc.ThreadUtils;
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/JingleRtpConnection.java:118: error: cannot find symbol
private final ArrayDeque pendingIceCandidates = new ArrayDeque<>();
^
symbol: class IceCandidate
location: class JingleRtpConnection
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/JingleRtpConnection.java:400: error: package PeerConnection does not exist
private synchronized void sendSessionAccept(final Set media, final SessionDescription offer, final List iceServers) {
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/JingleRtpConnection.java:619: error: package PeerConnection does not exist
private synchronized void sendSessionInitiate(final Set media, final State targetState, final List iceServers) {
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/JingleRtpConnection.java:882: error: package PeerConnection does not exist
private void setupWebRTC(final Set media, final List iceServers) throws WebRTCWrapper.InitializationException {
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/JingleRtpConnection.java:967: error: cannot find symbol
public void onIceCandidate(final IceCandidate iceCandidate) {
^
symbol: class IceCandidate
location: class JingleRtpConnection
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/JingleRtpConnection.java:974: error: package PeerConnection does not exist
public void onConnectionChange(final PeerConnection.PeerConnectionState newState) {
^
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/JingleRtpConnection.java:1146: error: cannot find symbol
public Optional geLocalVideoTrack() {
^
symbol: class VideoTrack
location: class JingleRtpConnection
/[...]/Conversations/src/main/java/eu/siacs/conversations/xmpp/jingle/JingleRtpConnection.java:1150: error: cannot find symbol
public Optional