[{"id":"36972344445","type":"IssuesEvent","actor":{"id":3940906,"login":"bmarty","display_login":"bmarty","gravatar_id":"","url":"https://api.github.com/users/bmarty","avatar_url":"https://avatars.githubusercontent.com/u/3940906?"},"repo":{"id":546522002,"name":"element-hq/element-x-android","url":"https://api.github.com/repos/element-hq/element-x-android"},"payload":{"action":"opened","issue":{"url":"https://api.github.com/repos/element-hq/element-x-android/issues/2619","repository_url":"https://api.github.com/repos/element-hq/element-x-android","labels_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2619/labels{/name}","comments_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2619/comments","events_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2619/events","html_url":"https://github.com/element-hq/element-x-android/issues/2619","id":2213533465,"node_id":"I_kwDOIJNDks6D79cZ","number":2619,"title":"Crash on RustMatrixRoom.activeMemberCount","user":{"login":"bmarty","id":3940906,"node_id":"MDQ6VXNlcjM5NDA5MDY=","avatar_url":"https://avatars.githubusercontent.com/u/3940906?v=4","gravatar_id":"","url":"https://api.github.com/users/bmarty","html_url":"https://github.com/bmarty","followers_url":"https://api.github.com/users/bmarty/followers","following_url":"https://api.github.com/users/bmarty/following{/other_user}","gists_url":"https://api.github.com/users/bmarty/gists{/gist_id}","starred_url":"https://api.github.com/users/bmarty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bmarty/subscriptions","organizations_url":"https://api.github.com/users/bmarty/orgs","repos_url":"https://api.github.com/users/bmarty/repos","events_url":"https://api.github.com/users/bmarty/events{/privacy}","received_events_url":"https://api.github.com/users/bmarty/received_events","type":"User","site_admin":false},"labels":[{"id":5769639005,"node_id":"LA_kwDOIJNDks8AAAABV-W0XQ","url":"https://api.github.com/repos/element-hq/element-x-android/labels/z-Crash","name":"z-Crash","color":"D93F0B","default":false,"description":""}],"state":"open","locked":false,"assignee":{"login":"bmarty","id":3940906,"node_id":"MDQ6VXNlcjM5NDA5MDY=","avatar_url":"https://avatars.githubusercontent.com/u/3940906?v=4","gravatar_id":"","url":"https://api.github.com/users/bmarty","html_url":"https://github.com/bmarty","followers_url":"https://api.github.com/users/bmarty/followers","following_url":"https://api.github.com/users/bmarty/following{/other_user}","gists_url":"https://api.github.com/users/bmarty/gists{/gist_id}","starred_url":"https://api.github.com/users/bmarty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bmarty/subscriptions","organizations_url":"https://api.github.com/users/bmarty/orgs","repos_url":"https://api.github.com/users/bmarty/repos","events_url":"https://api.github.com/users/bmarty/events{/privacy}","received_events_url":"https://api.github.com/users/bmarty/received_events","type":"User","site_admin":false},"assignees":[{"login":"bmarty","id":3940906,"node_id":"MDQ6VXNlcjM5NDA5MDY=","avatar_url":"https://avatars.githubusercontent.com/u/3940906?v=4","gravatar_id":"","url":"https://api.github.com/users/bmarty","html_url":"https://github.com/bmarty","followers_url":"https://api.github.com/users/bmarty/followers","following_url":"https://api.github.com/users/bmarty/following{/other_user}","gists_url":"https://api.github.com/users/bmarty/gists{/gist_id}","starred_url":"https://api.github.com/users/bmarty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bmarty/subscriptions","organizations_url":"https://api.github.com/users/bmarty/orgs","repos_url":"https://api.github.com/users/bmarty/repos","events_url":"https://api.github.com/users/bmarty/events{/privacy}","received_events_url":"https://api.github.com/users/bmarty/received_events","type":"User","site_admin":false}],"milestone":null,"comments":0,"created_at":"2024-03-28T15:35:02Z","updated_at":"2024-03-28T15:35:03Z","closed_at":null,"author_association":"MEMBER","active_lock_reason":null,"body":"**IllegalStateException**\r\nRoom object has already been destroyed\r\n\r\n\r\n\r\nSeems that the room is release and the timeline is still active.\r\n\r\nCrash occurrence is low but would be nice to investigate and fix. Investigating it.","reactions":{"url":"https://api.github.com/repos/element-hq/element-x-android/issues/2619/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2619/timeline","performed_via_github_app":null,"state_reason":null}},"public":true,"created_at":"2024-03-28T15:35:04Z","org":{"id":13446337,"login":"element-hq","gravatar_id":"","url":"https://api.github.com/orgs/element-hq","avatar_url":"https://avatars.githubusercontent.com/u/13446337?"}},{"id":"36969119473","type":"DeleteEvent","actor":{"id":3940906,"login":"bmarty","display_login":"bmarty","gravatar_id":"","url":"https://api.github.com/users/bmarty","avatar_url":"https://avatars.githubusercontent.com/u/3940906?"},"repo":{"id":546522002,"name":"element-hq/element-x-android","url":"https://api.github.com/repos/element-hq/element-x-android"},"payload":{"ref":"feature/bma/fixRoomAnalytics","ref_type":"branch","pusher_type":"user"},"public":true,"created_at":"2024-03-28T14:06:40Z","org":{"id":13446337,"login":"element-hq","gravatar_id":"","url":"https://api.github.com/orgs/element-hq","avatar_url":"https://avatars.githubusercontent.com/u/13446337?"}},{"id":"36969119497","type":"PushEvent","actor":{"id":3940906,"login":"bmarty","display_login":"bmarty","gravatar_id":"","url":"https://api.github.com/users/bmarty","avatar_url":"https://avatars.githubusercontent.com/u/3940906?"},"repo":{"id":546522002,"name":"element-hq/element-x-android","url":"https://api.github.com/repos/element-hq/element-x-android"},"payload":{"repository_id":546522002,"push_id":17747231965,"size":2,"distinct_size":2,"ref":"refs/heads/develop","head":"6c97f8b5bb2a0e6a835fe7a6f4a97cee370bcf77","before":"02f993d2e8b21f2b0eb8317bf1ecc146c42136a6","commits":[{"sha":"46008c2887e9e1b514ed8f9b177987a03f128e68","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"Fix analytics: spaceId have the same syntax as roomId. Use MatrixRoom.isSpace instead of MatrixPatterns.isSpaceId (#2612)\nAlso remoce useless orFalse() calls.","distinct":true,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/46008c2887e9e1b514ed8f9b177987a03f128e68"},{"sha":"6c97f8b5bb2a0e6a835fe7a6f4a97cee370bcf77","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"Merge pull request #2618 from element-hq/feature/bma/fixRoomAnalytics\n\nFix analytics","distinct":true,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/6c97f8b5bb2a0e6a835fe7a6f4a97cee370bcf77"}]},"public":true,"created_at":"2024-03-28T14:06:40Z","org":{"id":13446337,"login":"element-hq","gravatar_id":"","url":"https://api.github.com/orgs/element-hq","avatar_url":"https://avatars.githubusercontent.com/u/13446337?"}},{"id":"36969119062","type":"PullRequestEvent","actor":{"id":3940906,"login":"bmarty","display_login":"bmarty","gravatar_id":"","url":"https://api.github.com/users/bmarty","avatar_url":"https://avatars.githubusercontent.com/u/3940906?"},"repo":{"id":546522002,"name":"element-hq/element-x-android","url":"https://api.github.com/repos/element-hq/element-x-android"},"payload":{"action":"closed","number":2618,"pull_request":{"url":"https://api.github.com/repos/element-hq/element-x-android/pulls/2618","id":1795826714,"node_id":"PR_kwDOIJNDks5rCiQa","html_url":"https://github.com/element-hq/element-x-android/pull/2618","diff_url":"https://github.com/element-hq/element-x-android/pull/2618.diff","patch_url":"https://github.com/element-hq/element-x-android/pull/2618.patch","issue_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2618","number":2618,"state":"closed","locked":false,"title":"Fix analytics","user":{"login":"bmarty","id":3940906,"node_id":"MDQ6VXNlcjM5NDA5MDY=","avatar_url":"https://avatars.githubusercontent.com/u/3940906?v=4","gravatar_id":"","url":"https://api.github.com/users/bmarty","html_url":"https://github.com/bmarty","followers_url":"https://api.github.com/users/bmarty/followers","following_url":"https://api.github.com/users/bmarty/following{/other_user}","gists_url":"https://api.github.com/users/bmarty/gists{/gist_id}","starred_url":"https://api.github.com/users/bmarty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bmarty/subscriptions","organizations_url":"https://api.github.com/users/bmarty/orgs","repos_url":"https://api.github.com/users/bmarty/repos","events_url":"https://api.github.com/users/bmarty/events{/privacy}","received_events_url":"https://api.github.com/users/bmarty/received_events","type":"User","site_admin":false},"body":"spaceId have the same syntax as roomId. Use MatrixRoom.isSpace instead of MatrixPatterns.isSpaceId (#2612)\r\n\r\nAlso remove useless orFalse() calls.\r\n\r\nCloses #2612","created_at":"2024-03-28T11:14:46Z","updated_at":"2024-03-28T14:06:39Z","closed_at":"2024-03-28T14:06:39Z","merged_at":"2024-03-28T14:06:39Z","merge_commit_sha":"6c97f8b5bb2a0e6a835fe7a6f4a97cee370bcf77","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"draft":false,"commits_url":"https://api.github.com/repos/element-hq/element-x-android/pulls/2618/commits","review_comments_url":"https://api.github.com/repos/element-hq/element-x-android/pulls/2618/comments","review_comment_url":"https://api.github.com/repos/element-hq/element-x-android/pulls/comments{/number}","comments_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2618/comments","statuses_url":"https://api.github.com/repos/element-hq/element-x-android/statuses/46008c2887e9e1b514ed8f9b177987a03f128e68","head":{"label":"element-hq:feature/bma/fixRoomAnalytics","ref":"feature/bma/fixRoomAnalytics","sha":"46008c2887e9e1b514ed8f9b177987a03f128e68","user":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"repo":{"id":546522002,"node_id":"R_kgDOIJNDkg","name":"element-x-android","full_name":"element-hq/element-x-android","private":false,"owner":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/element-hq/element-x-android","description":"Android Matrix messenger application using the Matrix Rust Sdk and Jetpack Compose","fork":false,"url":"https://api.github.com/repos/element-hq/element-x-android","forks_url":"https://api.github.com/repos/element-hq/element-x-android/forks","keys_url":"https://api.github.com/repos/element-hq/element-x-android/keys{/key_id}","collaborators_url":"https://api.github.com/repos/element-hq/element-x-android/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/element-hq/element-x-android/teams","hooks_url":"https://api.github.com/repos/element-hq/element-x-android/hooks","issue_events_url":"https://api.github.com/repos/element-hq/element-x-android/issues/events{/number}","events_url":"https://api.github.com/repos/element-hq/element-x-android/events","assignees_url":"https://api.github.com/repos/element-hq/element-x-android/assignees{/user}","branches_url":"https://api.github.com/repos/element-hq/element-x-android/branches{/branch}","tags_url":"https://api.github.com/repos/element-hq/element-x-android/tags","blobs_url":"https://api.github.com/repos/element-hq/element-x-android/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/element-hq/element-x-android/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/element-hq/element-x-android/git/refs{/sha}","trees_url":"https://api.github.com/repos/element-hq/element-x-android/git/trees{/sha}","statuses_url":"https://api.github.com/repos/element-hq/element-x-android/statuses/{sha}","languages_url":"https://api.github.com/repos/element-hq/element-x-android/languages","stargazers_url":"https://api.github.com/repos/element-hq/element-x-android/stargazers","contributors_url":"https://api.github.com/repos/element-hq/element-x-android/contributors","subscribers_url":"https://api.github.com/repos/element-hq/element-x-android/subscribers","subscription_url":"https://api.github.com/repos/element-hq/element-x-android/subscription","commits_url":"https://api.github.com/repos/element-hq/element-x-android/commits{/sha}","git_commits_url":"https://api.github.com/repos/element-hq/element-x-android/git/commits{/sha}","comments_url":"https://api.github.com/repos/element-hq/element-x-android/comments{/number}","issue_comment_url":"https://api.github.com/repos/element-hq/element-x-android/issues/comments{/number}","contents_url":"https://api.github.com/repos/element-hq/element-x-android/contents/{+path}","compare_url":"https://api.github.com/repos/element-hq/element-x-android/compare/{base}...{head}","merges_url":"https://api.github.com/repos/element-hq/element-x-android/merges","archive_url":"https://api.github.com/repos/element-hq/element-x-android/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/element-hq/element-x-android/downloads","issues_url":"https://api.github.com/repos/element-hq/element-x-android/issues{/number}","pulls_url":"https://api.github.com/repos/element-hq/element-x-android/pulls{/number}","milestones_url":"https://api.github.com/repos/element-hq/element-x-android/milestones{/number}","notifications_url":"https://api.github.com/repos/element-hq/element-x-android/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/element-hq/element-x-android/labels{/name}","releases_url":"https://api.github.com/repos/element-hq/element-x-android/releases{/id}","deployments_url":"https://api.github.com/repos/element-hq/element-x-android/deployments","created_at":"2022-10-06T07:59:24Z","updated_at":"2024-03-28T10:46:21Z","pushed_at":"2024-03-28T13:59:42Z","git_url":"git://github.com/element-hq/element-x-android.git","ssh_url":"git@github.com:element-hq/element-x-android.git","clone_url":"https://github.com/element-hq/element-x-android.git","svn_url":"https://github.com/element-hq/element-x-android","homepage":"","size":434019,"stargazers_count":746,"watchers_count":746,"language":"Kotlin","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"has_discussions":false,"forks_count":92,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":209,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":["hacktoberfest","matrix"],"visibility":"public","forks":92,"open_issues":209,"watchers":746,"default_branch":"develop"}},"base":{"label":"element-hq:develop","ref":"develop","sha":"02f993d2e8b21f2b0eb8317bf1ecc146c42136a6","user":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"repo":{"id":546522002,"node_id":"R_kgDOIJNDkg","name":"element-x-android","full_name":"element-hq/element-x-android","private":false,"owner":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/element-hq/element-x-android","description":"Android Matrix messenger application using the Matrix Rust Sdk and Jetpack Compose","fork":false,"url":"https://api.github.com/repos/element-hq/element-x-android","forks_url":"https://api.github.com/repos/element-hq/element-x-android/forks","keys_url":"https://api.github.com/repos/element-hq/element-x-android/keys{/key_id}","collaborators_url":"https://api.github.com/repos/element-hq/element-x-android/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/element-hq/element-x-android/teams","hooks_url":"https://api.github.com/repos/element-hq/element-x-android/hooks","issue_events_url":"https://api.github.com/repos/element-hq/element-x-android/issues/events{/number}","events_url":"https://api.github.com/repos/element-hq/element-x-android/events","assignees_url":"https://api.github.com/repos/element-hq/element-x-android/assignees{/user}","branches_url":"https://api.github.com/repos/element-hq/element-x-android/branches{/branch}","tags_url":"https://api.github.com/repos/element-hq/element-x-android/tags","blobs_url":"https://api.github.com/repos/element-hq/element-x-android/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/element-hq/element-x-android/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/element-hq/element-x-android/git/refs{/sha}","trees_url":"https://api.github.com/repos/element-hq/element-x-android/git/trees{/sha}","statuses_url":"https://api.github.com/repos/element-hq/element-x-android/statuses/{sha}","languages_url":"https://api.github.com/repos/element-hq/element-x-android/languages","stargazers_url":"https://api.github.com/repos/element-hq/element-x-android/stargazers","contributors_url":"https://api.github.com/repos/element-hq/element-x-android/contributors","subscribers_url":"https://api.github.com/repos/element-hq/element-x-android/subscribers","subscription_url":"https://api.github.com/repos/element-hq/element-x-android/subscription","commits_url":"https://api.github.com/repos/element-hq/element-x-android/commits{/sha}","git_commits_url":"https://api.github.com/repos/element-hq/element-x-android/git/commits{/sha}","comments_url":"https://api.github.com/repos/element-hq/element-x-android/comments{/number}","issue_comment_url":"https://api.github.com/repos/element-hq/element-x-android/issues/comments{/number}","contents_url":"https://api.github.com/repos/element-hq/element-x-android/contents/{+path}","compare_url":"https://api.github.com/repos/element-hq/element-x-android/compare/{base}...{head}","merges_url":"https://api.github.com/repos/element-hq/element-x-android/merges","archive_url":"https://api.github.com/repos/element-hq/element-x-android/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/element-hq/element-x-android/downloads","issues_url":"https://api.github.com/repos/element-hq/element-x-android/issues{/number}","pulls_url":"https://api.github.com/repos/element-hq/element-x-android/pulls{/number}","milestones_url":"https://api.github.com/repos/element-hq/element-x-android/milestones{/number}","notifications_url":"https://api.github.com/repos/element-hq/element-x-android/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/element-hq/element-x-android/labels{/name}","releases_url":"https://api.github.com/repos/element-hq/element-x-android/releases{/id}","deployments_url":"https://api.github.com/repos/element-hq/element-x-android/deployments","created_at":"2022-10-06T07:59:24Z","updated_at":"2024-03-28T10:46:21Z","pushed_at":"2024-03-28T13:59:42Z","git_url":"git://github.com/element-hq/element-x-android.git","ssh_url":"git@github.com:element-hq/element-x-android.git","clone_url":"https://github.com/element-hq/element-x-android.git","svn_url":"https://github.com/element-hq/element-x-android","homepage":"","size":434019,"stargazers_count":746,"watchers_count":746,"language":"Kotlin","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"has_discussions":false,"forks_count":92,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":209,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":["hacktoberfest","matrix"],"visibility":"public","forks":92,"open_issues":209,"watchers":746,"default_branch":"develop"}},"_links":{"self":{"href":"https://api.github.com/repos/element-hq/element-x-android/pulls/2618"},"html":{"href":"https://github.com/element-hq/element-x-android/pull/2618"},"issue":{"href":"https://api.github.com/repos/element-hq/element-x-android/issues/2618"},"comments":{"href":"https://api.github.com/repos/element-hq/element-x-android/issues/2618/comments"},"review_comments":{"href":"https://api.github.com/repos/element-hq/element-x-android/pulls/2618/comments"},"review_comment":{"href":"https://api.github.com/repos/element-hq/element-x-android/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/element-hq/element-x-android/pulls/2618/commits"},"statuses":{"href":"https://api.github.com/repos/element-hq/element-x-android/statuses/46008c2887e9e1b514ed8f9b177987a03f128e68"}},"author_association":"MEMBER","auto_merge":null,"active_lock_reason":null,"merged":true,"mergeable":null,"rebaseable":null,"mergeable_state":"unknown","merged_by":{"login":"bmarty","id":3940906,"node_id":"MDQ6VXNlcjM5NDA5MDY=","avatar_url":"https://avatars.githubusercontent.com/u/3940906?v=4","gravatar_id":"","url":"https://api.github.com/users/bmarty","html_url":"https://github.com/bmarty","followers_url":"https://api.github.com/users/bmarty/followers","following_url":"https://api.github.com/users/bmarty/following{/other_user}","gists_url":"https://api.github.com/users/bmarty/gists{/gist_id}","starred_url":"https://api.github.com/users/bmarty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bmarty/subscriptions","organizations_url":"https://api.github.com/users/bmarty/orgs","repos_url":"https://api.github.com/users/bmarty/repos","events_url":"https://api.github.com/users/bmarty/events{/privacy}","received_events_url":"https://api.github.com/users/bmarty/received_events","type":"User","site_admin":false},"comments":3,"review_comments":0,"maintainer_can_modify":false,"commits":1,"additions":11,"deletions":9,"changed_files":6}},"public":true,"created_at":"2024-03-28T14:06:40Z","org":{"id":13446337,"login":"element-hq","gravatar_id":"","url":"https://api.github.com/orgs/element-hq","avatar_url":"https://avatars.githubusercontent.com/u/13446337?"}},{"id":"36969119548","type":"IssuesEvent","actor":{"id":3940906,"login":"bmarty","display_login":"bmarty","gravatar_id":"","url":"https://api.github.com/users/bmarty","avatar_url":"https://avatars.githubusercontent.com/u/3940906?"},"repo":{"id":546522002,"name":"element-hq/element-x-android","url":"https://api.github.com/repos/element-hq/element-x-android"},"payload":{"action":"closed","issue":{"url":"https://api.github.com/repos/element-hq/element-x-android/issues/2612","repository_url":"https://api.github.com/repos/element-hq/element-x-android","labels_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2612/labels{/name}","comments_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2612/comments","events_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2612/events","html_url":"https://github.com/element-hq/element-x-android/issues/2612","id":2210928242,"node_id":"I_kwDOIJNDks6DyBZy","number":2612,"title":"Fix analytics issue.","user":{"login":"bmarty","id":3940906,"node_id":"MDQ6VXNlcjM5NDA5MDY=","avatar_url":"https://avatars.githubusercontent.com/u/3940906?v=4","gravatar_id":"","url":"https://api.github.com/users/bmarty","html_url":"https://github.com/bmarty","followers_url":"https://api.github.com/users/bmarty/followers","following_url":"https://api.github.com/users/bmarty/following{/other_user}","gists_url":"https://api.github.com/users/bmarty/gists{/gist_id}","starred_url":"https://api.github.com/users/bmarty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bmarty/subscriptions","organizations_url":"https://api.github.com/users/bmarty/orgs","repos_url":"https://api.github.com/users/bmarty/repos","events_url":"https://api.github.com/users/bmarty/events{/privacy}","received_events_url":"https://api.github.com/users/bmarty/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":{"login":"bmarty","id":3940906,"node_id":"MDQ6VXNlcjM5NDA5MDY=","avatar_url":"https://avatars.githubusercontent.com/u/3940906?v=4","gravatar_id":"","url":"https://api.github.com/users/bmarty","html_url":"https://github.com/bmarty","followers_url":"https://api.github.com/users/bmarty/followers","following_url":"https://api.github.com/users/bmarty/following{/other_user}","gists_url":"https://api.github.com/users/bmarty/gists{/gist_id}","starred_url":"https://api.github.com/users/bmarty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bmarty/subscriptions","organizations_url":"https://api.github.com/users/bmarty/orgs","repos_url":"https://api.github.com/users/bmarty/repos","events_url":"https://api.github.com/users/bmarty/events{/privacy}","received_events_url":"https://api.github.com/users/bmarty/received_events","type":"User","site_admin":false},"assignees":[{"login":"bmarty","id":3940906,"node_id":"MDQ6VXNlcjM5NDA5MDY=","avatar_url":"https://avatars.githubusercontent.com/u/3940906?v=4","gravatar_id":"","url":"https://api.github.com/users/bmarty","html_url":"https://github.com/bmarty","followers_url":"https://api.github.com/users/bmarty/followers","following_url":"https://api.github.com/users/bmarty/following{/other_user}","gists_url":"https://api.github.com/users/bmarty/gists{/gist_id}","starred_url":"https://api.github.com/users/bmarty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bmarty/subscriptions","organizations_url":"https://api.github.com/users/bmarty/orgs","repos_url":"https://api.github.com/users/bmarty/repos","events_url":"https://api.github.com/users/bmarty/events{/privacy}","received_events_url":"https://api.github.com/users/bmarty/received_events","type":"User","site_admin":false}],"milestone":null,"comments":0,"created_at":"2024-03-27T14:16:13Z","updated_at":"2024-03-28T14:06:40Z","closed_at":"2024-03-28T14:06:40Z","author_association":"MEMBER","active_lock_reason":null,"body":"This code:\r\n\r\n```kotlin\r\n isSpace = MatrixPatterns.isSpaceId(this.roomId.value),\r\n```\r\n\r\nhttps://github.com/element-hq/element-x-android/blob/main/services/analytics/api/src/main/kotlin/io/element/android/services/analytics/api/extensions/ViewRoomExt.kt#L29\r\n\r\nis not correct. `isSpaceId` returns `true` for all valid `roomId`, so the analytics are wrong.","reactions":{"url":"https://api.github.com/repos/element-hq/element-x-android/issues/2612/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2612/timeline","performed_via_github_app":null,"state_reason":"completed"}},"public":true,"created_at":"2024-03-28T14:06:41Z","org":{"id":13446337,"login":"element-hq","gravatar_id":"","url":"https://api.github.com/orgs/element-hq","avatar_url":"https://avatars.githubusercontent.com/u/13446337?"}},{"id":"36969108347","type":"PullRequestReviewEvent","actor":{"id":3940906,"login":"bmarty","display_login":"bmarty","gravatar_id":"","url":"https://api.github.com/users/bmarty","avatar_url":"https://avatars.githubusercontent.com/u/3940906?"},"repo":{"id":546522002,"name":"element-hq/element-x-android","url":"https://api.github.com/repos/element-hq/element-x-android"},"payload":{"action":"created","review":{"id":1966329002,"node_id":"PRR_kwDOIJNDks51M8yq","user":{"login":"bmarty","id":3940906,"node_id":"MDQ6VXNlcjM5NDA5MDY=","avatar_url":"https://avatars.githubusercontent.com/u/3940906?v=4","gravatar_id":"","url":"https://api.github.com/users/bmarty","html_url":"https://github.com/bmarty","followers_url":"https://api.github.com/users/bmarty/followers","following_url":"https://api.github.com/users/bmarty/following{/other_user}","gists_url":"https://api.github.com/users/bmarty/gists{/gist_id}","starred_url":"https://api.github.com/users/bmarty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bmarty/subscriptions","organizations_url":"https://api.github.com/users/bmarty/orgs","repos_url":"https://api.github.com/users/bmarty/repos","events_url":"https://api.github.com/users/bmarty/events{/privacy}","received_events_url":"https://api.github.com/users/bmarty/received_events","type":"User","site_admin":false},"body":"LGTM, thanks!","commit_id":"19523339af36aa2cf69285ca8c8194d51bcf95e7","submitted_at":"2024-03-28T14:06:20Z","state":"approved","html_url":"https://github.com/element-hq/element-x-android/pull/2615#pullrequestreview-1966329002","pull_request_url":"https://api.github.com/repos/element-hq/element-x-android/pulls/2615","author_association":"MEMBER","_links":{"html":{"href":"https://github.com/element-hq/element-x-android/pull/2615#pullrequestreview-1966329002"},"pull_request":{"href":"https://api.github.com/repos/element-hq/element-x-android/pulls/2615"}}},"pull_request":{"url":"https://api.github.com/repos/element-hq/element-x-android/pulls/2615","id":1795654258,"node_id":"PR_kwDOIJNDks5rB4Jy","html_url":"https://github.com/element-hq/element-x-android/pull/2615","diff_url":"https://github.com/element-hq/element-x-android/pull/2615.diff","patch_url":"https://github.com/element-hq/element-x-android/pull/2615.patch","issue_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2615","number":2615,"state":"open","locked":false,"title":"Tests : create lambda recorder","user":{"login":"ganfra","id":8754928,"node_id":"MDQ6VXNlcjg3NTQ5Mjg=","avatar_url":"https://avatars.githubusercontent.com/u/8754928?v=4","gravatar_id":"","url":"https://api.github.com/users/ganfra","html_url":"https://github.com/ganfra","followers_url":"https://api.github.com/users/ganfra/followers","following_url":"https://api.github.com/users/ganfra/following{/other_user}","gists_url":"https://api.github.com/users/ganfra/gists{/gist_id}","starred_url":"https://api.github.com/users/ganfra/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ganfra/subscriptions","organizations_url":"https://api.github.com/users/ganfra/orgs","repos_url":"https://api.github.com/users/ganfra/repos","events_url":"https://api.github.com/users/ganfra/events{/privacy}","received_events_url":"https://api.github.com/users/ganfra/received_events","type":"User","site_admin":false},"body":"\r\n \r\n## Type of change\r\n\r\n- [ ] Feature\r\n- [ ] Bugfix\r\n- [X] Technical\r\n- [ ] Other :\r\n\r\n## Content\r\n\r\nCreate a small API for testing lambda execution.\r\n\r\nExample of usage : \r\n\r\n```\r\nfun present - emit join room event() = runTest {\r\n val joinRoom = lambdaRecorder { roomId: RoomId ->\r\n Result.success(roomId)\r\n }\r\n val presenter = createRoomDirectoryPresenter(joinRoom = FakeJoinRoom(joinRoom))\r\n presenter.test {\r\n awaitItem().also { state ->\r\n state.eventSink(RoomDirectoryEvents.JoinRoom(A_ROOM_ID))\r\n }\r\n advanceUntilIdle()\r\n cancelAndIgnoreRemainingEvents()\r\n }\r\n assert(joinRoom)\r\n .isCalledOnce()\r\n .with(value(A_ROOM_ID))\r\n}\r\n```\r\n\r\n\r\n\r\n## Motivation and context\r\nWe want to use lambda for implementing Fakes, so it'll be easier to check for execution.\r\n\r\n\r\n## Screenshots / GIFs\r\n\r\n\r\n\r\n## Tests\r\n\r\n\r\n\r\n- Step 1\r\n- Step 2\r\n- Step ...\r\n\r\n## Tested devices\r\n\r\n- [ ] Physical\r\n- [ ] Emulator\r\n- OS version(s):\r\n\r\n## Checklist\r\n\r\n\r\n\r\n- [ ] Changes have been tested on an Android device or Android emulator with API 23\r\n- [ ] UI change has been tested on both light and dark themes\r\n- [ ] Accessibility has been taken into account. See https://github.com/element-hq/element-x-android/blob/develop/CONTRIBUTING.md#accessibility\r\n- [ ] Pull request is based on the develop branch\r\n- [ ] Pull request includes a new file under ./changelog.d. See https://github.com/element-hq/element-x-android/blob/develop/CONTRIBUTING.md#changelog\r\n- [ ] Pull request includes screenshots or videos if containing UI changes\r\n- [ ] Pull request includes a [sign off](https://matrix-org.github.io/synapse/latest/development/contributing_guide.html#sign-off)\r\n- [ ] You've made a self review of your PR\r\n","created_at":"2024-03-28T09:38:39Z","updated_at":"2024-03-28T14:06:20Z","closed_at":null,"merged_at":null,"merge_commit_sha":"ec52ddf5e66fad1426fcf7109e770b415eaa9b35","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"draft":false,"commits_url":"https://api.github.com/repos/element-hq/element-x-android/pulls/2615/commits","review_comments_url":"https://api.github.com/repos/element-hq/element-x-android/pulls/2615/comments","review_comment_url":"https://api.github.com/repos/element-hq/element-x-android/pulls/comments{/number}","comments_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2615/comments","statuses_url":"https://api.github.com/repos/element-hq/element-x-android/statuses/19523339af36aa2cf69285ca8c8194d51bcf95e7","head":{"label":"element-hq:feature/fga/lambda_recorder","ref":"feature/fga/lambda_recorder","sha":"19523339af36aa2cf69285ca8c8194d51bcf95e7","user":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"repo":{"id":546522002,"node_id":"R_kgDOIJNDkg","name":"element-x-android","full_name":"element-hq/element-x-android","private":false,"owner":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/element-hq/element-x-android","description":"Android Matrix messenger application using the Matrix Rust Sdk and Jetpack Compose","fork":false,"url":"https://api.github.com/repos/element-hq/element-x-android","forks_url":"https://api.github.com/repos/element-hq/element-x-android/forks","keys_url":"https://api.github.com/repos/element-hq/element-x-android/keys{/key_id}","collaborators_url":"https://api.github.com/repos/element-hq/element-x-android/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/element-hq/element-x-android/teams","hooks_url":"https://api.github.com/repos/element-hq/element-x-android/hooks","issue_events_url":"https://api.github.com/repos/element-hq/element-x-android/issues/events{/number}","events_url":"https://api.github.com/repos/element-hq/element-x-android/events","assignees_url":"https://api.github.com/repos/element-hq/element-x-android/assignees{/user}","branches_url":"https://api.github.com/repos/element-hq/element-x-android/branches{/branch}","tags_url":"https://api.github.com/repos/element-hq/element-x-android/tags","blobs_url":"https://api.github.com/repos/element-hq/element-x-android/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/element-hq/element-x-android/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/element-hq/element-x-android/git/refs{/sha}","trees_url":"https://api.github.com/repos/element-hq/element-x-android/git/trees{/sha}","statuses_url":"https://api.github.com/repos/element-hq/element-x-android/statuses/{sha}","languages_url":"https://api.github.com/repos/element-hq/element-x-android/languages","stargazers_url":"https://api.github.com/repos/element-hq/element-x-android/stargazers","contributors_url":"https://api.github.com/repos/element-hq/element-x-android/contributors","subscribers_url":"https://api.github.com/repos/element-hq/element-x-android/subscribers","subscription_url":"https://api.github.com/repos/element-hq/element-x-android/subscription","commits_url":"https://api.github.com/repos/element-hq/element-x-android/commits{/sha}","git_commits_url":"https://api.github.com/repos/element-hq/element-x-android/git/commits{/sha}","comments_url":"https://api.github.com/repos/element-hq/element-x-android/comments{/number}","issue_comment_url":"https://api.github.com/repos/element-hq/element-x-android/issues/comments{/number}","contents_url":"https://api.github.com/repos/element-hq/element-x-android/contents/{+path}","compare_url":"https://api.github.com/repos/element-hq/element-x-android/compare/{base}...{head}","merges_url":"https://api.github.com/repos/element-hq/element-x-android/merges","archive_url":"https://api.github.com/repos/element-hq/element-x-android/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/element-hq/element-x-android/downloads","issues_url":"https://api.github.com/repos/element-hq/element-x-android/issues{/number}","pulls_url":"https://api.github.com/repos/element-hq/element-x-android/pulls{/number}","milestones_url":"https://api.github.com/repos/element-hq/element-x-android/milestones{/number}","notifications_url":"https://api.github.com/repos/element-hq/element-x-android/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/element-hq/element-x-android/labels{/name}","releases_url":"https://api.github.com/repos/element-hq/element-x-android/releases{/id}","deployments_url":"https://api.github.com/repos/element-hq/element-x-android/deployments","created_at":"2022-10-06T07:59:24Z","updated_at":"2024-03-28T10:46:21Z","pushed_at":"2024-03-28T13:59:42Z","git_url":"git://github.com/element-hq/element-x-android.git","ssh_url":"git@github.com:element-hq/element-x-android.git","clone_url":"https://github.com/element-hq/element-x-android.git","svn_url":"https://github.com/element-hq/element-x-android","homepage":"","size":434019,"stargazers_count":746,"watchers_count":746,"language":"Kotlin","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"has_discussions":false,"forks_count":92,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":210,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":["hacktoberfest","matrix"],"visibility":"public","forks":92,"open_issues":210,"watchers":746,"default_branch":"develop"}},"base":{"label":"element-hq:develop","ref":"develop","sha":"ac9b74ee7ce59244e330de9bb5dacd8e4c8f3a95","user":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"repo":{"id":546522002,"node_id":"R_kgDOIJNDkg","name":"element-x-android","full_name":"element-hq/element-x-android","private":false,"owner":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/element-hq/element-x-android","description":"Android Matrix messenger application using the Matrix Rust Sdk and Jetpack Compose","fork":false,"url":"https://api.github.com/repos/element-hq/element-x-android","forks_url":"https://api.github.com/repos/element-hq/element-x-android/forks","keys_url":"https://api.github.com/repos/element-hq/element-x-android/keys{/key_id}","collaborators_url":"https://api.github.com/repos/element-hq/element-x-android/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/element-hq/element-x-android/teams","hooks_url":"https://api.github.com/repos/element-hq/element-x-android/hooks","issue_events_url":"https://api.github.com/repos/element-hq/element-x-android/issues/events{/number}","events_url":"https://api.github.com/repos/element-hq/element-x-android/events","assignees_url":"https://api.github.com/repos/element-hq/element-x-android/assignees{/user}","branches_url":"https://api.github.com/repos/element-hq/element-x-android/branches{/branch}","tags_url":"https://api.github.com/repos/element-hq/element-x-android/tags","blobs_url":"https://api.github.com/repos/element-hq/element-x-android/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/element-hq/element-x-android/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/element-hq/element-x-android/git/refs{/sha}","trees_url":"https://api.github.com/repos/element-hq/element-x-android/git/trees{/sha}","statuses_url":"https://api.github.com/repos/element-hq/element-x-android/statuses/{sha}","languages_url":"https://api.github.com/repos/element-hq/element-x-android/languages","stargazers_url":"https://api.github.com/repos/element-hq/element-x-android/stargazers","contributors_url":"https://api.github.com/repos/element-hq/element-x-android/contributors","subscribers_url":"https://api.github.com/repos/element-hq/element-x-android/subscribers","subscription_url":"https://api.github.com/repos/element-hq/element-x-android/subscription","commits_url":"https://api.github.com/repos/element-hq/element-x-android/commits{/sha}","git_commits_url":"https://api.github.com/repos/element-hq/element-x-android/git/commits{/sha}","comments_url":"https://api.github.com/repos/element-hq/element-x-android/comments{/number}","issue_comment_url":"https://api.github.com/repos/element-hq/element-x-android/issues/comments{/number}","contents_url":"https://api.github.com/repos/element-hq/element-x-android/contents/{+path}","compare_url":"https://api.github.com/repos/element-hq/element-x-android/compare/{base}...{head}","merges_url":"https://api.github.com/repos/element-hq/element-x-android/merges","archive_url":"https://api.github.com/repos/element-hq/element-x-android/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/element-hq/element-x-android/downloads","issues_url":"https://api.github.com/repos/element-hq/element-x-android/issues{/number}","pulls_url":"https://api.github.com/repos/element-hq/element-x-android/pulls{/number}","milestones_url":"https://api.github.com/repos/element-hq/element-x-android/milestones{/number}","notifications_url":"https://api.github.com/repos/element-hq/element-x-android/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/element-hq/element-x-android/labels{/name}","releases_url":"https://api.github.com/repos/element-hq/element-x-android/releases{/id}","deployments_url":"https://api.github.com/repos/element-hq/element-x-android/deployments","created_at":"2022-10-06T07:59:24Z","updated_at":"2024-03-28T10:46:21Z","pushed_at":"2024-03-28T13:59:42Z","git_url":"git://github.com/element-hq/element-x-android.git","ssh_url":"git@github.com:element-hq/element-x-android.git","clone_url":"https://github.com/element-hq/element-x-android.git","svn_url":"https://github.com/element-hq/element-x-android","homepage":"","size":434019,"stargazers_count":746,"watchers_count":746,"language":"Kotlin","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"has_discussions":false,"forks_count":92,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":210,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":["hacktoberfest","matrix"],"visibility":"public","forks":92,"open_issues":210,"watchers":746,"default_branch":"develop"}},"_links":{"self":{"href":"https://api.github.com/repos/element-hq/element-x-android/pulls/2615"},"html":{"href":"https://github.com/element-hq/element-x-android/pull/2615"},"issue":{"href":"https://api.github.com/repos/element-hq/element-x-android/issues/2615"},"comments":{"href":"https://api.github.com/repos/element-hq/element-x-android/issues/2615/comments"},"review_comments":{"href":"https://api.github.com/repos/element-hq/element-x-android/pulls/2615/comments"},"review_comment":{"href":"https://api.github.com/repos/element-hq/element-x-android/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/element-hq/element-x-android/pulls/2615/commits"},"statuses":{"href":"https://api.github.com/repos/element-hq/element-x-android/statuses/19523339af36aa2cf69285ca8c8194d51bcf95e7"}},"author_association":"CONTRIBUTOR","auto_merge":null,"active_lock_reason":null}},"public":true,"created_at":"2024-03-28T14:06:21Z","org":{"id":13446337,"login":"element-hq","gravatar_id":"","url":"https://api.github.com/orgs/element-hq","avatar_url":"https://avatars.githubusercontent.com/u/13446337?"}},{"id":"36968879989","type":"IssueCommentEvent","actor":{"id":3940906,"login":"bmarty","display_login":"bmarty","gravatar_id":"","url":"https://api.github.com/users/bmarty","avatar_url":"https://avatars.githubusercontent.com/u/3940906?"},"repo":{"id":546522002,"name":"element-hq/element-x-android","url":"https://api.github.com/repos/element-hq/element-x-android"},"payload":{"action":"created","issue":{"url":"https://api.github.com/repos/element-hq/element-x-android/issues/2616","repository_url":"https://api.github.com/repos/element-hq/element-x-android","labels_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2616/labels{/name}","comments_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2616/comments","events_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2616/events","html_url":"https://github.com/element-hq/element-x-android/issues/2616","id":2212845602,"node_id":"I_kwDOIJNDks6D5Vgi","number":2616,"title":"Notification settings: toggle is not updated after successfull change","user":{"login":"bmarty","id":3940906,"node_id":"MDQ6VXNlcjM5NDA5MDY=","avatar_url":"https://avatars.githubusercontent.com/u/3940906?v=4","gravatar_id":"","url":"https://api.github.com/users/bmarty","html_url":"https://github.com/bmarty","followers_url":"https://api.github.com/users/bmarty/followers","following_url":"https://api.github.com/users/bmarty/following{/other_user}","gists_url":"https://api.github.com/users/bmarty/gists{/gist_id}","starred_url":"https://api.github.com/users/bmarty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bmarty/subscriptions","organizations_url":"https://api.github.com/users/bmarty/orgs","repos_url":"https://api.github.com/users/bmarty/repos","events_url":"https://api.github.com/users/bmarty/events{/privacy}","received_events_url":"https://api.github.com/users/bmarty/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"bmarty","id":3940906,"node_id":"MDQ6VXNlcjM5NDA5MDY=","avatar_url":"https://avatars.githubusercontent.com/u/3940906?v=4","gravatar_id":"","url":"https://api.github.com/users/bmarty","html_url":"https://github.com/bmarty","followers_url":"https://api.github.com/users/bmarty/followers","following_url":"https://api.github.com/users/bmarty/following{/other_user}","gists_url":"https://api.github.com/users/bmarty/gists{/gist_id}","starred_url":"https://api.github.com/users/bmarty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bmarty/subscriptions","organizations_url":"https://api.github.com/users/bmarty/orgs","repos_url":"https://api.github.com/users/bmarty/repos","events_url":"https://api.github.com/users/bmarty/events{/privacy}","received_events_url":"https://api.github.com/users/bmarty/received_events","type":"User","site_admin":false},"assignees":[{"login":"bmarty","id":3940906,"node_id":"MDQ6VXNlcjM5NDA5MDY=","avatar_url":"https://avatars.githubusercontent.com/u/3940906?v=4","gravatar_id":"","url":"https://api.github.com/users/bmarty","html_url":"https://github.com/bmarty","followers_url":"https://api.github.com/users/bmarty/followers","following_url":"https://api.github.com/users/bmarty/following{/other_user}","gists_url":"https://api.github.com/users/bmarty/gists{/gist_id}","starred_url":"https://api.github.com/users/bmarty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bmarty/subscriptions","organizations_url":"https://api.github.com/users/bmarty/orgs","repos_url":"https://api.github.com/users/bmarty/repos","events_url":"https://api.github.com/users/bmarty/events{/privacy}","received_events_url":"https://api.github.com/users/bmarty/received_events","type":"User","site_admin":false}],"milestone":null,"comments":1,"created_at":"2024-03-28T10:17:17Z","updated_at":"2024-03-28T13:59:51Z","closed_at":null,"author_association":"MEMBER","active_lock_reason":null,"body":"When changing the notification settings the screen is not refreshed after a successful change. User has to leave the screen and open it again to see the refreshed data.\r\n\r\n\r\n","reactions":{"url":"https://api.github.com/repos/element-hq/element-x-android/issues/2616/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2616/timeline","performed_via_github_app":null,"state_reason":null},"comment":{"url":"https://api.github.com/repos/element-hq/element-x-android/issues/comments/2025256371","html_url":"https://github.com/element-hq/element-x-android/issues/2616#issuecomment-2025256371","issue_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2616","id":2025256371,"node_id":"IC_kwDOIJNDks54tvWz","user":{"login":"bmarty","id":3940906,"node_id":"MDQ6VXNlcjM5NDA5MDY=","avatar_url":"https://avatars.githubusercontent.com/u/3940906?v=4","gravatar_id":"","url":"https://api.github.com/users/bmarty","html_url":"https://github.com/bmarty","followers_url":"https://api.github.com/users/bmarty/followers","following_url":"https://api.github.com/users/bmarty/following{/other_user}","gists_url":"https://api.github.com/users/bmarty/gists{/gist_id}","starred_url":"https://api.github.com/users/bmarty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bmarty/subscriptions","organizations_url":"https://api.github.com/users/bmarty/orgs","repos_url":"https://api.github.com/users/bmarty/repos","events_url":"https://api.github.com/users/bmarty/events{/privacy}","received_events_url":"https://api.github.com/users/bmarty/received_events","type":"User","site_admin":false},"created_at":"2024-03-28T13:59:50Z","updated_at":"2024-03-28T13:59:50Z","author_association":"MEMBER","body":"After investigation, the expected callback `NotificationSettingsDelegate.settingsDidChange()` is not invoked by the SDK, so the screen is not refreshed after a change. @stefanceriu confirmed than the same problem exists on the iOS app.\r\n\r\nWe could workaround the problem application side, but better to fix the issue in the SDK. @ganfra is having a look on the SDK codebase.","reactions":{"url":"https://api.github.com/repos/element-hq/element-x-android/issues/comments/2025256371/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"performed_via_github_app":null}},"public":true,"created_at":"2024-03-28T13:59:51Z","org":{"id":13446337,"login":"element-hq","gravatar_id":"","url":"https://api.github.com/orgs/element-hq","avatar_url":"https://avatars.githubusercontent.com/u/13446337?"}},{"id":"36968636031","type":"PullRequestReviewCommentEvent","actor":{"id":3940906,"login":"bmarty","display_login":"bmarty","gravatar_id":"","url":"https://api.github.com/users/bmarty","avatar_url":"https://avatars.githubusercontent.com/u/3940906?"},"repo":{"id":151282063,"name":"element-hq/element-android","url":"https://api.github.com/repos/element-hq/element-android"},"payload":{"action":"created","comment":{"url":"https://api.github.com/repos/element-hq/element-android/pulls/comments/1543015047","pull_request_review_id":1966282193,"id":1543015047,"node_id":"PRRC_kwDOCQRhj85b-IqH","diff_hunk":"@@ -16,149 +16,278 @@\n \n package im.vector.app.features.analytics\n \n-import im.vector.app.features.analytics.plan.Error\n-import im.vector.lib.core.utils.compat.removeIfCompat\n-import im.vector.lib.core.utils.flow.tickerFlow\n+import im.vector.app.ActiveSessionDataSource\n import im.vector.lib.core.utils.timer.Clock\n+import kotlinx.coroutines.CancellationException\n import kotlinx.coroutines.CoroutineScope\n import kotlinx.coroutines.Dispatchers\n+import kotlinx.coroutines.Job\n import kotlinx.coroutines.SupervisorJob\n-import kotlinx.coroutines.cancel\n+import kotlinx.coroutines.delay\n+import kotlinx.coroutines.flow.distinctUntilChanged\n import kotlinx.coroutines.flow.launchIn\n import kotlinx.coroutines.flow.onEach\n import kotlinx.coroutines.launch\n+import kotlinx.coroutines.sync.Mutex\n+import kotlinx.coroutines.sync.withLock\n+import org.matrix.android.sdk.api.MatrixPatterns\n+import org.matrix.android.sdk.api.session.LiveEventListener\n+import org.matrix.android.sdk.api.session.Session\n import org.matrix.android.sdk.api.session.crypto.MXCryptoError\n+import org.matrix.android.sdk.api.session.events.model.Event\n import org.matrix.android.sdk.api.session.room.timeline.TimelineEvent\n+import org.matrix.android.sdk.api.util.JsonDict\n+import timber.log.Timber\n import javax.inject.Inject\n import javax.inject.Singleton\n \n-private data class DecryptionFailure(\n- val timeStamp: Long,\n- val roomId: String,\n- val failedEventId: String,\n- val error: MXCryptoError.ErrorType\n-)\n-private typealias DetailedErrorName = Pair\n-\n+// If we can decrypt in less than 4s, we don't report\n private const val GRACE_PERIOD_MILLIS = 4_000\n-private const val CHECK_INTERVAL = 2_000L\n+\n+// A tick to check when a decryption failure as exceeded the max time\n+private const val CHECK_INTERVAL = 10_000L\n+\n+// If we can't decrypt after 60s, we report failures\n+private const val MAX_WAIT_MILLIS = 60_000\n \n /**\n- * Tracks decryption errors that are visible to the user.\n+ * Tracks decryption errors.\n * When an error is reported it is not directly tracked via analytics, there is a grace period\n * that gives the app a few seconds to get the key to decrypt.\n+ *\n+ * Decrypted under 4s => No report\n+ * Decrypted before MAX_WAIT_MILLIS => Report with time to decrypt\n+ * Not Decrypted after MAX_WAIT_MILLIS => Report with time = -1\n */\n @Singleton\n class DecryptionFailureTracker @Inject constructor(\n private val analyticsTracker: AnalyticsTracker,\n+ private val sessionDataSource: ActiveSessionDataSource,\n private val clock: Clock\n-) {\n+) : Session.Listener, LiveEventListener {\n+\n+ // The active session (set by the sessionDataSource)\n+ private var activeSession: Session? = null\n+\n+ // The coroutine scope to use for the tracker\n+ private var scope: CoroutineScope = CoroutineScope(Dispatchers.IO + SupervisorJob())\n+\n+ // Map of eventId to tracked failure\n+ // Only accessed on a `post` call, ensuring sequential access\n+ private val trackedEventsMap = mutableMapOf()\n \n- private val scope: CoroutineScope = CoroutineScope(SupervisorJob())\n- private val failures = mutableListOf()\n+ // List of eventId that have been reported, to avoid double reporting\n private val alreadyReported = mutableListOf()\n \n- var currentModule: Error.CryptoModule? = null\n+ // Mutex to ensure sequential access to internal state\n+ private val mutex = Mutex()\n \n- init {\n- start()\n- }\n+ // Used to unsubscribe from the active session data source\n+ private lateinit var activeSessionSourceDisposable: Job\n \n- fun start() {\n- tickerFlow(scope, CHECK_INTERVAL)\n- .onEach {\n- checkFailures()\n- }.launchIn(scope)\n+ // The ticker job, to report permanent UTD (not decrypted after MAX_WAIT_MILLIS)\n+ private var currentTicker: Job? = null\n+\n+ /**\n+ * Start the tracker.\n+ *\n+ * @param scope The coroutine scope to use, exposed for tests. If null, it will use the default one\n+ */\n+ fun start(scope: CoroutineScope? = null) {\n+ if (scope != null) {\n+ this.scope = scope\n+ }\n+ observeActiveSession()\n }\n \n fun stop() {\n- scope.cancel()\n+ Timber.v(\"Stop DecryptionFailureTracker\")\n+ activeSessionSourceDisposable.cancel(CancellationException(\"Closing DecryptionFailureTracker\"))\n+\n+ activeSession?.removeListener(this)\n+ activeSession?.eventStreamService()?.removeEventStreamListener(this)\n+ activeSession = null\n }\n \n- fun e2eEventDisplayedInTimeline(event: TimelineEvent) {\n- scope.launch(Dispatchers.Default) {\n- val mCryptoError = event.root.mCryptoError\n- if (mCryptoError != null) {\n- addDecryptionFailure(DecryptionFailure(clock.epochMillis(), event.roomId, event.eventId, mCryptoError))\n- } else {\n- removeFailureForEventId(event.eventId)\n+ private fun post(block: suspend () -> Unit) {\n+ scope.launch {\n+ mutex.withLock {\n+ block()\n }\n }\n }\n \n- /**\n- * Can be called when the timeline is disposed in order\n- * to grace those events as they are not anymore displayed on screen.\n- * */\n- fun onTimeLineDisposed(roomId: String) {\n- scope.launch(Dispatchers.Default) {\n- synchronized(failures) {\n- failures.removeIfCompat { it.roomId == roomId }\n+ private suspend fun rescheduleTicker() {\n+ currentTicker = scope.launch {\n+ Timber.v(\"Reschedule ticker\")\n+ delay(CHECK_INTERVAL)\n+ post {\n+ checkFailures()\n+ currentTicker = null\n+ if (trackedEventsMap.isNotEmpty()) {\n+ // Reschedule\n+ rescheduleTicker()\n+ }\n }\n }\n }\n+ private fun observeActiveSession() {\n+ activeSessionSourceDisposable = sessionDataSource.stream()\n+ .distinctUntilChanged()\n+ .onEach {\n+ Timber.v(\"Active session changed ${it.getOrNull()?.myUserId}\")\n+ it.orNull()?.let { session ->\n+ post {\n+ onSessionActive(session)\n+ }\n+ }\n+ }.launchIn(scope)\n+ }\n+\n+ private fun onSessionActive(session: Session) {\n+ Timber.v(\"onSessionActive ${session.myUserId} previous: ${activeSession?.myUserId}\")\n+ val sessionId = session.sessionId\n+ if (sessionId == activeSession?.sessionId) {\n+ return\n+ }\n+ this.activeSession?.let { previousSession ->\n+ previousSession.removeListener(this)\n+ previousSession.eventStreamService().removeEventStreamListener(this)\n+ // Do we want to clear the tracked events?\n+ }\n+ this.activeSession = session\n+ session.addListener(this)\n+ session.eventStreamService().addEventStreamListener(this)\n+ }\n+\n+ override fun onSessionStopped(session: Session) {\n+ post {\n+ this.activeSession = null\n+ session.addListener(this)\n+ session.eventStreamService().addEventStreamListener(this)\n+ }\n+ }\n \n- private fun addDecryptionFailure(failure: DecryptionFailure) {\n- // de duplicate\n- synchronized(failures) {\n- if (failures.none { it.failedEventId == failure.failedEventId }) {\n- failures.add(failure)\n+ // LiveEventListener callbacks\n+\n+ override fun onEventDecrypted(event: Event, clearEvent: JsonDict) {\n+ Timber.v(\"Event decrypted ${event.eventId}\")\n+ event.eventId?.let {\n+ post {\n+ handleEventDecrypted(it)\n }\n }\n }\n \n- private fun removeFailureForEventId(eventId: String) {\n- synchronized(failures) {\n- failures.removeIfCompat { it.failedEventId == eventId }\n+ override fun onEventDecryptionError(event: Event, cryptoError: MXCryptoError) {\n+ Timber.v(\"Decryption error for event ${event.eventId} with error $cryptoError\")\n+ val session = activeSession ?: return\n+ // track the event\n+ post {\n+ trackEvent(session, event, cryptoError)\n }\n }\n \n- private fun checkFailures() {\n- val now = clock.epochMillis()\n- val aggregatedErrors: Map>\n- synchronized(failures) {\n- val toReport = mutableListOf()\n- failures.removeAll { failure ->\n- (now - failure.timeStamp > GRACE_PERIOD_MILLIS).also {\n- if (it) {\n- toReport.add(failure)\n- }\n- }\n+ override fun onLiveToDeviceEvent(event: Event) {}\n+ override fun onLiveEvent(roomId: String, event: Event) {}\n+ override fun onPaginatedEvent(roomId: String, event: Event) {}\n+\n+ private suspend fun trackEvent(session: Session, event: Event, error: MXCryptoError) {\n+ Timber.v(\"Track event ${event.eventId}/${session.myUserId} time: ${clock.epochMillis()}\")\n+ val eventId = event.eventId\n+ val roomId = event.roomId\n+ if (eventId == null || roomId == null) return\n+ if (trackedEventsMap.containsKey(eventId)) {\n+ // already tracked\n+ return\n+ }\n+ val isOwnIdentityTrusted = session.cryptoService().crossSigningService().isCrossSigningVerified()\n+ val userHS = MatrixPatterns.extractServerNameFromId(session.myUserId)\n+ val messageSenderHs = event.senderId?.let { MatrixPatterns.extractServerNameFromId(it) }\n+ Timber.v(\"senderHs: $messageSenderHs, userHS: $userHS, isOwnIdentityTrusted: $isOwnIdentityTrusted\")\n+\n+ val deviceCreationTs = session.cryptoService().getMyCryptoDevice().firstTimeSeenLocalTs\n+ Timber.v(\"deviceCreationTs: $deviceCreationTs\")\n+ val eventRelativeAge = deviceCreationTs?.let { deviceTs ->\n+ event.originServerTs?.let {\n+ it - deviceTs\n }\n+ }\n+ val failure = DecryptionFailure(\n+ clock.epochMillis(),\n+ roomId,\n+ eventId,\n+ error,\n+ wasVisibleOnScreen = false,\n+ ownIdentityTrustedAtTimeOfDecryptionFailure = isOwnIdentityTrusted,\n+ isMatrixDotOrg = userHS == \"matrix.org\",\n+ isFederated = messageSenderHs?.let { it != userHS },\n+ eventLocalAgeAtDecryptionFailure = eventRelativeAge\n+ )\n+ Timber.v(\"Tracked failure: ${failure}\")\n+ trackedEventsMap[eventId] = failure\n \n- aggregatedErrors = toReport\n- .groupBy { it.error.toAnalyticsErrorName() }\n- .mapValues {\n- it.value.map { it.failedEventId }\n- }\n+ if (currentTicker == null) {\n+ rescheduleTicker()\n }\n+ }\n \n- aggregatedErrors.forEach { aggregation ->\n- // there is now way to send the total/sum in posthog, so iterating\n- aggregation.value\n- // for now we ignore events already reported even if displayed again?\n- .filter { alreadyReported.contains(it).not() }\n- .forEach { failedEventId ->\n- analyticsTracker.capture(Error(\n- context = aggregation.key.first,\n- domain = Error.Domain.E2EE,\n- name = aggregation.key.second,\n- cryptoModule = currentModule\n- ))\n- alreadyReported.add(failedEventId)\n- }\n+ private fun handleEventDecrypted(eventId: String) {\n+ Timber.v(\"Handle event decrypted $eventId time: ${clock.epochMillis()}\")\n+ // Only consider if it was tracked as a failure\n+ val trackedFailure = trackedEventsMap[eventId] ?: return\n+\n+ // Grace event if decrypted under 4s\n+ val now = clock.epochMillis()\n+ val timeToDecrypt = now - trackedFailure.timeStamp\n+ Timber.v(\"Handle event decrypted timeToDecrypt: $timeToDecrypt for event $eventId\")\n+ if (timeToDecrypt < GRACE_PERIOD_MILLIS) {\n+ Timber.v(\"Grace event $eventId\")\n+ trackedEventsMap.remove(eventId)\n+ return\n+ }\n+ // We still want to report but with the time it took\n+ if (trackedFailure.timeToDecryptMillis == null) {\n+ val decryptionFailure = trackedFailure.copy(timeToDecryptMillis = timeToDecrypt)\n+ trackedEventsMap[eventId] = decryptionFailure\n+ reportFailure(decryptionFailure)\n }\n }\n \n- private fun MXCryptoError.ErrorType.toAnalyticsErrorName(): DetailedErrorName {\n- val detailed = \"$name | mxc_crypto_error_type\"\n- val errorName = when (this) {\n- MXCryptoError.ErrorType.UNKNOWN_INBOUND_SESSION_ID,\n- MXCryptoError.ErrorType.KEYS_WITHHELD -> Error.Name.OlmKeysNotSentError\n- MXCryptoError.ErrorType.OLM -> Error.Name.OlmUnspecifiedError\n- MXCryptoError.ErrorType.UNKNOWN_MESSAGE_INDEX -> Error.Name.OlmIndexError\n- else -> Error.Name.UnknownError\n+ fun utdDisplayedInTimeline(event: TimelineEvent) {\n+ post {\n+ // should be tracked (unless already reported)\n+ val eventId = event.root.eventId ?: return@post\n+ val trackedEvent = trackedEventsMap[eventId] ?: return@post\n+\n+ trackedEventsMap[eventId] = trackedEvent.copy(wasVisibleOnScreen = true)\n+ }\n+ }\n+\n+ // This will mutate the trackedEventsMap, so don't call it while iterating on it.\n+ private fun reportFailure(decryptionFailure: DecryptionFailure) {\n+ Timber.v(\"Report failure for event ${decryptionFailure.failedEventId}\")\n+ val error = decryptionFailure.toAnalyticsEvent()\n+\n+ analyticsTracker.capture(error)\n+\n+ // now remove from tracked\n+ trackedEventsMap.remove(decryptionFailure.failedEventId)\n+ // mark as already reported\n+ alreadyReported.add(decryptionFailure.failedEventId)","path":"vector/src/main/java/im/vector/app/features/analytics/DecryptionFailureTracker.kt","commit_id":"0f3f2b164eb035353b1c72ec51136bc3414ba320","original_commit_id":"0f3f2b164eb035353b1c72ec51136bc3414ba320","user":{"login":"bmarty","id":3940906,"node_id":"MDQ6VXNlcjM5NDA5MDY=","avatar_url":"https://avatars.githubusercontent.com/u/3940906?v=4","gravatar_id":"","url":"https://api.github.com/users/bmarty","html_url":"https://github.com/bmarty","followers_url":"https://api.github.com/users/bmarty/followers","following_url":"https://api.github.com/users/bmarty/following{/other_user}","gists_url":"https://api.github.com/users/bmarty/gists{/gist_id}","starred_url":"https://api.github.com/users/bmarty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bmarty/subscriptions","organizations_url":"https://api.github.com/users/bmarty/orgs","repos_url":"https://api.github.com/users/bmarty/repos","events_url":"https://api.github.com/users/bmarty/events{/privacy}","received_events_url":"https://api.github.com/users/bmarty/received_events","type":"User","site_admin":false},"body":"`alreadyReported` does not seem to be read. \r\nIt was used to filter the Events previously (line 140 in previous version)","created_at":"2024-03-28T13:48:39Z","updated_at":"2024-03-28T13:52:57Z","html_url":"https://github.com/element-hq/element-android/pull/8780#discussion_r1543015047","pull_request_url":"https://api.github.com/repos/element-hq/element-android/pulls/8780","author_association":"MEMBER","_links":{"self":{"href":"https://api.github.com/repos/element-hq/element-android/pulls/comments/1543015047"},"html":{"href":"https://github.com/element-hq/element-android/pull/8780#discussion_r1543015047"},"pull_request":{"href":"https://api.github.com/repos/element-hq/element-android/pulls/8780"}},"reactions":{"url":"https://api.github.com/repos/element-hq/element-android/pulls/comments/1543015047/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"start_line":null,"original_start_line":null,"start_side":null,"line":277,"original_line":277,"side":"RIGHT","original_position":350,"position":350,"subject_type":"line"},"pull_request":{"url":"https://api.github.com/repos/element-hq/element-android/pulls/8780","id":1771867926,"node_id":"PR_kwDOCQRhj85pnI8W","html_url":"https://github.com/element-hq/element-android/pull/8780","diff_url":"https://github.com/element-hq/element-android/pull/8780.diff","patch_url":"https://github.com/element-hq/element-android/pull/8780.patch","issue_url":"https://api.github.com/repos/element-hq/element-android/issues/8780","number":8780,"state":"open","locked":false,"title":"UTD posthog reporting add more properties to captured event","user":{"login":"BillCarsonFr","id":9841565,"node_id":"MDQ6VXNlcjk4NDE1NjU=","avatar_url":"https://avatars.githubusercontent.com/u/9841565?v=4","gravatar_id":"","url":"https://api.github.com/users/BillCarsonFr","html_url":"https://github.com/BillCarsonFr","followers_url":"https://api.github.com/users/BillCarsonFr/followers","following_url":"https://api.github.com/users/BillCarsonFr/following{/other_user}","gists_url":"https://api.github.com/users/BillCarsonFr/gists{/gist_id}","starred_url":"https://api.github.com/users/BillCarsonFr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/BillCarsonFr/subscriptions","organizations_url":"https://api.github.com/users/BillCarsonFr/orgs","repos_url":"https://api.github.com/users/BillCarsonFr/repos","events_url":"https://api.github.com/users/BillCarsonFr/events{/privacy}","received_events_url":"https://api.github.com/users/BillCarsonFr/received_events","type":"User","site_admin":false},"body":"\r\n \r\nFixes https://github.com/element-hq/element-android/issues/8779\r\n\r\nRefactored the DecryptionFailureTracker so that it can report late decryption and permanent decryptions errors.\r\n\r\n\r\n## Type of change\r\n\r\n- [ ] Feature\r\n- [ ] Bugfix\r\n- [ ] Technical\r\n- [ ] Other :\r\n\r\n## Content\r\n\r\n\r\n\r\n## Motivation and context\r\n\r\n\r\n\r\n## Screenshots / GIFs\r\n\r\n\r\n\r\n\r\n\r\n## Tests\r\n\r\n\r\n\r\n- Step 1\r\n- Step 2\r\n- Step ...\r\n\r\n## Tested devices\r\n\r\n- [ ] Physical\r\n- [ ] Emulator\r\n- OS version(s):\r\n\r\n## Checklist\r\n\r\n\r\n\r\n- [ ] Changes has been tested on an Android device or Android emulator with API 21\r\n- [ ] UI change has been tested on both light and dark themes\r\n- [ ] Accessibility has been taken into account. See https://github.com/element-hq/element-android/blob/develop/CONTRIBUTING.md#accessibility\r\n- [ ] Pull request is based on the develop branch\r\n- [ ] Pull request includes a new file under ./changelog.d. See https://github.com/element-hq/element-android/blob/develop/CONTRIBUTING.md#changelog\r\n- [ ] Pull request includes screenshots or videos if containing UI changes\r\n- [ ] Pull request includes a [sign off](https://matrix-org.github.io/synapse/latest/development/contributing_guide.html#sign-off)\r\n- [ ] You've made a self review of your PR\r\n- [ ] If you have modified the screen flow, or added new screens to the application, you have updated the test [UiAllScreensSanityTest.allScreensTest()](https://github.com/element-hq/element-android/blob/main/vector/src/androidTest/java/im/vector/app/ui/UiAllScreensSanityTest.kt#L73)\r\n","created_at":"2024-03-14T10:34:19Z","updated_at":"2024-03-28T13:52:57Z","closed_at":null,"merged_at":null,"merge_commit_sha":"ef2bf1349aad9ca493381ed79060e7960a10bc06","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"draft":false,"commits_url":"https://api.github.com/repos/element-hq/element-android/pulls/8780/commits","review_comments_url":"https://api.github.com/repos/element-hq/element-android/pulls/8780/comments","review_comment_url":"https://api.github.com/repos/element-hq/element-android/pulls/comments{/number}","comments_url":"https://api.github.com/repos/element-hq/element-android/issues/8780/comments","statuses_url":"https://api.github.com/repos/element-hq/element-android/statuses/0f3f2b164eb035353b1c72ec51136bc3414ba320","head":{"label":"element-hq:valere/utd_posthog_more_properties","ref":"valere/utd_posthog_more_properties","sha":"0f3f2b164eb035353b1c72ec51136bc3414ba320","user":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"repo":{"id":151282063,"node_id":"MDEwOlJlcG9zaXRvcnkxNTEyODIwNjM=","name":"element-android","full_name":"element-hq/element-android","private":false,"owner":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/element-hq/element-android","description":"A glossy Matrix collaboration client for Android.","fork":false,"url":"https://api.github.com/repos/element-hq/element-android","forks_url":"https://api.github.com/repos/element-hq/element-android/forks","keys_url":"https://api.github.com/repos/element-hq/element-android/keys{/key_id}","collaborators_url":"https://api.github.com/repos/element-hq/element-android/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/element-hq/element-android/teams","hooks_url":"https://api.github.com/repos/element-hq/element-android/hooks","issue_events_url":"https://api.github.com/repos/element-hq/element-android/issues/events{/number}","events_url":"https://api.github.com/repos/element-hq/element-android/events","assignees_url":"https://api.github.com/repos/element-hq/element-android/assignees{/user}","branches_url":"https://api.github.com/repos/element-hq/element-android/branches{/branch}","tags_url":"https://api.github.com/repos/element-hq/element-android/tags","blobs_url":"https://api.github.com/repos/element-hq/element-android/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/element-hq/element-android/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/element-hq/element-android/git/refs{/sha}","trees_url":"https://api.github.com/repos/element-hq/element-android/git/trees{/sha}","statuses_url":"https://api.github.com/repos/element-hq/element-android/statuses/{sha}","languages_url":"https://api.github.com/repos/element-hq/element-android/languages","stargazers_url":"https://api.github.com/repos/element-hq/element-android/stargazers","contributors_url":"https://api.github.com/repos/element-hq/element-android/contributors","subscribers_url":"https://api.github.com/repos/element-hq/element-android/subscribers","subscription_url":"https://api.github.com/repos/element-hq/element-android/subscription","commits_url":"https://api.github.com/repos/element-hq/element-android/commits{/sha}","git_commits_url":"https://api.github.com/repos/element-hq/element-android/git/commits{/sha}","comments_url":"https://api.github.com/repos/element-hq/element-android/comments{/number}","issue_comment_url":"https://api.github.com/repos/element-hq/element-android/issues/comments{/number}","contents_url":"https://api.github.com/repos/element-hq/element-android/contents/{+path}","compare_url":"https://api.github.com/repos/element-hq/element-android/compare/{base}...{head}","merges_url":"https://api.github.com/repos/element-hq/element-android/merges","archive_url":"https://api.github.com/repos/element-hq/element-android/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/element-hq/element-android/downloads","issues_url":"https://api.github.com/repos/element-hq/element-android/issues{/number}","pulls_url":"https://api.github.com/repos/element-hq/element-android/pulls{/number}","milestones_url":"https://api.github.com/repos/element-hq/element-android/milestones{/number}","notifications_url":"https://api.github.com/repos/element-hq/element-android/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/element-hq/element-android/labels{/name}","releases_url":"https://api.github.com/repos/element-hq/element-android/releases{/id}","deployments_url":"https://api.github.com/repos/element-hq/element-android/deployments","created_at":"2018-10-02T15:56:15Z","updated_at":"2024-03-27T09:46:32Z","pushed_at":"2024-03-27T23:44:14Z","git_url":"git://github.com/element-hq/element-android.git","ssh_url":"git@github.com:element-hq/element-android.git","clone_url":"https://github.com/element-hq/element-android.git","svn_url":"https://github.com/element-hq/element-android","homepage":"https://element.io/","size":214477,"stargazers_count":3186,"watchers_count":3186,"language":"Kotlin","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"has_discussions":false,"forks_count":661,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":2088,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":["element-android","hacktoberfest","matrix"],"visibility":"public","forks":661,"open_issues":2088,"watchers":3186,"default_branch":"develop"}},"base":{"label":"element-hq:develop","ref":"develop","sha":"def2a8a83351c06cb65fdbd4d483ac811329b023","user":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"repo":{"id":151282063,"node_id":"MDEwOlJlcG9zaXRvcnkxNTEyODIwNjM=","name":"element-android","full_name":"element-hq/element-android","private":false,"owner":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/element-hq/element-android","description":"A glossy Matrix collaboration client for Android.","fork":false,"url":"https://api.github.com/repos/element-hq/element-android","forks_url":"https://api.github.com/repos/element-hq/element-android/forks","keys_url":"https://api.github.com/repos/element-hq/element-android/keys{/key_id}","collaborators_url":"https://api.github.com/repos/element-hq/element-android/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/element-hq/element-android/teams","hooks_url":"https://api.github.com/repos/element-hq/element-android/hooks","issue_events_url":"https://api.github.com/repos/element-hq/element-android/issues/events{/number}","events_url":"https://api.github.com/repos/element-hq/element-android/events","assignees_url":"https://api.github.com/repos/element-hq/element-android/assignees{/user}","branches_url":"https://api.github.com/repos/element-hq/element-android/branches{/branch}","tags_url":"https://api.github.com/repos/element-hq/element-android/tags","blobs_url":"https://api.github.com/repos/element-hq/element-android/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/element-hq/element-android/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/element-hq/element-android/git/refs{/sha}","trees_url":"https://api.github.com/repos/element-hq/element-android/git/trees{/sha}","statuses_url":"https://api.github.com/repos/element-hq/element-android/statuses/{sha}","languages_url":"https://api.github.com/repos/element-hq/element-android/languages","stargazers_url":"https://api.github.com/repos/element-hq/element-android/stargazers","contributors_url":"https://api.github.com/repos/element-hq/element-android/contributors","subscribers_url":"https://api.github.com/repos/element-hq/element-android/subscribers","subscription_url":"https://api.github.com/repos/element-hq/element-android/subscription","commits_url":"https://api.github.com/repos/element-hq/element-android/commits{/sha}","git_commits_url":"https://api.github.com/repos/element-hq/element-android/git/commits{/sha}","comments_url":"https://api.github.com/repos/element-hq/element-android/comments{/number}","issue_comment_url":"https://api.github.com/repos/element-hq/element-android/issues/comments{/number}","contents_url":"https://api.github.com/repos/element-hq/element-android/contents/{+path}","compare_url":"https://api.github.com/repos/element-hq/element-android/compare/{base}...{head}","merges_url":"https://api.github.com/repos/element-hq/element-android/merges","archive_url":"https://api.github.com/repos/element-hq/element-android/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/element-hq/element-android/downloads","issues_url":"https://api.github.com/repos/element-hq/element-android/issues{/number}","pulls_url":"https://api.github.com/repos/element-hq/element-android/pulls{/number}","milestones_url":"https://api.github.com/repos/element-hq/element-android/milestones{/number}","notifications_url":"https://api.github.com/repos/element-hq/element-android/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/element-hq/element-android/labels{/name}","releases_url":"https://api.github.com/repos/element-hq/element-android/releases{/id}","deployments_url":"https://api.github.com/repos/element-hq/element-android/deployments","created_at":"2018-10-02T15:56:15Z","updated_at":"2024-03-27T09:46:32Z","pushed_at":"2024-03-27T23:44:14Z","git_url":"git://github.com/element-hq/element-android.git","ssh_url":"git@github.com:element-hq/element-android.git","clone_url":"https://github.com/element-hq/element-android.git","svn_url":"https://github.com/element-hq/element-android","homepage":"https://element.io/","size":214477,"stargazers_count":3186,"watchers_count":3186,"language":"Kotlin","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"has_discussions":false,"forks_count":661,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":2088,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":["element-android","hacktoberfest","matrix"],"visibility":"public","forks":661,"open_issues":2088,"watchers":3186,"default_branch":"develop"}},"_links":{"self":{"href":"https://api.github.com/repos/element-hq/element-android/pulls/8780"},"html":{"href":"https://github.com/element-hq/element-android/pull/8780"},"issue":{"href":"https://api.github.com/repos/element-hq/element-android/issues/8780"},"comments":{"href":"https://api.github.com/repos/element-hq/element-android/issues/8780/comments"},"review_comments":{"href":"https://api.github.com/repos/element-hq/element-android/pulls/8780/comments"},"review_comment":{"href":"https://api.github.com/repos/element-hq/element-android/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/element-hq/element-android/pulls/8780/commits"},"statuses":{"href":"https://api.github.com/repos/element-hq/element-android/statuses/0f3f2b164eb035353b1c72ec51136bc3414ba320"}},"author_association":"MEMBER","auto_merge":null,"active_lock_reason":null}},"public":true,"created_at":"2024-03-28T13:48:39Z","org":{"id":13446337,"login":"element-hq","gravatar_id":"","url":"https://api.github.com/orgs/element-hq","avatar_url":"https://avatars.githubusercontent.com/u/13446337?"}},{"id":"36968635928","type":"PullRequestReviewEvent","actor":{"id":3940906,"login":"bmarty","display_login":"bmarty","gravatar_id":"","url":"https://api.github.com/users/bmarty","avatar_url":"https://avatars.githubusercontent.com/u/3940906?"},"repo":{"id":151282063,"name":"element-hq/element-android","url":"https://api.github.com/repos/element-hq/element-android"},"payload":{"action":"created","review":{"id":1966282193,"node_id":"PRR_kwDOCQRhj851MxXR","user":{"login":"bmarty","id":3940906,"node_id":"MDQ6VXNlcjM5NDA5MDY=","avatar_url":"https://avatars.githubusercontent.com/u/3940906?v=4","gravatar_id":"","url":"https://api.github.com/users/bmarty","html_url":"https://github.com/bmarty","followers_url":"https://api.github.com/users/bmarty/followers","following_url":"https://api.github.com/users/bmarty/following{/other_user}","gists_url":"https://api.github.com/users/bmarty/gists{/gist_id}","starred_url":"https://api.github.com/users/bmarty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bmarty/subscriptions","organizations_url":"https://api.github.com/users/bmarty/orgs","repos_url":"https://api.github.com/users/bmarty/repos","events_url":"https://api.github.com/users/bmarty/events{/privacy}","received_events_url":"https://api.github.com/users/bmarty/received_events","type":"User","site_admin":false},"body":"Thanks, one problem to fix, else it's all good to me.","commit_id":"0f3f2b164eb035353b1c72ec51136bc3414ba320","submitted_at":"2024-03-28T13:52:57Z","state":"commented","html_url":"https://github.com/element-hq/element-android/pull/8780#pullrequestreview-1966282193","pull_request_url":"https://api.github.com/repos/element-hq/element-android/pulls/8780","author_association":"MEMBER","_links":{"html":{"href":"https://github.com/element-hq/element-android/pull/8780#pullrequestreview-1966282193"},"pull_request":{"href":"https://api.github.com/repos/element-hq/element-android/pulls/8780"}}},"pull_request":{"url":"https://api.github.com/repos/element-hq/element-android/pulls/8780","id":1771867926,"node_id":"PR_kwDOCQRhj85pnI8W","html_url":"https://github.com/element-hq/element-android/pull/8780","diff_url":"https://github.com/element-hq/element-android/pull/8780.diff","patch_url":"https://github.com/element-hq/element-android/pull/8780.patch","issue_url":"https://api.github.com/repos/element-hq/element-android/issues/8780","number":8780,"state":"open","locked":false,"title":"UTD posthog reporting add more properties to captured event","user":{"login":"BillCarsonFr","id":9841565,"node_id":"MDQ6VXNlcjk4NDE1NjU=","avatar_url":"https://avatars.githubusercontent.com/u/9841565?v=4","gravatar_id":"","url":"https://api.github.com/users/BillCarsonFr","html_url":"https://github.com/BillCarsonFr","followers_url":"https://api.github.com/users/BillCarsonFr/followers","following_url":"https://api.github.com/users/BillCarsonFr/following{/other_user}","gists_url":"https://api.github.com/users/BillCarsonFr/gists{/gist_id}","starred_url":"https://api.github.com/users/BillCarsonFr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/BillCarsonFr/subscriptions","organizations_url":"https://api.github.com/users/BillCarsonFr/orgs","repos_url":"https://api.github.com/users/BillCarsonFr/repos","events_url":"https://api.github.com/users/BillCarsonFr/events{/privacy}","received_events_url":"https://api.github.com/users/BillCarsonFr/received_events","type":"User","site_admin":false},"body":"\r\n \r\nFixes https://github.com/element-hq/element-android/issues/8779\r\n\r\nRefactored the DecryptionFailureTracker so that it can report late decryption and permanent decryptions errors.\r\n\r\n\r\n## Type of change\r\n\r\n- [ ] Feature\r\n- [ ] Bugfix\r\n- [ ] Technical\r\n- [ ] Other :\r\n\r\n## Content\r\n\r\n\r\n\r\n## Motivation and context\r\n\r\n\r\n\r\n## Screenshots / GIFs\r\n\r\n\r\n\r\n\r\n\r\n## Tests\r\n\r\n\r\n\r\n- Step 1\r\n- Step 2\r\n- Step ...\r\n\r\n## Tested devices\r\n\r\n- [ ] Physical\r\n- [ ] Emulator\r\n- OS version(s):\r\n\r\n## Checklist\r\n\r\n\r\n\r\n- [ ] Changes has been tested on an Android device or Android emulator with API 21\r\n- [ ] UI change has been tested on both light and dark themes\r\n- [ ] Accessibility has been taken into account. See https://github.com/element-hq/element-android/blob/develop/CONTRIBUTING.md#accessibility\r\n- [ ] Pull request is based on the develop branch\r\n- [ ] Pull request includes a new file under ./changelog.d. See https://github.com/element-hq/element-android/blob/develop/CONTRIBUTING.md#changelog\r\n- [ ] Pull request includes screenshots or videos if containing UI changes\r\n- [ ] Pull request includes a [sign off](https://matrix-org.github.io/synapse/latest/development/contributing_guide.html#sign-off)\r\n- [ ] You've made a self review of your PR\r\n- [ ] If you have modified the screen flow, or added new screens to the application, you have updated the test [UiAllScreensSanityTest.allScreensTest()](https://github.com/element-hq/element-android/blob/main/vector/src/androidTest/java/im/vector/app/ui/UiAllScreensSanityTest.kt#L73)\r\n","created_at":"2024-03-14T10:34:19Z","updated_at":"2024-03-28T13:52:57Z","closed_at":null,"merged_at":null,"merge_commit_sha":"ef2bf1349aad9ca493381ed79060e7960a10bc06","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"draft":false,"commits_url":"https://api.github.com/repos/element-hq/element-android/pulls/8780/commits","review_comments_url":"https://api.github.com/repos/element-hq/element-android/pulls/8780/comments","review_comment_url":"https://api.github.com/repos/element-hq/element-android/pulls/comments{/number}","comments_url":"https://api.github.com/repos/element-hq/element-android/issues/8780/comments","statuses_url":"https://api.github.com/repos/element-hq/element-android/statuses/0f3f2b164eb035353b1c72ec51136bc3414ba320","head":{"label":"element-hq:valere/utd_posthog_more_properties","ref":"valere/utd_posthog_more_properties","sha":"0f3f2b164eb035353b1c72ec51136bc3414ba320","user":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"repo":{"id":151282063,"node_id":"MDEwOlJlcG9zaXRvcnkxNTEyODIwNjM=","name":"element-android","full_name":"element-hq/element-android","private":false,"owner":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/element-hq/element-android","description":"A glossy Matrix collaboration client for Android.","fork":false,"url":"https://api.github.com/repos/element-hq/element-android","forks_url":"https://api.github.com/repos/element-hq/element-android/forks","keys_url":"https://api.github.com/repos/element-hq/element-android/keys{/key_id}","collaborators_url":"https://api.github.com/repos/element-hq/element-android/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/element-hq/element-android/teams","hooks_url":"https://api.github.com/repos/element-hq/element-android/hooks","issue_events_url":"https://api.github.com/repos/element-hq/element-android/issues/events{/number}","events_url":"https://api.github.com/repos/element-hq/element-android/events","assignees_url":"https://api.github.com/repos/element-hq/element-android/assignees{/user}","branches_url":"https://api.github.com/repos/element-hq/element-android/branches{/branch}","tags_url":"https://api.github.com/repos/element-hq/element-android/tags","blobs_url":"https://api.github.com/repos/element-hq/element-android/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/element-hq/element-android/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/element-hq/element-android/git/refs{/sha}","trees_url":"https://api.github.com/repos/element-hq/element-android/git/trees{/sha}","statuses_url":"https://api.github.com/repos/element-hq/element-android/statuses/{sha}","languages_url":"https://api.github.com/repos/element-hq/element-android/languages","stargazers_url":"https://api.github.com/repos/element-hq/element-android/stargazers","contributors_url":"https://api.github.com/repos/element-hq/element-android/contributors","subscribers_url":"https://api.github.com/repos/element-hq/element-android/subscribers","subscription_url":"https://api.github.com/repos/element-hq/element-android/subscription","commits_url":"https://api.github.com/repos/element-hq/element-android/commits{/sha}","git_commits_url":"https://api.github.com/repos/element-hq/element-android/git/commits{/sha}","comments_url":"https://api.github.com/repos/element-hq/element-android/comments{/number}","issue_comment_url":"https://api.github.com/repos/element-hq/element-android/issues/comments{/number}","contents_url":"https://api.github.com/repos/element-hq/element-android/contents/{+path}","compare_url":"https://api.github.com/repos/element-hq/element-android/compare/{base}...{head}","merges_url":"https://api.github.com/repos/element-hq/element-android/merges","archive_url":"https://api.github.com/repos/element-hq/element-android/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/element-hq/element-android/downloads","issues_url":"https://api.github.com/repos/element-hq/element-android/issues{/number}","pulls_url":"https://api.github.com/repos/element-hq/element-android/pulls{/number}","milestones_url":"https://api.github.com/repos/element-hq/element-android/milestones{/number}","notifications_url":"https://api.github.com/repos/element-hq/element-android/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/element-hq/element-android/labels{/name}","releases_url":"https://api.github.com/repos/element-hq/element-android/releases{/id}","deployments_url":"https://api.github.com/repos/element-hq/element-android/deployments","created_at":"2018-10-02T15:56:15Z","updated_at":"2024-03-27T09:46:32Z","pushed_at":"2024-03-27T23:44:14Z","git_url":"git://github.com/element-hq/element-android.git","ssh_url":"git@github.com:element-hq/element-android.git","clone_url":"https://github.com/element-hq/element-android.git","svn_url":"https://github.com/element-hq/element-android","homepage":"https://element.io/","size":214477,"stargazers_count":3186,"watchers_count":3186,"language":"Kotlin","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"has_discussions":false,"forks_count":661,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":2088,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":["element-android","hacktoberfest","matrix"],"visibility":"public","forks":661,"open_issues":2088,"watchers":3186,"default_branch":"develop"}},"base":{"label":"element-hq:develop","ref":"develop","sha":"def2a8a83351c06cb65fdbd4d483ac811329b023","user":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"repo":{"id":151282063,"node_id":"MDEwOlJlcG9zaXRvcnkxNTEyODIwNjM=","name":"element-android","full_name":"element-hq/element-android","private":false,"owner":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/element-hq/element-android","description":"A glossy Matrix collaboration client for Android.","fork":false,"url":"https://api.github.com/repos/element-hq/element-android","forks_url":"https://api.github.com/repos/element-hq/element-android/forks","keys_url":"https://api.github.com/repos/element-hq/element-android/keys{/key_id}","collaborators_url":"https://api.github.com/repos/element-hq/element-android/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/element-hq/element-android/teams","hooks_url":"https://api.github.com/repos/element-hq/element-android/hooks","issue_events_url":"https://api.github.com/repos/element-hq/element-android/issues/events{/number}","events_url":"https://api.github.com/repos/element-hq/element-android/events","assignees_url":"https://api.github.com/repos/element-hq/element-android/assignees{/user}","branches_url":"https://api.github.com/repos/element-hq/element-android/branches{/branch}","tags_url":"https://api.github.com/repos/element-hq/element-android/tags","blobs_url":"https://api.github.com/repos/element-hq/element-android/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/element-hq/element-android/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/element-hq/element-android/git/refs{/sha}","trees_url":"https://api.github.com/repos/element-hq/element-android/git/trees{/sha}","statuses_url":"https://api.github.com/repos/element-hq/element-android/statuses/{sha}","languages_url":"https://api.github.com/repos/element-hq/element-android/languages","stargazers_url":"https://api.github.com/repos/element-hq/element-android/stargazers","contributors_url":"https://api.github.com/repos/element-hq/element-android/contributors","subscribers_url":"https://api.github.com/repos/element-hq/element-android/subscribers","subscription_url":"https://api.github.com/repos/element-hq/element-android/subscription","commits_url":"https://api.github.com/repos/element-hq/element-android/commits{/sha}","git_commits_url":"https://api.github.com/repos/element-hq/element-android/git/commits{/sha}","comments_url":"https://api.github.com/repos/element-hq/element-android/comments{/number}","issue_comment_url":"https://api.github.com/repos/element-hq/element-android/issues/comments{/number}","contents_url":"https://api.github.com/repos/element-hq/element-android/contents/{+path}","compare_url":"https://api.github.com/repos/element-hq/element-android/compare/{base}...{head}","merges_url":"https://api.github.com/repos/element-hq/element-android/merges","archive_url":"https://api.github.com/repos/element-hq/element-android/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/element-hq/element-android/downloads","issues_url":"https://api.github.com/repos/element-hq/element-android/issues{/number}","pulls_url":"https://api.github.com/repos/element-hq/element-android/pulls{/number}","milestones_url":"https://api.github.com/repos/element-hq/element-android/milestones{/number}","notifications_url":"https://api.github.com/repos/element-hq/element-android/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/element-hq/element-android/labels{/name}","releases_url":"https://api.github.com/repos/element-hq/element-android/releases{/id}","deployments_url":"https://api.github.com/repos/element-hq/element-android/deployments","created_at":"2018-10-02T15:56:15Z","updated_at":"2024-03-27T09:46:32Z","pushed_at":"2024-03-27T23:44:14Z","git_url":"git://github.com/element-hq/element-android.git","ssh_url":"git@github.com:element-hq/element-android.git","clone_url":"https://github.com/element-hq/element-android.git","svn_url":"https://github.com/element-hq/element-android","homepage":"https://element.io/","size":214477,"stargazers_count":3186,"watchers_count":3186,"language":"Kotlin","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"has_discussions":false,"forks_count":661,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":2088,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":["element-android","hacktoberfest","matrix"],"visibility":"public","forks":661,"open_issues":2088,"watchers":3186,"default_branch":"develop"}},"_links":{"self":{"href":"https://api.github.com/repos/element-hq/element-android/pulls/8780"},"html":{"href":"https://github.com/element-hq/element-android/pull/8780"},"issue":{"href":"https://api.github.com/repos/element-hq/element-android/issues/8780"},"comments":{"href":"https://api.github.com/repos/element-hq/element-android/issues/8780/comments"},"review_comments":{"href":"https://api.github.com/repos/element-hq/element-android/pulls/8780/comments"},"review_comment":{"href":"https://api.github.com/repos/element-hq/element-android/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/element-hq/element-android/pulls/8780/commits"},"statuses":{"href":"https://api.github.com/repos/element-hq/element-android/statuses/0f3f2b164eb035353b1c72ec51136bc3414ba320"}},"author_association":"MEMBER","auto_merge":null,"active_lock_reason":null}},"public":true,"created_at":"2024-03-28T13:52:58Z","org":{"id":13446337,"login":"element-hq","gravatar_id":"","url":"https://api.github.com/orgs/element-hq","avatar_url":"https://avatars.githubusercontent.com/u/13446337?"}},{"id":"36968635850","type":"PullRequestReviewEvent","actor":{"id":3940906,"login":"bmarty","display_login":"bmarty","gravatar_id":"","url":"https://api.github.com/users/bmarty","avatar_url":"https://avatars.githubusercontent.com/u/3940906?"},"repo":{"id":151282063,"name":"element-hq/element-android","url":"https://api.github.com/repos/element-hq/element-android"},"payload":{"action":"created","review":{"id":1966282193,"node_id":"PRR_kwDOCQRhj851MxXR","user":{"login":"bmarty","id":3940906,"node_id":"MDQ6VXNlcjM5NDA5MDY=","avatar_url":"https://avatars.githubusercontent.com/u/3940906?v=4","gravatar_id":"","url":"https://api.github.com/users/bmarty","html_url":"https://github.com/bmarty","followers_url":"https://api.github.com/users/bmarty/followers","following_url":"https://api.github.com/users/bmarty/following{/other_user}","gists_url":"https://api.github.com/users/bmarty/gists{/gist_id}","starred_url":"https://api.github.com/users/bmarty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bmarty/subscriptions","organizations_url":"https://api.github.com/users/bmarty/orgs","repos_url":"https://api.github.com/users/bmarty/repos","events_url":"https://api.github.com/users/bmarty/events{/privacy}","received_events_url":"https://api.github.com/users/bmarty/received_events","type":"User","site_admin":false},"body":"Thanks, one problem to fix, else it's all good to me.","commit_id":"0f3f2b164eb035353b1c72ec51136bc3414ba320","submitted_at":"2024-03-28T13:52:57Z","state":"commented","html_url":"https://github.com/element-hq/element-android/pull/8780#pullrequestreview-1966282193","pull_request_url":"https://api.github.com/repos/element-hq/element-android/pulls/8780","author_association":"MEMBER","_links":{"html":{"href":"https://github.com/element-hq/element-android/pull/8780#pullrequestreview-1966282193"},"pull_request":{"href":"https://api.github.com/repos/element-hq/element-android/pulls/8780"}}},"pull_request":{"url":"https://api.github.com/repos/element-hq/element-android/pulls/8780","id":1771867926,"node_id":"PR_kwDOCQRhj85pnI8W","html_url":"https://github.com/element-hq/element-android/pull/8780","diff_url":"https://github.com/element-hq/element-android/pull/8780.diff","patch_url":"https://github.com/element-hq/element-android/pull/8780.patch","issue_url":"https://api.github.com/repos/element-hq/element-android/issues/8780","number":8780,"state":"open","locked":false,"title":"UTD posthog reporting add more properties to captured event","user":{"login":"BillCarsonFr","id":9841565,"node_id":"MDQ6VXNlcjk4NDE1NjU=","avatar_url":"https://avatars.githubusercontent.com/u/9841565?v=4","gravatar_id":"","url":"https://api.github.com/users/BillCarsonFr","html_url":"https://github.com/BillCarsonFr","followers_url":"https://api.github.com/users/BillCarsonFr/followers","following_url":"https://api.github.com/users/BillCarsonFr/following{/other_user}","gists_url":"https://api.github.com/users/BillCarsonFr/gists{/gist_id}","starred_url":"https://api.github.com/users/BillCarsonFr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/BillCarsonFr/subscriptions","organizations_url":"https://api.github.com/users/BillCarsonFr/orgs","repos_url":"https://api.github.com/users/BillCarsonFr/repos","events_url":"https://api.github.com/users/BillCarsonFr/events{/privacy}","received_events_url":"https://api.github.com/users/BillCarsonFr/received_events","type":"User","site_admin":false},"body":"\r\n \r\nFixes https://github.com/element-hq/element-android/issues/8779\r\n\r\nRefactored the DecryptionFailureTracker so that it can report late decryption and permanent decryptions errors.\r\n\r\n\r\n## Type of change\r\n\r\n- [ ] Feature\r\n- [ ] Bugfix\r\n- [ ] Technical\r\n- [ ] Other :\r\n\r\n## Content\r\n\r\n\r\n\r\n## Motivation and context\r\n\r\n\r\n\r\n## Screenshots / GIFs\r\n\r\n\r\n\r\n\r\n\r\n## Tests\r\n\r\n\r\n\r\n- Step 1\r\n- Step 2\r\n- Step ...\r\n\r\n## Tested devices\r\n\r\n- [ ] Physical\r\n- [ ] Emulator\r\n- OS version(s):\r\n\r\n## Checklist\r\n\r\n\r\n\r\n- [ ] Changes has been tested on an Android device or Android emulator with API 21\r\n- [ ] UI change has been tested on both light and dark themes\r\n- [ ] Accessibility has been taken into account. See https://github.com/element-hq/element-android/blob/develop/CONTRIBUTING.md#accessibility\r\n- [ ] Pull request is based on the develop branch\r\n- [ ] Pull request includes a new file under ./changelog.d. See https://github.com/element-hq/element-android/blob/develop/CONTRIBUTING.md#changelog\r\n- [ ] Pull request includes screenshots or videos if containing UI changes\r\n- [ ] Pull request includes a [sign off](https://matrix-org.github.io/synapse/latest/development/contributing_guide.html#sign-off)\r\n- [ ] You've made a self review of your PR\r\n- [ ] If you have modified the screen flow, or added new screens to the application, you have updated the test [UiAllScreensSanityTest.allScreensTest()](https://github.com/element-hq/element-android/blob/main/vector/src/androidTest/java/im/vector/app/ui/UiAllScreensSanityTest.kt#L73)\r\n","created_at":"2024-03-14T10:34:19Z","updated_at":"2024-03-28T13:52:57Z","closed_at":null,"merged_at":null,"merge_commit_sha":"ef2bf1349aad9ca493381ed79060e7960a10bc06","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"draft":false,"commits_url":"https://api.github.com/repos/element-hq/element-android/pulls/8780/commits","review_comments_url":"https://api.github.com/repos/element-hq/element-android/pulls/8780/comments","review_comment_url":"https://api.github.com/repos/element-hq/element-android/pulls/comments{/number}","comments_url":"https://api.github.com/repos/element-hq/element-android/issues/8780/comments","statuses_url":"https://api.github.com/repos/element-hq/element-android/statuses/0f3f2b164eb035353b1c72ec51136bc3414ba320","head":{"label":"element-hq:valere/utd_posthog_more_properties","ref":"valere/utd_posthog_more_properties","sha":"0f3f2b164eb035353b1c72ec51136bc3414ba320","user":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"repo":{"id":151282063,"node_id":"MDEwOlJlcG9zaXRvcnkxNTEyODIwNjM=","name":"element-android","full_name":"element-hq/element-android","private":false,"owner":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/element-hq/element-android","description":"A glossy Matrix collaboration client for Android.","fork":false,"url":"https://api.github.com/repos/element-hq/element-android","forks_url":"https://api.github.com/repos/element-hq/element-android/forks","keys_url":"https://api.github.com/repos/element-hq/element-android/keys{/key_id}","collaborators_url":"https://api.github.com/repos/element-hq/element-android/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/element-hq/element-android/teams","hooks_url":"https://api.github.com/repos/element-hq/element-android/hooks","issue_events_url":"https://api.github.com/repos/element-hq/element-android/issues/events{/number}","events_url":"https://api.github.com/repos/element-hq/element-android/events","assignees_url":"https://api.github.com/repos/element-hq/element-android/assignees{/user}","branches_url":"https://api.github.com/repos/element-hq/element-android/branches{/branch}","tags_url":"https://api.github.com/repos/element-hq/element-android/tags","blobs_url":"https://api.github.com/repos/element-hq/element-android/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/element-hq/element-android/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/element-hq/element-android/git/refs{/sha}","trees_url":"https://api.github.com/repos/element-hq/element-android/git/trees{/sha}","statuses_url":"https://api.github.com/repos/element-hq/element-android/statuses/{sha}","languages_url":"https://api.github.com/repos/element-hq/element-android/languages","stargazers_url":"https://api.github.com/repos/element-hq/element-android/stargazers","contributors_url":"https://api.github.com/repos/element-hq/element-android/contributors","subscribers_url":"https://api.github.com/repos/element-hq/element-android/subscribers","subscription_url":"https://api.github.com/repos/element-hq/element-android/subscription","commits_url":"https://api.github.com/repos/element-hq/element-android/commits{/sha}","git_commits_url":"https://api.github.com/repos/element-hq/element-android/git/commits{/sha}","comments_url":"https://api.github.com/repos/element-hq/element-android/comments{/number}","issue_comment_url":"https://api.github.com/repos/element-hq/element-android/issues/comments{/number}","contents_url":"https://api.github.com/repos/element-hq/element-android/contents/{+path}","compare_url":"https://api.github.com/repos/element-hq/element-android/compare/{base}...{head}","merges_url":"https://api.github.com/repos/element-hq/element-android/merges","archive_url":"https://api.github.com/repos/element-hq/element-android/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/element-hq/element-android/downloads","issues_url":"https://api.github.com/repos/element-hq/element-android/issues{/number}","pulls_url":"https://api.github.com/repos/element-hq/element-android/pulls{/number}","milestones_url":"https://api.github.com/repos/element-hq/element-android/milestones{/number}","notifications_url":"https://api.github.com/repos/element-hq/element-android/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/element-hq/element-android/labels{/name}","releases_url":"https://api.github.com/repos/element-hq/element-android/releases{/id}","deployments_url":"https://api.github.com/repos/element-hq/element-android/deployments","created_at":"2018-10-02T15:56:15Z","updated_at":"2024-03-27T09:46:32Z","pushed_at":"2024-03-27T23:44:14Z","git_url":"git://github.com/element-hq/element-android.git","ssh_url":"git@github.com:element-hq/element-android.git","clone_url":"https://github.com/element-hq/element-android.git","svn_url":"https://github.com/element-hq/element-android","homepage":"https://element.io/","size":214477,"stargazers_count":3186,"watchers_count":3186,"language":"Kotlin","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"has_discussions":false,"forks_count":661,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":2088,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":["element-android","hacktoberfest","matrix"],"visibility":"public","forks":661,"open_issues":2088,"watchers":3186,"default_branch":"develop"}},"base":{"label":"element-hq:develop","ref":"develop","sha":"def2a8a83351c06cb65fdbd4d483ac811329b023","user":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"repo":{"id":151282063,"node_id":"MDEwOlJlcG9zaXRvcnkxNTEyODIwNjM=","name":"element-android","full_name":"element-hq/element-android","private":false,"owner":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/element-hq/element-android","description":"A glossy Matrix collaboration client for Android.","fork":false,"url":"https://api.github.com/repos/element-hq/element-android","forks_url":"https://api.github.com/repos/element-hq/element-android/forks","keys_url":"https://api.github.com/repos/element-hq/element-android/keys{/key_id}","collaborators_url":"https://api.github.com/repos/element-hq/element-android/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/element-hq/element-android/teams","hooks_url":"https://api.github.com/repos/element-hq/element-android/hooks","issue_events_url":"https://api.github.com/repos/element-hq/element-android/issues/events{/number}","events_url":"https://api.github.com/repos/element-hq/element-android/events","assignees_url":"https://api.github.com/repos/element-hq/element-android/assignees{/user}","branches_url":"https://api.github.com/repos/element-hq/element-android/branches{/branch}","tags_url":"https://api.github.com/repos/element-hq/element-android/tags","blobs_url":"https://api.github.com/repos/element-hq/element-android/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/element-hq/element-android/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/element-hq/element-android/git/refs{/sha}","trees_url":"https://api.github.com/repos/element-hq/element-android/git/trees{/sha}","statuses_url":"https://api.github.com/repos/element-hq/element-android/statuses/{sha}","languages_url":"https://api.github.com/repos/element-hq/element-android/languages","stargazers_url":"https://api.github.com/repos/element-hq/element-android/stargazers","contributors_url":"https://api.github.com/repos/element-hq/element-android/contributors","subscribers_url":"https://api.github.com/repos/element-hq/element-android/subscribers","subscription_url":"https://api.github.com/repos/element-hq/element-android/subscription","commits_url":"https://api.github.com/repos/element-hq/element-android/commits{/sha}","git_commits_url":"https://api.github.com/repos/element-hq/element-android/git/commits{/sha}","comments_url":"https://api.github.com/repos/element-hq/element-android/comments{/number}","issue_comment_url":"https://api.github.com/repos/element-hq/element-android/issues/comments{/number}","contents_url":"https://api.github.com/repos/element-hq/element-android/contents/{+path}","compare_url":"https://api.github.com/repos/element-hq/element-android/compare/{base}...{head}","merges_url":"https://api.github.com/repos/element-hq/element-android/merges","archive_url":"https://api.github.com/repos/element-hq/element-android/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/element-hq/element-android/downloads","issues_url":"https://api.github.com/repos/element-hq/element-android/issues{/number}","pulls_url":"https://api.github.com/repos/element-hq/element-android/pulls{/number}","milestones_url":"https://api.github.com/repos/element-hq/element-android/milestones{/number}","notifications_url":"https://api.github.com/repos/element-hq/element-android/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/element-hq/element-android/labels{/name}","releases_url":"https://api.github.com/repos/element-hq/element-android/releases{/id}","deployments_url":"https://api.github.com/repos/element-hq/element-android/deployments","created_at":"2018-10-02T15:56:15Z","updated_at":"2024-03-27T09:46:32Z","pushed_at":"2024-03-27T23:44:14Z","git_url":"git://github.com/element-hq/element-android.git","ssh_url":"git@github.com:element-hq/element-android.git","clone_url":"https://github.com/element-hq/element-android.git","svn_url":"https://github.com/element-hq/element-android","homepage":"https://element.io/","size":214477,"stargazers_count":3186,"watchers_count":3186,"language":"Kotlin","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"has_discussions":false,"forks_count":661,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":2088,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":["element-android","hacktoberfest","matrix"],"visibility":"public","forks":661,"open_issues":2088,"watchers":3186,"default_branch":"develop"}},"_links":{"self":{"href":"https://api.github.com/repos/element-hq/element-android/pulls/8780"},"html":{"href":"https://github.com/element-hq/element-android/pull/8780"},"issue":{"href":"https://api.github.com/repos/element-hq/element-android/issues/8780"},"comments":{"href":"https://api.github.com/repos/element-hq/element-android/issues/8780/comments"},"review_comments":{"href":"https://api.github.com/repos/element-hq/element-android/pulls/8780/comments"},"review_comment":{"href":"https://api.github.com/repos/element-hq/element-android/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/element-hq/element-android/pulls/8780/commits"},"statuses":{"href":"https://api.github.com/repos/element-hq/element-android/statuses/0f3f2b164eb035353b1c72ec51136bc3414ba320"}},"author_association":"MEMBER","auto_merge":null,"active_lock_reason":null}},"public":true,"created_at":"2024-03-28T13:52:58Z","org":{"id":13446337,"login":"element-hq","gravatar_id":"","url":"https://api.github.com/orgs/element-hq","avatar_url":"https://avatars.githubusercontent.com/u/13446337?"}},{"id":"36964912795","type":"IssueCommentEvent","actor":{"id":3940906,"login":"bmarty","display_login":"bmarty","gravatar_id":"","url":"https://api.github.com/users/bmarty","avatar_url":"https://avatars.githubusercontent.com/u/3940906?"},"repo":{"id":546522002,"name":"element-hq/element-x-android","url":"https://api.github.com/repos/element-hq/element-x-android"},"payload":{"action":"created","issue":{"url":"https://api.github.com/repos/element-hq/element-x-android/issues/2617","repository_url":"https://api.github.com/repos/element-hq/element-x-android","labels_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2617/labels{/name}","comments_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2617/comments","events_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2617/events","html_url":"https://github.com/element-hq/element-x-android/issues/2617","id":2212891450,"node_id":"I_kwDOIJNDks6D5gs6","number":2617,"title":"Fails to show user ID with slash","user":{"login":"shadow-identity","id":1223112,"node_id":"MDQ6VXNlcjEyMjMxMTI=","avatar_url":"https://avatars.githubusercontent.com/u/1223112?v=4","gravatar_id":"","url":"https://api.github.com/users/shadow-identity","html_url":"https://github.com/shadow-identity","followers_url":"https://api.github.com/users/shadow-identity/followers","following_url":"https://api.github.com/users/shadow-identity/following{/other_user}","gists_url":"https://api.github.com/users/shadow-identity/gists{/gist_id}","starred_url":"https://api.github.com/users/shadow-identity/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shadow-identity/subscriptions","organizations_url":"https://api.github.com/users/shadow-identity/orgs","repos_url":"https://api.github.com/users/shadow-identity/repos","events_url":"https://api.github.com/users/shadow-identity/events{/privacy}","received_events_url":"https://api.github.com/users/shadow-identity/received_events","type":"User","site_admin":false},"labels":[{"id":4995801698,"node_id":"LA_kwDOIJNDks8AAAABKcXiYg","url":"https://api.github.com/repos/element-hq/element-x-android/labels/S-Minor","name":"S-Minor","color":"feb24c","default":false,"description":"Impairs non-critical functionality or suitable workarounds exist"},{"id":4995809145,"node_id":"LA_kwDOIJNDks8AAAABKcX_eQ","url":"https://api.github.com/repos/element-hq/element-x-android/labels/T-Defect","name":"T-Defect","color":"98e6ae","default":false,"description":"Something isn't working: bugs, crashes, hangs and other reported problems"},{"id":4995813854,"node_id":"LA_kwDOIJNDks8AAAABKcYR3g","url":"https://api.github.com/repos/element-hq/element-x-android/labels/O-Uncommon","name":"O-Uncommon","color":"C5DEF5","default":false,"description":"Most users are unlikely to come across this or unexpected workflow"},{"id":5176190159,"node_id":"LA_kwDOIJNDks8AAAABNIZkzw","url":"https://api.github.com/repos/element-hq/element-x-android/labels/A-Rich-Text-Editor","name":"A-Rich-Text-Editor","color":"BFD4F2","default":false,"description":""},{"id":6104413565,"node_id":"LA_kwDOIJNDks8AAAABa9n1fQ","url":"https://api.github.com/repos/element-hq/element-x-android/labels/A-Event%20Rendering","name":"A-Event Rendering","color":"BFD4F2","default":false,"description":"How events are shown in the timeline"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":3,"created_at":"2024-03-28T10:41:27Z","updated_at":"2024-03-28T11:59:54Z","closed_at":null,"author_association":"NONE","active_lock_reason":null,"body":"### Steps to reproduce\n\n1. Open a [message](https://matrix.to/#/!ppWIVhhqgxBReHcvfZ:intelfx.name/$shCfE2Qp_sk8Ylw06TWQQ5-P9_XBRRdWuhE9x80qcYI) containing user mention. User ID should have slash \"/\" in it, for example `@s/ash:matrix.org`. \r\n2. Tap on user ID\n\n### Outcome\n\n#### What did you expect?\r\nTo see the user info, like with any other user.\r\n\r\n\r\n#### What happened instead?\r\nIt opens `https://matrix.to/#/@it/sme:matrix.org`. Matrix.to fails to show the user (incorrectly reporting \"wrong URL\"). So user can not see any user info.\r\n\r\nPlease note that the slash in the user id `@it/sme:matrix.org` is not escaped.\r\nBut even escaped slash URL matrix.to returns the error.\r\n\n\n### Your phone model\n\n_No response_\n\n### Operating system version\n\nAndroid 14\n\n### Application version and app store\n\nElement X 0.4.6\n\n### Homeserver\n\n_No response_\n\n### Will you send logs?\n\nNo\n\n### Are you willing to provide a PR?\n\nNo","reactions":{"url":"https://api.github.com/repos/element-hq/element-x-android/issues/2617/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2617/timeline","performed_via_github_app":null,"state_reason":null},"comment":{"url":"https://api.github.com/repos/element-hq/element-x-android/issues/comments/2025012729","html_url":"https://github.com/element-hq/element-x-android/issues/2617#issuecomment-2025012729","issue_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2617","id":2025012729,"node_id":"IC_kwDOIJNDks54sz35","user":{"login":"bmarty","id":3940906,"node_id":"MDQ6VXNlcjM5NDA5MDY=","avatar_url":"https://avatars.githubusercontent.com/u/3940906?v=4","gravatar_id":"","url":"https://api.github.com/users/bmarty","html_url":"https://github.com/bmarty","followers_url":"https://api.github.com/users/bmarty/followers","following_url":"https://api.github.com/users/bmarty/following{/other_user}","gists_url":"https://api.github.com/users/bmarty/gists{/gist_id}","starred_url":"https://api.github.com/users/bmarty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bmarty/subscriptions","organizations_url":"https://api.github.com/users/bmarty/orgs","repos_url":"https://api.github.com/users/bmarty/repos","events_url":"https://api.github.com/users/bmarty/events{/privacy}","received_events_url":"https://api.github.com/users/bmarty/received_events","type":"User","site_admin":false},"created_at":"2024-03-28T11:59:53Z","updated_at":"2024-03-28T11:59:53Z","author_association":"MEMBER","body":"For the issue with matrix.to not working properly, you may want to report it in this project https://github.com/matrix-org/matrix.to. Thanks!","reactions":{"url":"https://api.github.com/repos/element-hq/element-x-android/issues/comments/2025012729/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"performed_via_github_app":null}},"public":true,"created_at":"2024-03-28T11:59:55Z","org":{"id":13446337,"login":"element-hq","gravatar_id":"","url":"https://api.github.com/orgs/element-hq","avatar_url":"https://avatars.githubusercontent.com/u/13446337?"}},{"id":"36964831438","type":"IssueCommentEvent","actor":{"id":3940906,"login":"bmarty","display_login":"bmarty","gravatar_id":"","url":"https://api.github.com/users/bmarty","avatar_url":"https://avatars.githubusercontent.com/u/3940906?"},"repo":{"id":546522002,"name":"element-hq/element-x-android","url":"https://api.github.com/repos/element-hq/element-x-android"},"payload":{"action":"created","issue":{"url":"https://api.github.com/repos/element-hq/element-x-android/issues/2617","repository_url":"https://api.github.com/repos/element-hq/element-x-android","labels_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2617/labels{/name}","comments_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2617/comments","events_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2617/events","html_url":"https://github.com/element-hq/element-x-android/issues/2617","id":2212891450,"node_id":"I_kwDOIJNDks6D5gs6","number":2617,"title":"Fails to show user ID with slash","user":{"login":"shadow-identity","id":1223112,"node_id":"MDQ6VXNlcjEyMjMxMTI=","avatar_url":"https://avatars.githubusercontent.com/u/1223112?v=4","gravatar_id":"","url":"https://api.github.com/users/shadow-identity","html_url":"https://github.com/shadow-identity","followers_url":"https://api.github.com/users/shadow-identity/followers","following_url":"https://api.github.com/users/shadow-identity/following{/other_user}","gists_url":"https://api.github.com/users/shadow-identity/gists{/gist_id}","starred_url":"https://api.github.com/users/shadow-identity/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shadow-identity/subscriptions","organizations_url":"https://api.github.com/users/shadow-identity/orgs","repos_url":"https://api.github.com/users/shadow-identity/repos","events_url":"https://api.github.com/users/shadow-identity/events{/privacy}","received_events_url":"https://api.github.com/users/shadow-identity/received_events","type":"User","site_admin":false},"labels":[{"id":4995809145,"node_id":"LA_kwDOIJNDks8AAAABKcX_eQ","url":"https://api.github.com/repos/element-hq/element-x-android/labels/T-Defect","name":"T-Defect","color":"98e6ae","default":false,"description":"Something isn't working: bugs, crashes, hangs and other reported problems"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":2,"created_at":"2024-03-28T10:41:27Z","updated_at":"2024-03-28T11:57:02Z","closed_at":null,"author_association":"NONE","active_lock_reason":null,"body":"### Steps to reproduce\n\n1. Open a [message](https://matrix.to/#/!ppWIVhhqgxBReHcvfZ:intelfx.name/$shCfE2Qp_sk8Ylw06TWQQ5-P9_XBRRdWuhE9x80qcYI) containing user mention. User ID should have slash \"/\" in it, for example `@s/ash:matrix.org`. \r\n2. Tap on user ID\n\n### Outcome\n\n#### What did you expect?\r\nTo see the user info, like with any other user.\r\n\r\n\r\n#### What happened instead?\r\nIt opens `https://matrix.to/#/@it/sme:matrix.org`. Matrix.to fails to show the user (incorrectly reporting \"wrong URL\"). So user can not see any user info.\r\n\r\nPlease note that the slash in the user id `@it/sme:matrix.org` is not escaped.\r\nBut even escaped slash URL matrix.to returns the error.\r\n\n\n### Your phone model\n\n_No response_\n\n### Operating system version\n\nAndroid 14\n\n### Application version and app store\n\nElement X 0.4.6\n\n### Homeserver\n\n_No response_\n\n### Will you send logs?\n\nNo\n\n### Are you willing to provide a PR?\n\nNo","reactions":{"url":"https://api.github.com/repos/element-hq/element-x-android/issues/2617/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2617/timeline","performed_via_github_app":null,"state_reason":null},"comment":{"url":"https://api.github.com/repos/element-hq/element-x-android/issues/comments/2025007448","html_url":"https://github.com/element-hq/element-x-android/issues/2617#issuecomment-2025007448","issue_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2617","id":2025007448,"node_id":"IC_kwDOIJNDks54sylY","user":{"login":"bmarty","id":3940906,"node_id":"MDQ6VXNlcjM5NDA5MDY=","avatar_url":"https://avatars.githubusercontent.com/u/3940906?v=4","gravatar_id":"","url":"https://api.github.com/users/bmarty","html_url":"https://github.com/bmarty","followers_url":"https://api.github.com/users/bmarty/followers","following_url":"https://api.github.com/users/bmarty/following{/other_user}","gists_url":"https://api.github.com/users/bmarty/gists{/gist_id}","starred_url":"https://api.github.com/users/bmarty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bmarty/subscriptions","organizations_url":"https://api.github.com/users/bmarty/orgs","repos_url":"https://api.github.com/users/bmarty/repos","events_url":"https://api.github.com/users/bmarty/events{/privacy}","received_events_url":"https://api.github.com/users/bmarty/received_events","type":"User","site_admin":false},"created_at":"2024-03-28T11:57:00Z","updated_at":"2024-03-28T11:57:00Z","author_association":"MEMBER","body":"Thanks for reporting.\r\n\r\n`/` is accepted in the Matrix userId localpart grammar: https://spec.matrix.org/latest/appendices/#user-identifiers, so this will have to be fixed at some point.","reactions":{"url":"https://api.github.com/repos/element-hq/element-x-android/issues/comments/2025007448/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"performed_via_github_app":null}},"public":true,"created_at":"2024-03-28T11:57:02Z","org":{"id":13446337,"login":"element-hq","gravatar_id":"","url":"https://api.github.com/orgs/element-hq","avatar_url":"https://avatars.githubusercontent.com/u/13446337?"}},{"id":"36964618463","type":"PullRequestReviewCommentEvent","actor":{"id":3940906,"login":"bmarty","display_login":"bmarty","gravatar_id":"","url":"https://api.github.com/users/bmarty","avatar_url":"https://avatars.githubusercontent.com/u/3940906?"},"repo":{"id":546522002,"name":"element-hq/element-x-android","url":"https://api.github.com/repos/element-hq/element-x-android"},"payload":{"action":"created","comment":{"url":"https://api.github.com/repos/element-hq/element-x-android/pulls/comments/1542778694","pull_request_review_id":1965893006,"id":1542778694,"node_id":"PRRC_kwDOIJNDks5b9O9G","diff_hunk":"@@ -0,0 +1,92 @@\n+/*\n+ * Copyright (c) 2024 New Vector Ltd\n+ *\n+ * Licensed under the Apache License, Version 2.0 (the \"License\");\n+ * you may not use this file except in compliance with the License.\n+ * You may obtain a copy of the License at\n+ *\n+ * http://www.apache.org/licenses/LICENSE-2.0\n+ *\n+ * Unless required by applicable law or agreed to in writing, software\n+ * distributed under the License is distributed on an \"AS IS\" BASIS,\n+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n+ * See the License for the specific language governing permissions and\n+ * limitations under the License.\n+ */\n+\n+package io.element.android.tests.testutils.lambda\n+\n+fun assert(lambdaRecorder: LambdaRecorder): LambdaRecorderAssertions {\n+ return lambdaRecorder.assertions()\n+}\n+\n+class LambdaRecorderAssertions internal constructor(\n+ private val parametersSequence: List>,\n+) {\n+ fun isCalledOnce(): CalledOnceParametersAssertions {\n+ return CalledOnceParametersAssertions(\n+ assertions = isCalledExactly(1)\n+ )\n+ }\n+\n+ fun isNeverCalled() {\n+ isCalledExactly(0)\n+ }\n+\n+ fun isCalledExactly(times: Int): ParametersAssertions {\n+ if (parametersSequence.size != times) {\n+ throw AssertionError(\"Expected to be called $times, but was called ${parametersSequence.size} times\")\n+ }\n+ return ParametersAssertions(parametersSequence)\n+ }\n+}\n+\n+class CalledOnceParametersAssertions internal constructor(private val assertions: ParametersAssertions) {\n+ fun with(vararg matchers: ParameterMatcher) {\n+ assertions.withSequence(matchers.toList())\n+ }\n+\n+ fun withNoParameter() {\n+ assertions.withNoParameter()\n+ }\n+}\n+\n+class ParametersAssertions internal constructor(\n+ private val parametersSequence: List>\n+) {\n+ fun withSequence(vararg matchersSequence: List) {\n+ if (parametersSequence.size != matchersSequence.size) {\n+ throw AssertionError(\"Expected ${matchersSequence.size} parameters, but got ${parametersSequence.size} parameters\")\n+ }\n+ parametersSequence.zip(matchersSequence).forEach { (parameters, matchers) ->\n+ if (parameters.size != matchers.size) {\n+ throw AssertionError(\"Expected ${matchers.size} parameters, but got ${parameters.size} parameters\")","path":"tests/testutils/src/main/kotlin/io/element/android/tests/testutils/lambda/Assertions.kt","commit_id":"44125567f63f2c5a20ac20eca48e1d194cc0adda","original_commit_id":"44125567f63f2c5a20ac20eca48e1d194cc0adda","user":{"login":"bmarty","id":3940906,"node_id":"MDQ6VXNlcjM5NDA5MDY=","avatar_url":"https://avatars.githubusercontent.com/u/3940906?v=4","gravatar_id":"","url":"https://api.github.com/users/bmarty","html_url":"https://github.com/bmarty","followers_url":"https://api.github.com/users/bmarty/followers","following_url":"https://api.github.com/users/bmarty/following{/other_user}","gists_url":"https://api.github.com/users/bmarty/gists{/gist_id}","starred_url":"https://api.github.com/users/bmarty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bmarty/subscriptions","organizations_url":"https://api.github.com/users/bmarty/orgs","repos_url":"https://api.github.com/users/bmarty/repos","events_url":"https://api.github.com/users/bmarty/events{/privacy}","received_events_url":"https://api.github.com/users/bmarty/received_events","type":"User","site_admin":false},"body":"Maybe change the message to distinguish it from the message at line 59","created_at":"2024-03-28T11:49:20Z","updated_at":"2024-03-28T11:49:20Z","html_url":"https://github.com/element-hq/element-x-android/pull/2615#discussion_r1542778694","pull_request_url":"https://api.github.com/repos/element-hq/element-x-android/pulls/2615","author_association":"MEMBER","_links":{"self":{"href":"https://api.github.com/repos/element-hq/element-x-android/pulls/comments/1542778694"},"html":{"href":"https://github.com/element-hq/element-x-android/pull/2615#discussion_r1542778694"},"pull_request":{"href":"https://api.github.com/repos/element-hq/element-x-android/pulls/2615"}},"reactions":{"url":"https://api.github.com/repos/element-hq/element-x-android/pulls/comments/1542778694/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"start_line":null,"original_start_line":null,"start_side":null,"line":63,"original_line":63,"side":"RIGHT","original_position":63,"position":63,"subject_type":"line"},"pull_request":{"url":"https://api.github.com/repos/element-hq/element-x-android/pulls/2615","id":1795654258,"node_id":"PR_kwDOIJNDks5rB4Jy","html_url":"https://github.com/element-hq/element-x-android/pull/2615","diff_url":"https://github.com/element-hq/element-x-android/pull/2615.diff","patch_url":"https://github.com/element-hq/element-x-android/pull/2615.patch","issue_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2615","number":2615,"state":"open","locked":false,"title":"Tests : create lambda recorder","user":{"login":"ganfra","id":8754928,"node_id":"MDQ6VXNlcjg3NTQ5Mjg=","avatar_url":"https://avatars.githubusercontent.com/u/8754928?v=4","gravatar_id":"","url":"https://api.github.com/users/ganfra","html_url":"https://github.com/ganfra","followers_url":"https://api.github.com/users/ganfra/followers","following_url":"https://api.github.com/users/ganfra/following{/other_user}","gists_url":"https://api.github.com/users/ganfra/gists{/gist_id}","starred_url":"https://api.github.com/users/ganfra/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ganfra/subscriptions","organizations_url":"https://api.github.com/users/ganfra/orgs","repos_url":"https://api.github.com/users/ganfra/repos","events_url":"https://api.github.com/users/ganfra/events{/privacy}","received_events_url":"https://api.github.com/users/ganfra/received_events","type":"User","site_admin":false},"body":"\r\n \r\n## Type of change\r\n\r\n- [ ] Feature\r\n- [ ] Bugfix\r\n- [X] Technical\r\n- [ ] Other :\r\n\r\n## Content\r\n\r\nCreate a small API for testing lambda execution.\r\n\r\nExample of usage : \r\n\r\n```\r\nfun present - emit join room event() = runTest {\r\n val joinRoom = lambdaRecorder { roomId: RoomId ->\r\n Result.success(roomId)\r\n }\r\n val presenter = createRoomDirectoryPresenter(joinRoom = FakeJoinRoom(joinRoom))\r\n presenter.test {\r\n awaitItem().also { state ->\r\n state.eventSink(RoomDirectoryEvents.JoinRoom(A_ROOM_ID))\r\n }\r\n advanceUntilIdle()\r\n cancelAndIgnoreRemainingEvents()\r\n }\r\n assert(joinRoom)\r\n .isCalledOnce()\r\n .with(value(A_ROOM_ID))\r\n}\r\n```\r\n\r\n\r\n\r\n## Motivation and context\r\nWe want to use lambda for implementing Fakes, so it'll be easier to check for execution.\r\n\r\n\r\n## Screenshots / GIFs\r\n\r\n\r\n\r\n## Tests\r\n\r\n\r\n\r\n- Step 1\r\n- Step 2\r\n- Step ...\r\n\r\n## Tested devices\r\n\r\n- [ ] Physical\r\n- [ ] Emulator\r\n- OS version(s):\r\n\r\n## Checklist\r\n\r\n\r\n\r\n- [ ] Changes have been tested on an Android device or Android emulator with API 23\r\n- [ ] UI change has been tested on both light and dark themes\r\n- [ ] Accessibility has been taken into account. See https://github.com/element-hq/element-x-android/blob/develop/CONTRIBUTING.md#accessibility\r\n- [ ] Pull request is based on the develop branch\r\n- [ ] Pull request includes a new file under ./changelog.d. See https://github.com/element-hq/element-x-android/blob/develop/CONTRIBUTING.md#changelog\r\n- [ ] Pull request includes screenshots or videos if containing UI changes\r\n- [ ] Pull request includes a [sign off](https://matrix-org.github.io/synapse/latest/development/contributing_guide.html#sign-off)\r\n- [ ] You've made a self review of your PR\r\n","created_at":"2024-03-28T09:38:39Z","updated_at":"2024-03-28T11:49:20Z","closed_at":null,"merged_at":null,"merge_commit_sha":"00daf14512681935a03b46f3c8e3cee3b09f62bc","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"draft":false,"commits_url":"https://api.github.com/repos/element-hq/element-x-android/pulls/2615/commits","review_comments_url":"https://api.github.com/repos/element-hq/element-x-android/pulls/2615/comments","review_comment_url":"https://api.github.com/repos/element-hq/element-x-android/pulls/comments{/number}","comments_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2615/comments","statuses_url":"https://api.github.com/repos/element-hq/element-x-android/statuses/44125567f63f2c5a20ac20eca48e1d194cc0adda","head":{"label":"element-hq:feature/fga/lambda_recorder","ref":"feature/fga/lambda_recorder","sha":"44125567f63f2c5a20ac20eca48e1d194cc0adda","user":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"repo":{"id":546522002,"node_id":"R_kgDOIJNDkg","name":"element-x-android","full_name":"element-hq/element-x-android","private":false,"owner":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/element-hq/element-x-android","description":"Android Matrix messenger application using the Matrix Rust Sdk and Jetpack Compose","fork":false,"url":"https://api.github.com/repos/element-hq/element-x-android","forks_url":"https://api.github.com/repos/element-hq/element-x-android/forks","keys_url":"https://api.github.com/repos/element-hq/element-x-android/keys{/key_id}","collaborators_url":"https://api.github.com/repos/element-hq/element-x-android/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/element-hq/element-x-android/teams","hooks_url":"https://api.github.com/repos/element-hq/element-x-android/hooks","issue_events_url":"https://api.github.com/repos/element-hq/element-x-android/issues/events{/number}","events_url":"https://api.github.com/repos/element-hq/element-x-android/events","assignees_url":"https://api.github.com/repos/element-hq/element-x-android/assignees{/user}","branches_url":"https://api.github.com/repos/element-hq/element-x-android/branches{/branch}","tags_url":"https://api.github.com/repos/element-hq/element-x-android/tags","blobs_url":"https://api.github.com/repos/element-hq/element-x-android/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/element-hq/element-x-android/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/element-hq/element-x-android/git/refs{/sha}","trees_url":"https://api.github.com/repos/element-hq/element-x-android/git/trees{/sha}","statuses_url":"https://api.github.com/repos/element-hq/element-x-android/statuses/{sha}","languages_url":"https://api.github.com/repos/element-hq/element-x-android/languages","stargazers_url":"https://api.github.com/repos/element-hq/element-x-android/stargazers","contributors_url":"https://api.github.com/repos/element-hq/element-x-android/contributors","subscribers_url":"https://api.github.com/repos/element-hq/element-x-android/subscribers","subscription_url":"https://api.github.com/repos/element-hq/element-x-android/subscription","commits_url":"https://api.github.com/repos/element-hq/element-x-android/commits{/sha}","git_commits_url":"https://api.github.com/repos/element-hq/element-x-android/git/commits{/sha}","comments_url":"https://api.github.com/repos/element-hq/element-x-android/comments{/number}","issue_comment_url":"https://api.github.com/repos/element-hq/element-x-android/issues/comments{/number}","contents_url":"https://api.github.com/repos/element-hq/element-x-android/contents/{+path}","compare_url":"https://api.github.com/repos/element-hq/element-x-android/compare/{base}...{head}","merges_url":"https://api.github.com/repos/element-hq/element-x-android/merges","archive_url":"https://api.github.com/repos/element-hq/element-x-android/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/element-hq/element-x-android/downloads","issues_url":"https://api.github.com/repos/element-hq/element-x-android/issues{/number}","pulls_url":"https://api.github.com/repos/element-hq/element-x-android/pulls{/number}","milestones_url":"https://api.github.com/repos/element-hq/element-x-android/milestones{/number}","notifications_url":"https://api.github.com/repos/element-hq/element-x-android/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/element-hq/element-x-android/labels{/name}","releases_url":"https://api.github.com/repos/element-hq/element-x-android/releases{/id}","deployments_url":"https://api.github.com/repos/element-hq/element-x-android/deployments","created_at":"2022-10-06T07:59:24Z","updated_at":"2024-03-28T10:46:21Z","pushed_at":"2024-03-28T11:14:47Z","git_url":"git://github.com/element-hq/element-x-android.git","ssh_url":"git@github.com:element-hq/element-x-android.git","clone_url":"https://github.com/element-hq/element-x-android.git","svn_url":"https://github.com/element-hq/element-x-android","homepage":"","size":434013,"stargazers_count":746,"watchers_count":746,"language":"Kotlin","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"has_discussions":false,"forks_count":92,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":210,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":["hacktoberfest","matrix"],"visibility":"public","forks":92,"open_issues":210,"watchers":746,"default_branch":"develop"}},"base":{"label":"element-hq:develop","ref":"develop","sha":"ac9b74ee7ce59244e330de9bb5dacd8e4c8f3a95","user":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"repo":{"id":546522002,"node_id":"R_kgDOIJNDkg","name":"element-x-android","full_name":"element-hq/element-x-android","private":false,"owner":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/element-hq/element-x-android","description":"Android Matrix messenger application using the Matrix Rust Sdk and Jetpack Compose","fork":false,"url":"https://api.github.com/repos/element-hq/element-x-android","forks_url":"https://api.github.com/repos/element-hq/element-x-android/forks","keys_url":"https://api.github.com/repos/element-hq/element-x-android/keys{/key_id}","collaborators_url":"https://api.github.com/repos/element-hq/element-x-android/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/element-hq/element-x-android/teams","hooks_url":"https://api.github.com/repos/element-hq/element-x-android/hooks","issue_events_url":"https://api.github.com/repos/element-hq/element-x-android/issues/events{/number}","events_url":"https://api.github.com/repos/element-hq/element-x-android/events","assignees_url":"https://api.github.com/repos/element-hq/element-x-android/assignees{/user}","branches_url":"https://api.github.com/repos/element-hq/element-x-android/branches{/branch}","tags_url":"https://api.github.com/repos/element-hq/element-x-android/tags","blobs_url":"https://api.github.com/repos/element-hq/element-x-android/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/element-hq/element-x-android/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/element-hq/element-x-android/git/refs{/sha}","trees_url":"https://api.github.com/repos/element-hq/element-x-android/git/trees{/sha}","statuses_url":"https://api.github.com/repos/element-hq/element-x-android/statuses/{sha}","languages_url":"https://api.github.com/repos/element-hq/element-x-android/languages","stargazers_url":"https://api.github.com/repos/element-hq/element-x-android/stargazers","contributors_url":"https://api.github.com/repos/element-hq/element-x-android/contributors","subscribers_url":"https://api.github.com/repos/element-hq/element-x-android/subscribers","subscription_url":"https://api.github.com/repos/element-hq/element-x-android/subscription","commits_url":"https://api.github.com/repos/element-hq/element-x-android/commits{/sha}","git_commits_url":"https://api.github.com/repos/element-hq/element-x-android/git/commits{/sha}","comments_url":"https://api.github.com/repos/element-hq/element-x-android/comments{/number}","issue_comment_url":"https://api.github.com/repos/element-hq/element-x-android/issues/comments{/number}","contents_url":"https://api.github.com/repos/element-hq/element-x-android/contents/{+path}","compare_url":"https://api.github.com/repos/element-hq/element-x-android/compare/{base}...{head}","merges_url":"https://api.github.com/repos/element-hq/element-x-android/merges","archive_url":"https://api.github.com/repos/element-hq/element-x-android/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/element-hq/element-x-android/downloads","issues_url":"https://api.github.com/repos/element-hq/element-x-android/issues{/number}","pulls_url":"https://api.github.com/repos/element-hq/element-x-android/pulls{/number}","milestones_url":"https://api.github.com/repos/element-hq/element-x-android/milestones{/number}","notifications_url":"https://api.github.com/repos/element-hq/element-x-android/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/element-hq/element-x-android/labels{/name}","releases_url":"https://api.github.com/repos/element-hq/element-x-android/releases{/id}","deployments_url":"https://api.github.com/repos/element-hq/element-x-android/deployments","created_at":"2022-10-06T07:59:24Z","updated_at":"2024-03-28T10:46:21Z","pushed_at":"2024-03-28T11:14:47Z","git_url":"git://github.com/element-hq/element-x-android.git","ssh_url":"git@github.com:element-hq/element-x-android.git","clone_url":"https://github.com/element-hq/element-x-android.git","svn_url":"https://github.com/element-hq/element-x-android","homepage":"","size":434013,"stargazers_count":746,"watchers_count":746,"language":"Kotlin","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"has_discussions":false,"forks_count":92,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":210,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":["hacktoberfest","matrix"],"visibility":"public","forks":92,"open_issues":210,"watchers":746,"default_branch":"develop"}},"_links":{"self":{"href":"https://api.github.com/repos/element-hq/element-x-android/pulls/2615"},"html":{"href":"https://github.com/element-hq/element-x-android/pull/2615"},"issue":{"href":"https://api.github.com/repos/element-hq/element-x-android/issues/2615"},"comments":{"href":"https://api.github.com/repos/element-hq/element-x-android/issues/2615/comments"},"review_comments":{"href":"https://api.github.com/repos/element-hq/element-x-android/pulls/2615/comments"},"review_comment":{"href":"https://api.github.com/repos/element-hq/element-x-android/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/element-hq/element-x-android/pulls/2615/commits"},"statuses":{"href":"https://api.github.com/repos/element-hq/element-x-android/statuses/44125567f63f2c5a20ac20eca48e1d194cc0adda"}},"author_association":"CONTRIBUTOR","auto_merge":null,"active_lock_reason":null}},"public":true,"created_at":"2024-03-28T11:49:20Z","org":{"id":13446337,"login":"element-hq","gravatar_id":"","url":"https://api.github.com/orgs/element-hq","avatar_url":"https://avatars.githubusercontent.com/u/13446337?"}},{"id":"36964618365","type":"PullRequestReviewEvent","actor":{"id":3940906,"login":"bmarty","display_login":"bmarty","gravatar_id":"","url":"https://api.github.com/users/bmarty","avatar_url":"https://avatars.githubusercontent.com/u/3940906?"},"repo":{"id":546522002,"name":"element-hq/element-x-android","url":"https://api.github.com/repos/element-hq/element-x-android"},"payload":{"action":"created","review":{"id":1965893006,"node_id":"PRR_kwDOIJNDks51LSWO","user":{"login":"bmarty","id":3940906,"node_id":"MDQ6VXNlcjM5NDA5MDY=","avatar_url":"https://avatars.githubusercontent.com/u/3940906?v=4","gravatar_id":"","url":"https://api.github.com/users/bmarty","html_url":"https://github.com/bmarty","followers_url":"https://api.github.com/users/bmarty/followers","following_url":"https://api.github.com/users/bmarty/following{/other_user}","gists_url":"https://api.github.com/users/bmarty/gists{/gist_id}","starred_url":"https://api.github.com/users/bmarty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bmarty/subscriptions","organizations_url":"https://api.github.com/users/bmarty/orgs","repos_url":"https://api.github.com/users/bmarty/repos","events_url":"https://api.github.com/users/bmarty/events{/privacy}","received_events_url":"https://api.github.com/users/bmarty/received_events","type":"User","site_admin":false},"body":null,"commit_id":"44125567f63f2c5a20ac20eca48e1d194cc0adda","submitted_at":"2024-03-28T11:49:20Z","state":"commented","html_url":"https://github.com/element-hq/element-x-android/pull/2615#pullrequestreview-1965893006","pull_request_url":"https://api.github.com/repos/element-hq/element-x-android/pulls/2615","author_association":"MEMBER","_links":{"html":{"href":"https://github.com/element-hq/element-x-android/pull/2615#pullrequestreview-1965893006"},"pull_request":{"href":"https://api.github.com/repos/element-hq/element-x-android/pulls/2615"}}},"pull_request":{"url":"https://api.github.com/repos/element-hq/element-x-android/pulls/2615","id":1795654258,"node_id":"PR_kwDOIJNDks5rB4Jy","html_url":"https://github.com/element-hq/element-x-android/pull/2615","diff_url":"https://github.com/element-hq/element-x-android/pull/2615.diff","patch_url":"https://github.com/element-hq/element-x-android/pull/2615.patch","issue_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2615","number":2615,"state":"open","locked":false,"title":"Tests : create lambda recorder","user":{"login":"ganfra","id":8754928,"node_id":"MDQ6VXNlcjg3NTQ5Mjg=","avatar_url":"https://avatars.githubusercontent.com/u/8754928?v=4","gravatar_id":"","url":"https://api.github.com/users/ganfra","html_url":"https://github.com/ganfra","followers_url":"https://api.github.com/users/ganfra/followers","following_url":"https://api.github.com/users/ganfra/following{/other_user}","gists_url":"https://api.github.com/users/ganfra/gists{/gist_id}","starred_url":"https://api.github.com/users/ganfra/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ganfra/subscriptions","organizations_url":"https://api.github.com/users/ganfra/orgs","repos_url":"https://api.github.com/users/ganfra/repos","events_url":"https://api.github.com/users/ganfra/events{/privacy}","received_events_url":"https://api.github.com/users/ganfra/received_events","type":"User","site_admin":false},"body":"\r\n \r\n## Type of change\r\n\r\n- [ ] Feature\r\n- [ ] Bugfix\r\n- [X] Technical\r\n- [ ] Other :\r\n\r\n## Content\r\n\r\nCreate a small API for testing lambda execution.\r\n\r\nExample of usage : \r\n\r\n```\r\nfun present - emit join room event() = runTest {\r\n val joinRoom = lambdaRecorder { roomId: RoomId ->\r\n Result.success(roomId)\r\n }\r\n val presenter = createRoomDirectoryPresenter(joinRoom = FakeJoinRoom(joinRoom))\r\n presenter.test {\r\n awaitItem().also { state ->\r\n state.eventSink(RoomDirectoryEvents.JoinRoom(A_ROOM_ID))\r\n }\r\n advanceUntilIdle()\r\n cancelAndIgnoreRemainingEvents()\r\n }\r\n assert(joinRoom)\r\n .isCalledOnce()\r\n .with(value(A_ROOM_ID))\r\n}\r\n```\r\n\r\n\r\n\r\n## Motivation and context\r\nWe want to use lambda for implementing Fakes, so it'll be easier to check for execution.\r\n\r\n\r\n## Screenshots / GIFs\r\n\r\n\r\n\r\n## Tests\r\n\r\n\r\n\r\n- Step 1\r\n- Step 2\r\n- Step ...\r\n\r\n## Tested devices\r\n\r\n- [ ] Physical\r\n- [ ] Emulator\r\n- OS version(s):\r\n\r\n## Checklist\r\n\r\n\r\n\r\n- [ ] Changes have been tested on an Android device or Android emulator with API 23\r\n- [ ] UI change has been tested on both light and dark themes\r\n- [ ] Accessibility has been taken into account. See https://github.com/element-hq/element-x-android/blob/develop/CONTRIBUTING.md#accessibility\r\n- [ ] Pull request is based on the develop branch\r\n- [ ] Pull request includes a new file under ./changelog.d. See https://github.com/element-hq/element-x-android/blob/develop/CONTRIBUTING.md#changelog\r\n- [ ] Pull request includes screenshots or videos if containing UI changes\r\n- [ ] Pull request includes a [sign off](https://matrix-org.github.io/synapse/latest/development/contributing_guide.html#sign-off)\r\n- [ ] You've made a self review of your PR\r\n","created_at":"2024-03-28T09:38:39Z","updated_at":"2024-03-28T11:49:20Z","closed_at":null,"merged_at":null,"merge_commit_sha":"00daf14512681935a03b46f3c8e3cee3b09f62bc","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"draft":false,"commits_url":"https://api.github.com/repos/element-hq/element-x-android/pulls/2615/commits","review_comments_url":"https://api.github.com/repos/element-hq/element-x-android/pulls/2615/comments","review_comment_url":"https://api.github.com/repos/element-hq/element-x-android/pulls/comments{/number}","comments_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2615/comments","statuses_url":"https://api.github.com/repos/element-hq/element-x-android/statuses/44125567f63f2c5a20ac20eca48e1d194cc0adda","head":{"label":"element-hq:feature/fga/lambda_recorder","ref":"feature/fga/lambda_recorder","sha":"44125567f63f2c5a20ac20eca48e1d194cc0adda","user":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"repo":{"id":546522002,"node_id":"R_kgDOIJNDkg","name":"element-x-android","full_name":"element-hq/element-x-android","private":false,"owner":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/element-hq/element-x-android","description":"Android Matrix messenger application using the Matrix Rust Sdk and Jetpack Compose","fork":false,"url":"https://api.github.com/repos/element-hq/element-x-android","forks_url":"https://api.github.com/repos/element-hq/element-x-android/forks","keys_url":"https://api.github.com/repos/element-hq/element-x-android/keys{/key_id}","collaborators_url":"https://api.github.com/repos/element-hq/element-x-android/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/element-hq/element-x-android/teams","hooks_url":"https://api.github.com/repos/element-hq/element-x-android/hooks","issue_events_url":"https://api.github.com/repos/element-hq/element-x-android/issues/events{/number}","events_url":"https://api.github.com/repos/element-hq/element-x-android/events","assignees_url":"https://api.github.com/repos/element-hq/element-x-android/assignees{/user}","branches_url":"https://api.github.com/repos/element-hq/element-x-android/branches{/branch}","tags_url":"https://api.github.com/repos/element-hq/element-x-android/tags","blobs_url":"https://api.github.com/repos/element-hq/element-x-android/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/element-hq/element-x-android/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/element-hq/element-x-android/git/refs{/sha}","trees_url":"https://api.github.com/repos/element-hq/element-x-android/git/trees{/sha}","statuses_url":"https://api.github.com/repos/element-hq/element-x-android/statuses/{sha}","languages_url":"https://api.github.com/repos/element-hq/element-x-android/languages","stargazers_url":"https://api.github.com/repos/element-hq/element-x-android/stargazers","contributors_url":"https://api.github.com/repos/element-hq/element-x-android/contributors","subscribers_url":"https://api.github.com/repos/element-hq/element-x-android/subscribers","subscription_url":"https://api.github.com/repos/element-hq/element-x-android/subscription","commits_url":"https://api.github.com/repos/element-hq/element-x-android/commits{/sha}","git_commits_url":"https://api.github.com/repos/element-hq/element-x-android/git/commits{/sha}","comments_url":"https://api.github.com/repos/element-hq/element-x-android/comments{/number}","issue_comment_url":"https://api.github.com/repos/element-hq/element-x-android/issues/comments{/number}","contents_url":"https://api.github.com/repos/element-hq/element-x-android/contents/{+path}","compare_url":"https://api.github.com/repos/element-hq/element-x-android/compare/{base}...{head}","merges_url":"https://api.github.com/repos/element-hq/element-x-android/merges","archive_url":"https://api.github.com/repos/element-hq/element-x-android/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/element-hq/element-x-android/downloads","issues_url":"https://api.github.com/repos/element-hq/element-x-android/issues{/number}","pulls_url":"https://api.github.com/repos/element-hq/element-x-android/pulls{/number}","milestones_url":"https://api.github.com/repos/element-hq/element-x-android/milestones{/number}","notifications_url":"https://api.github.com/repos/element-hq/element-x-android/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/element-hq/element-x-android/labels{/name}","releases_url":"https://api.github.com/repos/element-hq/element-x-android/releases{/id}","deployments_url":"https://api.github.com/repos/element-hq/element-x-android/deployments","created_at":"2022-10-06T07:59:24Z","updated_at":"2024-03-28T10:46:21Z","pushed_at":"2024-03-28T11:14:47Z","git_url":"git://github.com/element-hq/element-x-android.git","ssh_url":"git@github.com:element-hq/element-x-android.git","clone_url":"https://github.com/element-hq/element-x-android.git","svn_url":"https://github.com/element-hq/element-x-android","homepage":"","size":434013,"stargazers_count":746,"watchers_count":746,"language":"Kotlin","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"has_discussions":false,"forks_count":92,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":210,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":["hacktoberfest","matrix"],"visibility":"public","forks":92,"open_issues":210,"watchers":746,"default_branch":"develop"}},"base":{"label":"element-hq:develop","ref":"develop","sha":"ac9b74ee7ce59244e330de9bb5dacd8e4c8f3a95","user":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"repo":{"id":546522002,"node_id":"R_kgDOIJNDkg","name":"element-x-android","full_name":"element-hq/element-x-android","private":false,"owner":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/element-hq/element-x-android","description":"Android Matrix messenger application using the Matrix Rust Sdk and Jetpack Compose","fork":false,"url":"https://api.github.com/repos/element-hq/element-x-android","forks_url":"https://api.github.com/repos/element-hq/element-x-android/forks","keys_url":"https://api.github.com/repos/element-hq/element-x-android/keys{/key_id}","collaborators_url":"https://api.github.com/repos/element-hq/element-x-android/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/element-hq/element-x-android/teams","hooks_url":"https://api.github.com/repos/element-hq/element-x-android/hooks","issue_events_url":"https://api.github.com/repos/element-hq/element-x-android/issues/events{/number}","events_url":"https://api.github.com/repos/element-hq/element-x-android/events","assignees_url":"https://api.github.com/repos/element-hq/element-x-android/assignees{/user}","branches_url":"https://api.github.com/repos/element-hq/element-x-android/branches{/branch}","tags_url":"https://api.github.com/repos/element-hq/element-x-android/tags","blobs_url":"https://api.github.com/repos/element-hq/element-x-android/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/element-hq/element-x-android/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/element-hq/element-x-android/git/refs{/sha}","trees_url":"https://api.github.com/repos/element-hq/element-x-android/git/trees{/sha}","statuses_url":"https://api.github.com/repos/element-hq/element-x-android/statuses/{sha}","languages_url":"https://api.github.com/repos/element-hq/element-x-android/languages","stargazers_url":"https://api.github.com/repos/element-hq/element-x-android/stargazers","contributors_url":"https://api.github.com/repos/element-hq/element-x-android/contributors","subscribers_url":"https://api.github.com/repos/element-hq/element-x-android/subscribers","subscription_url":"https://api.github.com/repos/element-hq/element-x-android/subscription","commits_url":"https://api.github.com/repos/element-hq/element-x-android/commits{/sha}","git_commits_url":"https://api.github.com/repos/element-hq/element-x-android/git/commits{/sha}","comments_url":"https://api.github.com/repos/element-hq/element-x-android/comments{/number}","issue_comment_url":"https://api.github.com/repos/element-hq/element-x-android/issues/comments{/number}","contents_url":"https://api.github.com/repos/element-hq/element-x-android/contents/{+path}","compare_url":"https://api.github.com/repos/element-hq/element-x-android/compare/{base}...{head}","merges_url":"https://api.github.com/repos/element-hq/element-x-android/merges","archive_url":"https://api.github.com/repos/element-hq/element-x-android/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/element-hq/element-x-android/downloads","issues_url":"https://api.github.com/repos/element-hq/element-x-android/issues{/number}","pulls_url":"https://api.github.com/repos/element-hq/element-x-android/pulls{/number}","milestones_url":"https://api.github.com/repos/element-hq/element-x-android/milestones{/number}","notifications_url":"https://api.github.com/repos/element-hq/element-x-android/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/element-hq/element-x-android/labels{/name}","releases_url":"https://api.github.com/repos/element-hq/element-x-android/releases{/id}","deployments_url":"https://api.github.com/repos/element-hq/element-x-android/deployments","created_at":"2022-10-06T07:59:24Z","updated_at":"2024-03-28T10:46:21Z","pushed_at":"2024-03-28T11:14:47Z","git_url":"git://github.com/element-hq/element-x-android.git","ssh_url":"git@github.com:element-hq/element-x-android.git","clone_url":"https://github.com/element-hq/element-x-android.git","svn_url":"https://github.com/element-hq/element-x-android","homepage":"","size":434013,"stargazers_count":746,"watchers_count":746,"language":"Kotlin","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"has_discussions":false,"forks_count":92,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":210,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":["hacktoberfest","matrix"],"visibility":"public","forks":92,"open_issues":210,"watchers":746,"default_branch":"develop"}},"_links":{"self":{"href":"https://api.github.com/repos/element-hq/element-x-android/pulls/2615"},"html":{"href":"https://github.com/element-hq/element-x-android/pull/2615"},"issue":{"href":"https://api.github.com/repos/element-hq/element-x-android/issues/2615"},"comments":{"href":"https://api.github.com/repos/element-hq/element-x-android/issues/2615/comments"},"review_comments":{"href":"https://api.github.com/repos/element-hq/element-x-android/pulls/2615/comments"},"review_comment":{"href":"https://api.github.com/repos/element-hq/element-x-android/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/element-hq/element-x-android/pulls/2615/commits"},"statuses":{"href":"https://api.github.com/repos/element-hq/element-x-android/statuses/44125567f63f2c5a20ac20eca48e1d194cc0adda"}},"author_association":"CONTRIBUTOR","auto_merge":null,"active_lock_reason":null}},"public":true,"created_at":"2024-03-28T11:49:21Z","org":{"id":13446337,"login":"element-hq","gravatar_id":"","url":"https://api.github.com/orgs/element-hq","avatar_url":"https://avatars.githubusercontent.com/u/13446337?"}},{"id":"36963656648","type":"PullRequestEvent","actor":{"id":3940906,"login":"bmarty","display_login":"bmarty","gravatar_id":"","url":"https://api.github.com/users/bmarty","avatar_url":"https://avatars.githubusercontent.com/u/3940906?"},"repo":{"id":546522002,"name":"element-hq/element-x-android","url":"https://api.github.com/repos/element-hq/element-x-android"},"payload":{"action":"opened","number":2618,"pull_request":{"url":"https://api.github.com/repos/element-hq/element-x-android/pulls/2618","id":1795826714,"node_id":"PR_kwDOIJNDks5rCiQa","html_url":"https://github.com/element-hq/element-x-android/pull/2618","diff_url":"https://github.com/element-hq/element-x-android/pull/2618.diff","patch_url":"https://github.com/element-hq/element-x-android/pull/2618.patch","issue_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2618","number":2618,"state":"open","locked":false,"title":"Fix analytics","user":{"login":"bmarty","id":3940906,"node_id":"MDQ6VXNlcjM5NDA5MDY=","avatar_url":"https://avatars.githubusercontent.com/u/3940906?v=4","gravatar_id":"","url":"https://api.github.com/users/bmarty","html_url":"https://github.com/bmarty","followers_url":"https://api.github.com/users/bmarty/followers","following_url":"https://api.github.com/users/bmarty/following{/other_user}","gists_url":"https://api.github.com/users/bmarty/gists{/gist_id}","starred_url":"https://api.github.com/users/bmarty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bmarty/subscriptions","organizations_url":"https://api.github.com/users/bmarty/orgs","repos_url":"https://api.github.com/users/bmarty/repos","events_url":"https://api.github.com/users/bmarty/events{/privacy}","received_events_url":"https://api.github.com/users/bmarty/received_events","type":"User","site_admin":false},"body":"spaceId have the same syntax as roomId. Use MatrixRoom.isSpace instead of MatrixPatterns.isSpaceId (#2612)\r\n\r\nAlso remove useless orFalse() calls.\r\n\r\nCloses #2612","created_at":"2024-03-28T11:14:46Z","updated_at":"2024-03-28T11:14:47Z","closed_at":null,"merged_at":null,"merge_commit_sha":null,"assignee":null,"assignees":[],"requested_reviewers":[{"login":"ganfra","id":8754928,"node_id":"MDQ6VXNlcjg3NTQ5Mjg=","avatar_url":"https://avatars.githubusercontent.com/u/8754928?v=4","gravatar_id":"","url":"https://api.github.com/users/ganfra","html_url":"https://github.com/ganfra","followers_url":"https://api.github.com/users/ganfra/followers","following_url":"https://api.github.com/users/ganfra/following{/other_user}","gists_url":"https://api.github.com/users/ganfra/gists{/gist_id}","starred_url":"https://api.github.com/users/ganfra/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ganfra/subscriptions","organizations_url":"https://api.github.com/users/ganfra/orgs","repos_url":"https://api.github.com/users/ganfra/repos","events_url":"https://api.github.com/users/ganfra/events{/privacy}","received_events_url":"https://api.github.com/users/ganfra/received_events","type":"User","site_admin":false}],"requested_teams":[],"labels":[],"milestone":null,"draft":false,"commits_url":"https://api.github.com/repos/element-hq/element-x-android/pulls/2618/commits","review_comments_url":"https://api.github.com/repos/element-hq/element-x-android/pulls/2618/comments","review_comment_url":"https://api.github.com/repos/element-hq/element-x-android/pulls/comments{/number}","comments_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2618/comments","statuses_url":"https://api.github.com/repos/element-hq/element-x-android/statuses/46008c2887e9e1b514ed8f9b177987a03f128e68","head":{"label":"element-hq:feature/bma/fixRoomAnalytics","ref":"feature/bma/fixRoomAnalytics","sha":"46008c2887e9e1b514ed8f9b177987a03f128e68","user":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"repo":{"id":546522002,"node_id":"R_kgDOIJNDkg","name":"element-x-android","full_name":"element-hq/element-x-android","private":false,"owner":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/element-hq/element-x-android","description":"Android Matrix messenger application using the Matrix Rust Sdk and Jetpack Compose","fork":false,"url":"https://api.github.com/repos/element-hq/element-x-android","forks_url":"https://api.github.com/repos/element-hq/element-x-android/forks","keys_url":"https://api.github.com/repos/element-hq/element-x-android/keys{/key_id}","collaborators_url":"https://api.github.com/repos/element-hq/element-x-android/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/element-hq/element-x-android/teams","hooks_url":"https://api.github.com/repos/element-hq/element-x-android/hooks","issue_events_url":"https://api.github.com/repos/element-hq/element-x-android/issues/events{/number}","events_url":"https://api.github.com/repos/element-hq/element-x-android/events","assignees_url":"https://api.github.com/repos/element-hq/element-x-android/assignees{/user}","branches_url":"https://api.github.com/repos/element-hq/element-x-android/branches{/branch}","tags_url":"https://api.github.com/repos/element-hq/element-x-android/tags","blobs_url":"https://api.github.com/repos/element-hq/element-x-android/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/element-hq/element-x-android/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/element-hq/element-x-android/git/refs{/sha}","trees_url":"https://api.github.com/repos/element-hq/element-x-android/git/trees{/sha}","statuses_url":"https://api.github.com/repos/element-hq/element-x-android/statuses/{sha}","languages_url":"https://api.github.com/repos/element-hq/element-x-android/languages","stargazers_url":"https://api.github.com/repos/element-hq/element-x-android/stargazers","contributors_url":"https://api.github.com/repos/element-hq/element-x-android/contributors","subscribers_url":"https://api.github.com/repos/element-hq/element-x-android/subscribers","subscription_url":"https://api.github.com/repos/element-hq/element-x-android/subscription","commits_url":"https://api.github.com/repos/element-hq/element-x-android/commits{/sha}","git_commits_url":"https://api.github.com/repos/element-hq/element-x-android/git/commits{/sha}","comments_url":"https://api.github.com/repos/element-hq/element-x-android/comments{/number}","issue_comment_url":"https://api.github.com/repos/element-hq/element-x-android/issues/comments{/number}","contents_url":"https://api.github.com/repos/element-hq/element-x-android/contents/{+path}","compare_url":"https://api.github.com/repos/element-hq/element-x-android/compare/{base}...{head}","merges_url":"https://api.github.com/repos/element-hq/element-x-android/merges","archive_url":"https://api.github.com/repos/element-hq/element-x-android/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/element-hq/element-x-android/downloads","issues_url":"https://api.github.com/repos/element-hq/element-x-android/issues{/number}","pulls_url":"https://api.github.com/repos/element-hq/element-x-android/pulls{/number}","milestones_url":"https://api.github.com/repos/element-hq/element-x-android/milestones{/number}","notifications_url":"https://api.github.com/repos/element-hq/element-x-android/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/element-hq/element-x-android/labels{/name}","releases_url":"https://api.github.com/repos/element-hq/element-x-android/releases{/id}","deployments_url":"https://api.github.com/repos/element-hq/element-x-android/deployments","created_at":"2022-10-06T07:59:24Z","updated_at":"2024-03-28T10:46:21Z","pushed_at":"2024-03-28T11:14:47Z","git_url":"git://github.com/element-hq/element-x-android.git","ssh_url":"git@github.com:element-hq/element-x-android.git","clone_url":"https://github.com/element-hq/element-x-android.git","svn_url":"https://github.com/element-hq/element-x-android","homepage":"","size":434013,"stargazers_count":746,"watchers_count":746,"language":"Kotlin","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"has_discussions":false,"forks_count":92,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":210,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":["hacktoberfest","matrix"],"visibility":"public","forks":92,"open_issues":210,"watchers":746,"default_branch":"develop"}},"base":{"label":"element-hq:develop","ref":"develop","sha":"02f993d2e8b21f2b0eb8317bf1ecc146c42136a6","user":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"repo":{"id":546522002,"node_id":"R_kgDOIJNDkg","name":"element-x-android","full_name":"element-hq/element-x-android","private":false,"owner":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/element-hq/element-x-android","description":"Android Matrix messenger application using the Matrix Rust Sdk and Jetpack Compose","fork":false,"url":"https://api.github.com/repos/element-hq/element-x-android","forks_url":"https://api.github.com/repos/element-hq/element-x-android/forks","keys_url":"https://api.github.com/repos/element-hq/element-x-android/keys{/key_id}","collaborators_url":"https://api.github.com/repos/element-hq/element-x-android/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/element-hq/element-x-android/teams","hooks_url":"https://api.github.com/repos/element-hq/element-x-android/hooks","issue_events_url":"https://api.github.com/repos/element-hq/element-x-android/issues/events{/number}","events_url":"https://api.github.com/repos/element-hq/element-x-android/events","assignees_url":"https://api.github.com/repos/element-hq/element-x-android/assignees{/user}","branches_url":"https://api.github.com/repos/element-hq/element-x-android/branches{/branch}","tags_url":"https://api.github.com/repos/element-hq/element-x-android/tags","blobs_url":"https://api.github.com/repos/element-hq/element-x-android/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/element-hq/element-x-android/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/element-hq/element-x-android/git/refs{/sha}","trees_url":"https://api.github.com/repos/element-hq/element-x-android/git/trees{/sha}","statuses_url":"https://api.github.com/repos/element-hq/element-x-android/statuses/{sha}","languages_url":"https://api.github.com/repos/element-hq/element-x-android/languages","stargazers_url":"https://api.github.com/repos/element-hq/element-x-android/stargazers","contributors_url":"https://api.github.com/repos/element-hq/element-x-android/contributors","subscribers_url":"https://api.github.com/repos/element-hq/element-x-android/subscribers","subscription_url":"https://api.github.com/repos/element-hq/element-x-android/subscription","commits_url":"https://api.github.com/repos/element-hq/element-x-android/commits{/sha}","git_commits_url":"https://api.github.com/repos/element-hq/element-x-android/git/commits{/sha}","comments_url":"https://api.github.com/repos/element-hq/element-x-android/comments{/number}","issue_comment_url":"https://api.github.com/repos/element-hq/element-x-android/issues/comments{/number}","contents_url":"https://api.github.com/repos/element-hq/element-x-android/contents/{+path}","compare_url":"https://api.github.com/repos/element-hq/element-x-android/compare/{base}...{head}","merges_url":"https://api.github.com/repos/element-hq/element-x-android/merges","archive_url":"https://api.github.com/repos/element-hq/element-x-android/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/element-hq/element-x-android/downloads","issues_url":"https://api.github.com/repos/element-hq/element-x-android/issues{/number}","pulls_url":"https://api.github.com/repos/element-hq/element-x-android/pulls{/number}","milestones_url":"https://api.github.com/repos/element-hq/element-x-android/milestones{/number}","notifications_url":"https://api.github.com/repos/element-hq/element-x-android/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/element-hq/element-x-android/labels{/name}","releases_url":"https://api.github.com/repos/element-hq/element-x-android/releases{/id}","deployments_url":"https://api.github.com/repos/element-hq/element-x-android/deployments","created_at":"2022-10-06T07:59:24Z","updated_at":"2024-03-28T10:46:21Z","pushed_at":"2024-03-28T11:14:47Z","git_url":"git://github.com/element-hq/element-x-android.git","ssh_url":"git@github.com:element-hq/element-x-android.git","clone_url":"https://github.com/element-hq/element-x-android.git","svn_url":"https://github.com/element-hq/element-x-android","homepage":"","size":434013,"stargazers_count":746,"watchers_count":746,"language":"Kotlin","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"has_discussions":false,"forks_count":92,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":210,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":["hacktoberfest","matrix"],"visibility":"public","forks":92,"open_issues":210,"watchers":746,"default_branch":"develop"}},"_links":{"self":{"href":"https://api.github.com/repos/element-hq/element-x-android/pulls/2618"},"html":{"href":"https://github.com/element-hq/element-x-android/pull/2618"},"issue":{"href":"https://api.github.com/repos/element-hq/element-x-android/issues/2618"},"comments":{"href":"https://api.github.com/repos/element-hq/element-x-android/issues/2618/comments"},"review_comments":{"href":"https://api.github.com/repos/element-hq/element-x-android/pulls/2618/comments"},"review_comment":{"href":"https://api.github.com/repos/element-hq/element-x-android/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/element-hq/element-x-android/pulls/2618/commits"},"statuses":{"href":"https://api.github.com/repos/element-hq/element-x-android/statuses/46008c2887e9e1b514ed8f9b177987a03f128e68"}},"author_association":"MEMBER","auto_merge":null,"active_lock_reason":null,"merged":false,"mergeable":null,"rebaseable":null,"mergeable_state":"unknown","merged_by":null,"comments":0,"review_comments":0,"maintainer_can_modify":false,"commits":1,"additions":11,"deletions":9,"changed_files":6}},"public":true,"created_at":"2024-03-28T11:14:48Z","org":{"id":13446337,"login":"element-hq","gravatar_id":"","url":"https://api.github.com/orgs/element-hq","avatar_url":"https://avatars.githubusercontent.com/u/13446337?"}},{"id":"36963634384","type":"CreateEvent","actor":{"id":3940906,"login":"bmarty","display_login":"bmarty","gravatar_id":"","url":"https://api.github.com/users/bmarty","avatar_url":"https://avatars.githubusercontent.com/u/3940906?"},"repo":{"id":546522002,"name":"element-hq/element-x-android","url":"https://api.github.com/repos/element-hq/element-x-android"},"payload":{"ref":"feature/bma/fixRoomAnalytics","ref_type":"branch","master_branch":"develop","description":"Android Matrix messenger application using the Matrix Rust Sdk and Jetpack Compose","pusher_type":"user"},"public":true,"created_at":"2024-03-28T11:14:01Z","org":{"id":13446337,"login":"element-hq","gravatar_id":"","url":"https://api.github.com/orgs/element-hq","avatar_url":"https://avatars.githubusercontent.com/u/13446337?"}},{"id":"36961898610","type":"IssuesEvent","actor":{"id":3940906,"login":"bmarty","display_login":"bmarty","gravatar_id":"","url":"https://api.github.com/users/bmarty","avatar_url":"https://avatars.githubusercontent.com/u/3940906?"},"repo":{"id":546522002,"name":"element-hq/element-x-android","url":"https://api.github.com/repos/element-hq/element-x-android"},"payload":{"action":"opened","issue":{"url":"https://api.github.com/repos/element-hq/element-x-android/issues/2616","repository_url":"https://api.github.com/repos/element-hq/element-x-android","labels_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2616/labels{/name}","comments_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2616/comments","events_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2616/events","html_url":"https://github.com/element-hq/element-x-android/issues/2616","id":2212845602,"node_id":"I_kwDOIJNDks6D5Vgi","number":2616,"title":"Toggle is not updated after successfull change","user":{"login":"bmarty","id":3940906,"node_id":"MDQ6VXNlcjM5NDA5MDY=","avatar_url":"https://avatars.githubusercontent.com/u/3940906?v=4","gravatar_id":"","url":"https://api.github.com/users/bmarty","html_url":"https://github.com/bmarty","followers_url":"https://api.github.com/users/bmarty/followers","following_url":"https://api.github.com/users/bmarty/following{/other_user}","gists_url":"https://api.github.com/users/bmarty/gists{/gist_id}","starred_url":"https://api.github.com/users/bmarty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bmarty/subscriptions","organizations_url":"https://api.github.com/users/bmarty/orgs","repos_url":"https://api.github.com/users/bmarty/repos","events_url":"https://api.github.com/users/bmarty/events{/privacy}","received_events_url":"https://api.github.com/users/bmarty/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"bmarty","id":3940906,"node_id":"MDQ6VXNlcjM5NDA5MDY=","avatar_url":"https://avatars.githubusercontent.com/u/3940906?v=4","gravatar_id":"","url":"https://api.github.com/users/bmarty","html_url":"https://github.com/bmarty","followers_url":"https://api.github.com/users/bmarty/followers","following_url":"https://api.github.com/users/bmarty/following{/other_user}","gists_url":"https://api.github.com/users/bmarty/gists{/gist_id}","starred_url":"https://api.github.com/users/bmarty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bmarty/subscriptions","organizations_url":"https://api.github.com/users/bmarty/orgs","repos_url":"https://api.github.com/users/bmarty/repos","events_url":"https://api.github.com/users/bmarty/events{/privacy}","received_events_url":"https://api.github.com/users/bmarty/received_events","type":"User","site_admin":false},"assignees":[{"login":"bmarty","id":3940906,"node_id":"MDQ6VXNlcjM5NDA5MDY=","avatar_url":"https://avatars.githubusercontent.com/u/3940906?v=4","gravatar_id":"","url":"https://api.github.com/users/bmarty","html_url":"https://github.com/bmarty","followers_url":"https://api.github.com/users/bmarty/followers","following_url":"https://api.github.com/users/bmarty/following{/other_user}","gists_url":"https://api.github.com/users/bmarty/gists{/gist_id}","starred_url":"https://api.github.com/users/bmarty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bmarty/subscriptions","organizations_url":"https://api.github.com/users/bmarty/orgs","repos_url":"https://api.github.com/users/bmarty/repos","events_url":"https://api.github.com/users/bmarty/events{/privacy}","received_events_url":"https://api.github.com/users/bmarty/received_events","type":"User","site_admin":false}],"milestone":null,"comments":0,"created_at":"2024-03-28T10:17:17Z","updated_at":"2024-03-28T10:17:17Z","closed_at":null,"author_association":"MEMBER","active_lock_reason":null,"body":"\r\n","reactions":{"url":"https://api.github.com/repos/element-hq/element-x-android/issues/2616/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2616/timeline","performed_via_github_app":null,"state_reason":null}},"public":true,"created_at":"2024-03-28T10:17:19Z","org":{"id":13446337,"login":"element-hq","gravatar_id":"","url":"https://api.github.com/orgs/element-hq","avatar_url":"https://avatars.githubusercontent.com/u/13446337?"}},{"id":"36959030528","type":"PushEvent","actor":{"id":3940906,"login":"bmarty","display_login":"bmarty","gravatar_id":"","url":"https://api.github.com/users/bmarty","avatar_url":"https://avatars.githubusercontent.com/u/3940906?"},"repo":{"id":546522002,"name":"element-hq/element-x-android","url":"https://api.github.com/repos/element-hq/element-x-android"},"payload":{"repository_id":546522002,"push_id":17742416328,"size":3,"distinct_size":3,"ref":"refs/heads/feature/bma/troubleshootNotification","head":"c9f68ef9ca96f41c7280f697c2e6fd92c3ba2007","before":"acba6557dba75c20b441fad6ef5576f14e0db21b","commits":[{"sha":"7da8cb3857e62cfb6c0369710a07eb8575e50ed1","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"Improve ScreenTracker.","distinct":true,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/7da8cb3857e62cfb6c0369710a07eb8575e50ed1"},{"sha":"cd39ebeb354d97a0fc571ae852aece21d050b141","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"Remove wrong comment","distinct":true,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/cd39ebeb354d97a0fc571ae852aece21d050b141"},{"sha":"c9f68ef9ca96f41c7280f697c2e6fd92c3ba2007","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"Improve openUrlInExternalApp API and move url to UnifiedPushConfig","distinct":true,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/c9f68ef9ca96f41c7280f697c2e6fd92c3ba2007"}]},"public":true,"created_at":"2024-03-28T08:44:13Z","org":{"id":13446337,"login":"element-hq","gravatar_id":"","url":"https://api.github.com/orgs/element-hq","avatar_url":"https://avatars.githubusercontent.com/u/13446337?"}},{"id":"36947395783","type":"PushEvent","actor":{"id":3940906,"login":"bmarty","display_login":"bmarty","gravatar_id":"","url":"https://api.github.com/users/bmarty","avatar_url":"https://avatars.githubusercontent.com/u/3940906?"},"repo":{"id":546522002,"name":"element-hq/element-x-android","url":"https://api.github.com/repos/element-hq/element-x-android"},"payload":{"repository_id":546522002,"push_id":17736436200,"size":1,"distinct_size":1,"ref":"refs/heads/feature/bma/troubleshootNotification","head":"acba6557dba75c20b441fad6ef5576f14e0db21b","before":"1ed2cfcf614cefdf0b6aa59745757618e1a5f5b4","commits":[{"sha":"acba6557dba75c20b441fad6ef5576f14e0db21b","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"towncrier","distinct":true,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/acba6557dba75c20b441fad6ef5576f14e0db21b"}]},"public":true,"created_at":"2024-03-27T21:46:29Z","org":{"id":13446337,"login":"element-hq","gravatar_id":"","url":"https://api.github.com/orgs/element-hq","avatar_url":"https://avatars.githubusercontent.com/u/13446337?"}},{"id":"36946759572","type":"PushEvent","actor":{"id":3940906,"login":"bmarty","display_login":"bmarty","gravatar_id":"","url":"https://api.github.com/users/bmarty","avatar_url":"https://avatars.githubusercontent.com/u/3940906?"},"repo":{"id":546522002,"name":"element-hq/element-x-android","url":"https://api.github.com/repos/element-hq/element-x-android"},"payload":{"repository_id":546522002,"push_id":17736129068,"size":0,"distinct_size":0,"ref":"refs/heads/feature/bma/troubleshootNotification","head":"5b186ae814d098cc4bf1fb1b37c69c74deb08a37","before":"e78e9d6bd8e14fa22756ef49a47048624a7dd007","commits":[]},"public":true,"created_at":"2024-03-27T21:17:08Z","org":{"id":13446337,"login":"element-hq","gravatar_id":"","url":"https://api.github.com/orgs/element-hq","avatar_url":"https://avatars.githubusercontent.com/u/13446337?"}},{"id":"36946733304","type":"PushEvent","actor":{"id":3940906,"login":"bmarty","display_login":"bmarty","gravatar_id":"","url":"https://api.github.com/users/bmarty","avatar_url":"https://avatars.githubusercontent.com/u/3940906?"},"repo":{"id":546522002,"name":"element-hq/element-x-android","url":"https://api.github.com/repos/element-hq/element-x-android"},"payload":{"repository_id":546522002,"push_id":17736116519,"size":13,"distinct_size":13,"ref":"refs/heads/feature/bma/troubleshootNotification","head":"e78e9d6bd8e14fa22756ef49a47048624a7dd007","before":"4a84c490d5b209f0aa42ce976ac84c689fb01662","commits":[{"sha":"1a0222c6b240e0b68459c780355a110b115bac2a","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"Avoid tryEmit(), use emit()","distinct":true,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/1a0222c6b240e0b68459c780355a110b115bac2a"},{"sha":"0b951d6fea3d6676da6324b1da829b86ed69f8ff","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"Update analytics event lib.","distinct":true,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/0b951d6fea3d6676da6324b1da829b86ed69f8ff"},{"sha":"355d2f23eb0714f78c7afa5cdb4abbe8561ab63e","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"Track NotificationTroubleshoot screen","distinct":true,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/355d2f23eb0714f78c7afa5cdb4abbe8561ab63e"},{"sha":"6aac36d033e82d61117e53b1910276034836df7e","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"Track NotificationTroubleshoot","distinct":true,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/6aac36d033e82d61117e53b1910276034836df7e"},{"sha":"e10ecd978bfbe4d18c83d1d4b011cb549b591167","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"use emit instead of tryEmit","distinct":true,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/e10ecd978bfbe4d18c83d1d4b011cb549b591167"},{"sha":"ad9f05dcbd1c19446bab1cabb908496050eeea00","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"FakeStringProvider: Ensure parameter are included in the result of getString()","distinct":true,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/ad9f05dcbd1c19446bab1cabb908496050eeea00"},{"sha":"e1dff753b3e606ed4977b3d921e0758aebe9631e","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"Fix test in VersionFormatterTest (there was a swap in the test names by the way).","distinct":true,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/e1dff753b3e606ed4977b3d921e0758aebe9631e"},{"sha":"a4c4ff35cef6609fd07a7b972a9b414bd59e4021","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"Localize Troubleshoot notification feature.","distinct":true,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/a4c4ff35cef6609fd07a7b972a9b414bd59e4021"},{"sha":"0828a9282e570e2930a67580078c9810bf7b2fac","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"Add test on NotificationSettingsView","distinct":true,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/0828a9282e570e2930a67580078c9810bf7b2fac"},{"sha":"139af673528dac95457cad22abf8e711ad213a9c","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"Improve preview management for NotificationSettingsView","distinct":true,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/139af673528dac95457cad22abf8e711ad213a9c"},{"sha":"f19becfdbd02e5745331694665894e94dffd0901","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"More tests on NotificationSettingsView.","distinct":true,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/f19becfdbd02e5745331694665894e94dffd0901"},{"sha":"5b186ae814d098cc4bf1fb1b37c69c74deb08a37","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"Code quality","distinct":true,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/5b186ae814d098cc4bf1fb1b37c69c74deb08a37"},{"sha":"e78e9d6bd8e14fa22756ef49a47048624a7dd007","author":{"email":"benoitm+elementbot@element.io","name":"ElementBot"},"message":"Update screenshots","distinct":true,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/e78e9d6bd8e14fa22756ef49a47048624a7dd007"}]},"public":true,"created_at":"2024-03-27T21:16:00Z","org":{"id":13446337,"login":"element-hq","gravatar_id":"","url":"https://api.github.com/orgs/element-hq","avatar_url":"https://avatars.githubusercontent.com/u/13446337?"}},{"id":"36946373230","type":"PushEvent","actor":{"id":3940906,"login":"bmarty","display_login":"bmarty","gravatar_id":"","url":"https://api.github.com/users/bmarty","avatar_url":"https://avatars.githubusercontent.com/u/3940906?"},"repo":{"id":546522002,"name":"element-hq/element-x-android","url":"https://api.github.com/repos/element-hq/element-x-android"},"payload":{"repository_id":546522002,"push_id":17735940717,"size":2,"distinct_size":2,"ref":"refs/heads/feature/bma/troubleshootNotification","head":"6129e3376fc0e164a3bea86409afdc40db42b292","before":"e9a4456d46402ca62edfbb43f995f125f05e63ac","commits":[{"sha":"2cb4d098223d2fbc290a54d8b6a74a05af65b7cd","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"Improve preview management for NotificationSettingsView","distinct":true,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/2cb4d098223d2fbc290a54d8b6a74a05af65b7cd"},{"sha":"6129e3376fc0e164a3bea86409afdc40db42b292","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"More tests on NotificationSettingsView.","distinct":true,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/6129e3376fc0e164a3bea86409afdc40db42b292"}]},"public":true,"created_at":"2024-03-27T21:00:42Z","org":{"id":13446337,"login":"element-hq","gravatar_id":"","url":"https://api.github.com/orgs/element-hq","avatar_url":"https://avatars.githubusercontent.com/u/13446337?"}},{"id":"36945958340","type":"PushEvent","actor":{"id":3940906,"login":"bmarty","display_login":"bmarty","gravatar_id":"","url":"https://api.github.com/users/bmarty","avatar_url":"https://avatars.githubusercontent.com/u/3940906?"},"repo":{"id":546522002,"name":"element-hq/element-x-android","url":"https://api.github.com/repos/element-hq/element-x-android"},"payload":{"repository_id":546522002,"push_id":17735745352,"size":1,"distinct_size":1,"ref":"refs/heads/feature/bma/troubleshootNotification","head":"e9a4456d46402ca62edfbb43f995f125f05e63ac","before":"cdaa581510c9f24c658d6b86a69d41869f20a845","commits":[{"sha":"e9a4456d46402ca62edfbb43f995f125f05e63ac","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"Add test on NotificationSettingsView","distinct":true,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/e9a4456d46402ca62edfbb43f995f125f05e63ac"}]},"public":true,"created_at":"2024-03-27T20:44:04Z","org":{"id":13446337,"login":"element-hq","gravatar_id":"","url":"https://api.github.com/orgs/element-hq","avatar_url":"https://avatars.githubusercontent.com/u/13446337?"}},{"id":"36944879406","type":"PushEvent","actor":{"id":3940906,"login":"bmarty","display_login":"bmarty","gravatar_id":"","url":"https://api.github.com/users/bmarty","avatar_url":"https://avatars.githubusercontent.com/u/3940906?"},"repo":{"id":546522002,"name":"element-hq/element-x-android","url":"https://api.github.com/repos/element-hq/element-x-android"},"payload":{"repository_id":546522002,"push_id":17735251623,"size":2,"distinct_size":2,"ref":"refs/heads/develop","head":"ac9b74ee7ce59244e330de9bb5dacd8e4c8f3a95","before":"347da7bcdb0e528718d64449f3211fe408f16b00","commits":[{"sha":"4162c888ca15a18079aa17378d278b22c77e274e","author":{"email":"29139614+renovate[bot]@users.noreply.github.com","name":"renovate[bot]"},"message":"Update dependency com.posthog:posthog-android to v3.1.16","distinct":true,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/4162c888ca15a18079aa17378d278b22c77e274e"},{"sha":"ac9b74ee7ce59244e330de9bb5dacd8e4c8f3a95","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"Merge pull request #2610 from element-hq/renovate/com.posthog-posthog-android-3.x\n\nUpdate dependency com.posthog:posthog-android to v3.1.16","distinct":true,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/ac9b74ee7ce59244e330de9bb5dacd8e4c8f3a95"}]},"public":true,"created_at":"2024-03-27T20:04:18Z","org":{"id":13446337,"login":"element-hq","gravatar_id":"","url":"https://api.github.com/orgs/element-hq","avatar_url":"https://avatars.githubusercontent.com/u/13446337?"}},{"id":"36944879329","type":"DeleteEvent","actor":{"id":3940906,"login":"bmarty","display_login":"bmarty","gravatar_id":"","url":"https://api.github.com/users/bmarty","avatar_url":"https://avatars.githubusercontent.com/u/3940906?"},"repo":{"id":546522002,"name":"element-hq/element-x-android","url":"https://api.github.com/repos/element-hq/element-x-android"},"payload":{"ref":"renovate/com.posthog-posthog-android-3.x","ref_type":"branch","pusher_type":"user"},"public":true,"created_at":"2024-03-27T20:04:18Z","org":{"id":13446337,"login":"element-hq","gravatar_id":"","url":"https://api.github.com/orgs/element-hq","avatar_url":"https://avatars.githubusercontent.com/u/13446337?"}},{"id":"36944879027","type":"PullRequestEvent","actor":{"id":3940906,"login":"bmarty","display_login":"bmarty","gravatar_id":"","url":"https://api.github.com/users/bmarty","avatar_url":"https://avatars.githubusercontent.com/u/3940906?"},"repo":{"id":546522002,"name":"element-hq/element-x-android","url":"https://api.github.com/repos/element-hq/element-x-android"},"payload":{"action":"closed","number":2610,"pull_request":{"url":"https://api.github.com/repos/element-hq/element-x-android/pulls/2610","id":1794044276,"node_id":"PR_kwDOIJNDks5q7vF0","html_url":"https://github.com/element-hq/element-x-android/pull/2610","diff_url":"https://github.com/element-hq/element-x-android/pull/2610.diff","patch_url":"https://github.com/element-hq/element-x-android/pull/2610.patch","issue_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2610","number":2610,"state":"closed","locked":false,"title":"Update dependency com.posthog:posthog-android to v3.1.16","user":{"login":"renovate[bot]","id":29139614,"node_id":"MDM6Qm90MjkxMzk2MTQ=","avatar_url":"https://avatars.githubusercontent.com/in/2740?v=4","gravatar_id":"","url":"https://api.github.com/users/renovate%5Bbot%5D","html_url":"https://github.com/apps/renovate","followers_url":"https://api.github.com/users/renovate%5Bbot%5D/followers","following_url":"https://api.github.com/users/renovate%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/renovate%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/renovate%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/renovate%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/renovate%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/renovate%5Bbot%5D/repos","events_url":"https://api.github.com/users/renovate%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/renovate%5Bbot%5D/received_events","type":"Bot","site_admin":false},"body":"[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)\n\nThis PR contains the following updates:\n\n| Package | Change | Age | Adoption | Passing | Confidence |\n|---|---|---|---|---|---|\n| [com.posthog:posthog-android](https://togithub.com/postHog/posthog-android) | `3.1.15` -> `3.1.16` | [![age](https://developer.mend.io/api/mc/badges/age/maven/com.posthog:posthog-android/3.1.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/com.posthog:posthog-android/3.1.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/com.posthog:posthog-android/3.1.15/3.1.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/com.posthog:posthog-android/3.1.15/3.1.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) |\n\n---\n\n> [!WARNING]\n> Some dependencies could not be looked up. Check the Dependency Dashboard for more information.\n\n---\n\n### Release Notes\n\n\npostHog/posthog-android (com.posthog:posthog-android)
\n\n### [`v3.1.16`](https://togithub.com/postHog/posthog-android/blob/HEAD/CHANGELOG.md#3116---2024-03-27)\n\n[Compare Source](https://togithub.com/postHog/posthog-android/compare/3.1.15...3.1.16)\n\nfix: add replay props only if replay is enabled ([#112](https://togithub.com/PostHog/posthog-android/pull/112))\n\n \n\n---\n\n### Configuration\n\n📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).\n\n🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.\n\nâ™» **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.\n\n🔕 **Ignore**: Close this PR and you won't be reminded about this update again.\n\n---\n\n - [ ] If you want to rebase/retry this PR, check this box\n\n---\n\nThis PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/element-hq/element-x-android).\n\n","created_at":"2024-03-27T14:04:27Z","updated_at":"2024-03-27T20:04:17Z","closed_at":"2024-03-27T20:04:16Z","merged_at":"2024-03-27T20:04:16Z","merge_commit_sha":"ac9b74ee7ce59244e330de9bb5dacd8e4c8f3a95","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[{"id":5178625567,"node_id":"LA_kwDOIJNDks8AAAABNKuOHw","url":"https://api.github.com/repos/element-hq/element-x-android/labels/dependencies","name":"dependencies","color":"0366d6","default":false,"description":"Pull requests that update a dependency file"}],"milestone":null,"draft":false,"commits_url":"https://api.github.com/repos/element-hq/element-x-android/pulls/2610/commits","review_comments_url":"https://api.github.com/repos/element-hq/element-x-android/pulls/2610/comments","review_comment_url":"https://api.github.com/repos/element-hq/element-x-android/pulls/comments{/number}","comments_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2610/comments","statuses_url":"https://api.github.com/repos/element-hq/element-x-android/statuses/4162c888ca15a18079aa17378d278b22c77e274e","head":{"label":"element-hq:renovate/com.posthog-posthog-android-3.x","ref":"renovate/com.posthog-posthog-android-3.x","sha":"4162c888ca15a18079aa17378d278b22c77e274e","user":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"repo":{"id":546522002,"node_id":"R_kgDOIJNDkg","name":"element-x-android","full_name":"element-hq/element-x-android","private":false,"owner":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/element-hq/element-x-android","description":"Android Matrix messenger application using the Matrix Rust Sdk and Jetpack Compose","fork":false,"url":"https://api.github.com/repos/element-hq/element-x-android","forks_url":"https://api.github.com/repos/element-hq/element-x-android/forks","keys_url":"https://api.github.com/repos/element-hq/element-x-android/keys{/key_id}","collaborators_url":"https://api.github.com/repos/element-hq/element-x-android/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/element-hq/element-x-android/teams","hooks_url":"https://api.github.com/repos/element-hq/element-x-android/hooks","issue_events_url":"https://api.github.com/repos/element-hq/element-x-android/issues/events{/number}","events_url":"https://api.github.com/repos/element-hq/element-x-android/events","assignees_url":"https://api.github.com/repos/element-hq/element-x-android/assignees{/user}","branches_url":"https://api.github.com/repos/element-hq/element-x-android/branches{/branch}","tags_url":"https://api.github.com/repos/element-hq/element-x-android/tags","blobs_url":"https://api.github.com/repos/element-hq/element-x-android/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/element-hq/element-x-android/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/element-hq/element-x-android/git/refs{/sha}","trees_url":"https://api.github.com/repos/element-hq/element-x-android/git/trees{/sha}","statuses_url":"https://api.github.com/repos/element-hq/element-x-android/statuses/{sha}","languages_url":"https://api.github.com/repos/element-hq/element-x-android/languages","stargazers_url":"https://api.github.com/repos/element-hq/element-x-android/stargazers","contributors_url":"https://api.github.com/repos/element-hq/element-x-android/contributors","subscribers_url":"https://api.github.com/repos/element-hq/element-x-android/subscribers","subscription_url":"https://api.github.com/repos/element-hq/element-x-android/subscription","commits_url":"https://api.github.com/repos/element-hq/element-x-android/commits{/sha}","git_commits_url":"https://api.github.com/repos/element-hq/element-x-android/git/commits{/sha}","comments_url":"https://api.github.com/repos/element-hq/element-x-android/comments{/number}","issue_comment_url":"https://api.github.com/repos/element-hq/element-x-android/issues/comments{/number}","contents_url":"https://api.github.com/repos/element-hq/element-x-android/contents/{+path}","compare_url":"https://api.github.com/repos/element-hq/element-x-android/compare/{base}...{head}","merges_url":"https://api.github.com/repos/element-hq/element-x-android/merges","archive_url":"https://api.github.com/repos/element-hq/element-x-android/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/element-hq/element-x-android/downloads","issues_url":"https://api.github.com/repos/element-hq/element-x-android/issues{/number}","pulls_url":"https://api.github.com/repos/element-hq/element-x-android/pulls{/number}","milestones_url":"https://api.github.com/repos/element-hq/element-x-android/milestones{/number}","notifications_url":"https://api.github.com/repos/element-hq/element-x-android/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/element-hq/element-x-android/labels{/name}","releases_url":"https://api.github.com/repos/element-hq/element-x-android/releases{/id}","deployments_url":"https://api.github.com/repos/element-hq/element-x-android/deployments","created_at":"2022-10-06T07:59:24Z","updated_at":"2024-03-27T11:56:47Z","pushed_at":"2024-03-27T20:04:17Z","git_url":"git://github.com/element-hq/element-x-android.git","ssh_url":"git@github.com:element-hq/element-x-android.git","clone_url":"https://github.com/element-hq/element-x-android.git","svn_url":"https://github.com/element-hq/element-x-android","homepage":"","size":433926,"stargazers_count":743,"watchers_count":743,"language":"Kotlin","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"has_discussions":false,"forks_count":92,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":207,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":["hacktoberfest","matrix"],"visibility":"public","forks":92,"open_issues":207,"watchers":743,"default_branch":"develop"}},"base":{"label":"element-hq:develop","ref":"develop","sha":"347da7bcdb0e528718d64449f3211fe408f16b00","user":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"repo":{"id":546522002,"node_id":"R_kgDOIJNDkg","name":"element-x-android","full_name":"element-hq/element-x-android","private":false,"owner":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/element-hq/element-x-android","description":"Android Matrix messenger application using the Matrix Rust Sdk and Jetpack Compose","fork":false,"url":"https://api.github.com/repos/element-hq/element-x-android","forks_url":"https://api.github.com/repos/element-hq/element-x-android/forks","keys_url":"https://api.github.com/repos/element-hq/element-x-android/keys{/key_id}","collaborators_url":"https://api.github.com/repos/element-hq/element-x-android/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/element-hq/element-x-android/teams","hooks_url":"https://api.github.com/repos/element-hq/element-x-android/hooks","issue_events_url":"https://api.github.com/repos/element-hq/element-x-android/issues/events{/number}","events_url":"https://api.github.com/repos/element-hq/element-x-android/events","assignees_url":"https://api.github.com/repos/element-hq/element-x-android/assignees{/user}","branches_url":"https://api.github.com/repos/element-hq/element-x-android/branches{/branch}","tags_url":"https://api.github.com/repos/element-hq/element-x-android/tags","blobs_url":"https://api.github.com/repos/element-hq/element-x-android/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/element-hq/element-x-android/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/element-hq/element-x-android/git/refs{/sha}","trees_url":"https://api.github.com/repos/element-hq/element-x-android/git/trees{/sha}","statuses_url":"https://api.github.com/repos/element-hq/element-x-android/statuses/{sha}","languages_url":"https://api.github.com/repos/element-hq/element-x-android/languages","stargazers_url":"https://api.github.com/repos/element-hq/element-x-android/stargazers","contributors_url":"https://api.github.com/repos/element-hq/element-x-android/contributors","subscribers_url":"https://api.github.com/repos/element-hq/element-x-android/subscribers","subscription_url":"https://api.github.com/repos/element-hq/element-x-android/subscription","commits_url":"https://api.github.com/repos/element-hq/element-x-android/commits{/sha}","git_commits_url":"https://api.github.com/repos/element-hq/element-x-android/git/commits{/sha}","comments_url":"https://api.github.com/repos/element-hq/element-x-android/comments{/number}","issue_comment_url":"https://api.github.com/repos/element-hq/element-x-android/issues/comments{/number}","contents_url":"https://api.github.com/repos/element-hq/element-x-android/contents/{+path}","compare_url":"https://api.github.com/repos/element-hq/element-x-android/compare/{base}...{head}","merges_url":"https://api.github.com/repos/element-hq/element-x-android/merges","archive_url":"https://api.github.com/repos/element-hq/element-x-android/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/element-hq/element-x-android/downloads","issues_url":"https://api.github.com/repos/element-hq/element-x-android/issues{/number}","pulls_url":"https://api.github.com/repos/element-hq/element-x-android/pulls{/number}","milestones_url":"https://api.github.com/repos/element-hq/element-x-android/milestones{/number}","notifications_url":"https://api.github.com/repos/element-hq/element-x-android/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/element-hq/element-x-android/labels{/name}","releases_url":"https://api.github.com/repos/element-hq/element-x-android/releases{/id}","deployments_url":"https://api.github.com/repos/element-hq/element-x-android/deployments","created_at":"2022-10-06T07:59:24Z","updated_at":"2024-03-27T11:56:47Z","pushed_at":"2024-03-27T20:04:17Z","git_url":"git://github.com/element-hq/element-x-android.git","ssh_url":"git@github.com:element-hq/element-x-android.git","clone_url":"https://github.com/element-hq/element-x-android.git","svn_url":"https://github.com/element-hq/element-x-android","homepage":"","size":433926,"stargazers_count":743,"watchers_count":743,"language":"Kotlin","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"has_discussions":false,"forks_count":92,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":207,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":["hacktoberfest","matrix"],"visibility":"public","forks":92,"open_issues":207,"watchers":743,"default_branch":"develop"}},"_links":{"self":{"href":"https://api.github.com/repos/element-hq/element-x-android/pulls/2610"},"html":{"href":"https://github.com/element-hq/element-x-android/pull/2610"},"issue":{"href":"https://api.github.com/repos/element-hq/element-x-android/issues/2610"},"comments":{"href":"https://api.github.com/repos/element-hq/element-x-android/issues/2610/comments"},"review_comments":{"href":"https://api.github.com/repos/element-hq/element-x-android/pulls/2610/comments"},"review_comment":{"href":"https://api.github.com/repos/element-hq/element-x-android/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/element-hq/element-x-android/pulls/2610/commits"},"statuses":{"href":"https://api.github.com/repos/element-hq/element-x-android/statuses/4162c888ca15a18079aa17378d278b22c77e274e"}},"author_association":"CONTRIBUTOR","auto_merge":null,"active_lock_reason":null,"merged":true,"mergeable":null,"rebaseable":null,"mergeable_state":"unknown","merged_by":{"login":"bmarty","id":3940906,"node_id":"MDQ6VXNlcjM5NDA5MDY=","avatar_url":"https://avatars.githubusercontent.com/u/3940906?v=4","gravatar_id":"","url":"https://api.github.com/users/bmarty","html_url":"https://github.com/bmarty","followers_url":"https://api.github.com/users/bmarty/followers","following_url":"https://api.github.com/users/bmarty/following{/other_user}","gists_url":"https://api.github.com/users/bmarty/gists{/gist_id}","starred_url":"https://api.github.com/users/bmarty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bmarty/subscriptions","organizations_url":"https://api.github.com/users/bmarty/orgs","repos_url":"https://api.github.com/users/bmarty/repos","events_url":"https://api.github.com/users/bmarty/events{/privacy}","received_events_url":"https://api.github.com/users/bmarty/received_events","type":"User","site_admin":false},"comments":3,"review_comments":0,"maintainer_can_modify":false,"commits":1,"additions":1,"deletions":1,"changed_files":1}},"public":true,"created_at":"2024-03-27T20:04:17Z","org":{"id":13446337,"login":"element-hq","gravatar_id":"","url":"https://api.github.com/orgs/element-hq","avatar_url":"https://avatars.githubusercontent.com/u/13446337?"}},{"id":"36944870652","type":"PushEvent","actor":{"id":3940906,"login":"bmarty","display_login":"bmarty","gravatar_id":"","url":"https://api.github.com/users/bmarty","avatar_url":"https://avatars.githubusercontent.com/u/3940906?"},"repo":{"id":546522002,"name":"element-hq/element-x-android","url":"https://api.github.com/repos/element-hq/element-x-android"},"payload":{"repository_id":546522002,"push_id":17735247729,"size":1,"distinct_size":1,"ref":"refs/heads/feature/bma/troubleshootNotification","head":"e737a8c8f8b57ff2c62e3f503a9dd8bb5a818410","before":"1587b5629a6b98eb9bf84a5c6580efba524bea6e","commits":[{"sha":"e737a8c8f8b57ff2c62e3f503a9dd8bb5a818410","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"Localize Troubleshoot notification feature.","distinct":true,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/e737a8c8f8b57ff2c62e3f503a9dd8bb5a818410"}]},"public":true,"created_at":"2024-03-27T20:04:01Z","org":{"id":13446337,"login":"element-hq","gravatar_id":"","url":"https://api.github.com/orgs/element-hq","avatar_url":"https://avatars.githubusercontent.com/u/13446337?"}},{"id":"36944860359","type":"PushEvent","actor":{"id":3940906,"login":"bmarty","display_login":"bmarty","gravatar_id":"","url":"https://api.github.com/users/bmarty","avatar_url":"https://avatars.githubusercontent.com/u/3940906?"},"repo":{"id":546522002,"name":"element-hq/element-x-android","url":"https://api.github.com/repos/element-hq/element-x-android"},"payload":{"repository_id":546522002,"push_id":17735243116,"size":4,"distinct_size":4,"ref":"refs/heads/feature/bma/troubleshootNotification","head":"1587b5629a6b98eb9bf84a5c6580efba524bea6e","before":"3d210076798c5f904ce3ed0f9b2904fb6881f7da","commits":[{"sha":"9ac018c80eff8efbb54199d7ac5afcf0d99d1f42","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"FakeStringProvider: Ensure parameter are included in the result of getString()","distinct":true,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/9ac018c80eff8efbb54199d7ac5afcf0d99d1f42"},{"sha":"ddf4e14a9bc858d56ed58e38d50fc65f04922917","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"Fix test in VersionFormatterTest (there was a swap in the test names by the way).","distinct":true,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/ddf4e14a9bc858d56ed58e38d50fc65f04922917"},{"sha":"0738a519476338bb4ff5e9dabad5e7af3745bf83","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"DROP THIS COMMIT","distinct":true,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/0738a519476338bb4ff5e9dabad5e7af3745bf83"},{"sha":"1587b5629a6b98eb9bf84a5c6580efba524bea6e","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"Localize Troubleshoot notification feature.","distinct":true,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/1587b5629a6b98eb9bf84a5c6580efba524bea6e"}]},"public":true,"created_at":"2024-03-27T20:03:40Z","org":{"id":13446337,"login":"element-hq","gravatar_id":"","url":"https://api.github.com/orgs/element-hq","avatar_url":"https://avatars.githubusercontent.com/u/13446337?"}},{"id":"36936519338","type":"PushEvent","actor":{"id":3940906,"login":"bmarty","display_login":"bmarty","gravatar_id":"","url":"https://api.github.com/users/bmarty","avatar_url":"https://avatars.githubusercontent.com/u/3940906?"},"repo":{"id":546522002,"name":"element-hq/element-x-android","url":"https://api.github.com/repos/element-hq/element-x-android"},"payload":{"repository_id":546522002,"push_id":17731595268,"size":29,"distinct_size":10,"ref":"refs/heads/feature/bma/troubleshootNotification","head":"3d210076798c5f904ce3ed0f9b2904fb6881f7da","before":"72a5f19d9f9bea72403f9c9e57f7ceffb91e033e","commits":[{"sha":"759022ec92cb879fdae8020a61737b6256006563","author":{"email":"jorgem@element.io","name":"Jorge MartÃn"},"message":"Update member list after changing member roles\n\nAlso do it when the user enters the room member list screen.","distinct":false,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/759022ec92cb879fdae8020a61737b6256006563"},{"sha":"9f2726ec4f919e74438356172cd13379d252bfc6","author":{"email":"jorgem@element.io","name":"Jorge MartÃn"},"message":"Only retrieve active users in `RoomMemberListDataSource`","distinct":false,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/9f2726ec4f919e74438356172cd13379d252bfc6"},{"sha":"5030257950fec4813d51650a11479d9b1b78c39d","author":{"email":"jorgem@element.io","name":"Jorge MartÃn"},"message":"Add changelog","distinct":false,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/5030257950fec4813d51650a11479d9b1b78c39d"},{"sha":"e4aaf6af2f00550908fca4f3d73e8420570a0d70","author":{"email":"francoisg@matrix.org","name":"ganfra"},"message":"RoomList filters : enable the feature for production build","distinct":false,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/e4aaf6af2f00550908fca4f3d73e8420570a0d70"},{"sha":"d59adf1be041ec44be3c7c0a1cd286a62f0d3ab2","author":{"email":"29139614+renovate[bot]@users.noreply.github.com","name":"renovate[bot]"},"message":"Update telephoto to v0.9.0","distinct":false,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/d59adf1be041ec44be3c7c0a1cd286a62f0d3ab2"},{"sha":"8d8dc0755417efac4d5f53bf5caec897e82873eb","author":{"email":"francoisg@matrix.org","name":"ganfra"},"message":"Merge pull request #2604 from element-hq/renovate/telephoto\n\nUpdate telephoto to v0.9.0","distinct":false,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/8d8dc0755417efac4d5f53bf5caec897e82873eb"},{"sha":"865b8b0001e08e3446b28e880bf8f2e9c417487c","author":{"email":"francoisg@matrix.org","name":"ganfra"},"message":"Merge pull request #2591 from element-hq/fix/jme/2590-update-room-member-list-after-changing-roles\n\nUpdate member list after changing member roles","distinct":false,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/865b8b0001e08e3446b28e880bf8f2e9c417487c"},{"sha":"5faff47d704b83398fbac5e070003b21beacfb51","author":{"email":"29139614+renovate[bot]@users.noreply.github.com","name":"renovate[bot]"},"message":"Update dependency org.matrix.rustcomponents:sdk-android to v0.2.12","distinct":false,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/5faff47d704b83398fbac5e070003b21beacfb51"},{"sha":"f31b50a60f663d7a94fffd3f3771e480ad9774b4","author":{"email":"francoisg@matrix.org","name":"ganfra"},"message":"Merge pull request #2605 from element-hq/feature/fga/enable_room_list_filters\n\nRoomList filters : enable the feature for production build","distinct":false,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/f31b50a60f663d7a94fffd3f3771e480ad9774b4"},{"sha":"24ed4977765f7ce8507b8159f83ab67a55b5133f","author":{"email":"francoisg@matrix.org","name":"ganfra"},"message":"Merge pull request #2607 from element-hq/renovate/org.matrix.rustcomponents-sdk-android-0.x\n\nUpdate dependency org.matrix.rustcomponents:sdk-android to v0.2.12","distinct":false,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/24ed4977765f7ce8507b8159f83ab67a55b5133f"},{"sha":"2d9847bca3c6f64116bb3c1f77b8a58f85842188","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"Changelog for version 0.4.7","distinct":false,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/2d9847bca3c6f64116bb3c1f77b8a58f85842188"},{"sha":"25b97b647ea8eed971813c55ab2d8439ec8b93a3","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"Adding fastlane file for version 0.4.7","distinct":false,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/25b97b647ea8eed971813c55ab2d8439ec8b93a3"},{"sha":"7994e5d89d833b7c3ecfca89fc6e6a8b3fa8c459","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"Merge branch 'release/0.4.7' into main","distinct":false,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/7994e5d89d833b7c3ecfca89fc6e6a8b3fa8c459"},{"sha":"845627c0cf52075078195f189f047630cb68171a","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"Merge tag 'v0.4.7' into develop\n\ntag","distinct":false,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/845627c0cf52075078195f189f047630cb68171a"},{"sha":"d3f8962b2bcfbea7bba6e62c6764631d9b573171","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"version++","distinct":false,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/d3f8962b2bcfbea7bba6e62c6764631d9b573171"},{"sha":"16056ef78710dfe9a888706dc0834454db7b07ab","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"Rename `PollAnswerItem.isDisclosed` to `PollAnswerItem.showVotes` for clarity.\nIndeed the value is set to true for disclosed poll or if poll is ended.","distinct":false,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/16056ef78710dfe9a888706dc0834454db7b07ab"},{"sha":"3f85d4e566c34d3b0a4c4e1e32da1a75d35b2fb9","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"Add trophy icon next the the winner vote in polls.","distinct":false,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/3f85d4e566c34d3b0a4c4e1e32da1a75d35b2fb9"},{"sha":"ea73c517c4caa411a4dbd4c856bf4a12fe34c18d","author":{"email":"benoitm+elementbot@element.io","name":"ElementBot"},"message":"Update screenshots","distinct":false,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/ea73c517c4caa411a4dbd4c856bf4a12fe34c18d"},{"sha":"347da7bcdb0e528718d64449f3211fe408f16b00","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"Merge pull request #2609 from element-hq/feature/bma/pollTrophy\n\nPoll trophy","distinct":false,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/347da7bcdb0e528718d64449f3211fe408f16b00"},{"sha":"ee2790a67da372aa86ecde517c133c14c3d78dba","author":{"email":"benoit@matrix.org","name":"Benoit Marty"},"message":"Kotlin 1.9.23","distinct":true,"url":"https://api.github.com/repos/element-hq/element-x-android/commits/ee2790a67da372aa86ecde517c133c14c3d78dba"}]},"public":true,"created_at":"2024-03-27T15:48:08Z","org":{"id":13446337,"login":"element-hq","gravatar_id":"","url":"https://api.github.com/orgs/element-hq","avatar_url":"https://avatars.githubusercontent.com/u/13446337?"}},{"id":"36936459481","type":"PullRequestReviewEvent","actor":{"id":3940906,"login":"bmarty","display_login":"bmarty","gravatar_id":"","url":"https://api.github.com/users/bmarty","avatar_url":"https://avatars.githubusercontent.com/u/3940906?"},"repo":{"id":546522002,"name":"element-hq/element-x-android","url":"https://api.github.com/repos/element-hq/element-x-android"},"payload":{"action":"created","review":{"id":1963747729,"node_id":"PRR_kwDOIJNDks51DGmR","user":{"login":"bmarty","id":3940906,"node_id":"MDQ6VXNlcjM5NDA5MDY=","avatar_url":"https://avatars.githubusercontent.com/u/3940906?v=4","gravatar_id":"","url":"https://api.github.com/users/bmarty","html_url":"https://github.com/bmarty","followers_url":"https://api.github.com/users/bmarty/followers","following_url":"https://api.github.com/users/bmarty/following{/other_user}","gists_url":"https://api.github.com/users/bmarty/gists{/gist_id}","starred_url":"https://api.github.com/users/bmarty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bmarty/subscriptions","organizations_url":"https://api.github.com/users/bmarty/orgs","repos_url":"https://api.github.com/users/bmarty/repos","events_url":"https://api.github.com/users/bmarty/events{/privacy}","received_events_url":"https://api.github.com/users/bmarty/received_events","type":"User","site_admin":false},"body":"","commit_id":"4162c888ca15a18079aa17378d278b22c77e274e","submitted_at":"2024-03-27T15:46:26Z","state":"approved","html_url":"https://github.com/element-hq/element-x-android/pull/2610#pullrequestreview-1963747729","pull_request_url":"https://api.github.com/repos/element-hq/element-x-android/pulls/2610","author_association":"MEMBER","_links":{"html":{"href":"https://github.com/element-hq/element-x-android/pull/2610#pullrequestreview-1963747729"},"pull_request":{"href":"https://api.github.com/repos/element-hq/element-x-android/pulls/2610"}}},"pull_request":{"url":"https://api.github.com/repos/element-hq/element-x-android/pulls/2610","id":1794044276,"node_id":"PR_kwDOIJNDks5q7vF0","html_url":"https://github.com/element-hq/element-x-android/pull/2610","diff_url":"https://github.com/element-hq/element-x-android/pull/2610.diff","patch_url":"https://github.com/element-hq/element-x-android/pull/2610.patch","issue_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2610","number":2610,"state":"open","locked":false,"title":"Update dependency com.posthog:posthog-android to v3.1.16","user":{"login":"renovate[bot]","id":29139614,"node_id":"MDM6Qm90MjkxMzk2MTQ=","avatar_url":"https://avatars.githubusercontent.com/in/2740?v=4","gravatar_id":"","url":"https://api.github.com/users/renovate%5Bbot%5D","html_url":"https://github.com/apps/renovate","followers_url":"https://api.github.com/users/renovate%5Bbot%5D/followers","following_url":"https://api.github.com/users/renovate%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/renovate%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/renovate%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/renovate%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/renovate%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/renovate%5Bbot%5D/repos","events_url":"https://api.github.com/users/renovate%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/renovate%5Bbot%5D/received_events","type":"Bot","site_admin":false},"body":"[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)\n\nThis PR contains the following updates:\n\n| Package | Change | Age | Adoption | Passing | Confidence |\n|---|---|---|---|---|---|\n| [com.posthog:posthog-android](https://togithub.com/postHog/posthog-android) | `3.1.15` -> `3.1.16` | [![age](https://developer.mend.io/api/mc/badges/age/maven/com.posthog:posthog-android/3.1.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/com.posthog:posthog-android/3.1.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/com.posthog:posthog-android/3.1.15/3.1.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/com.posthog:posthog-android/3.1.15/3.1.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) |\n\n---\n\n> [!WARNING]\n> Some dependencies could not be looked up. Check the Dependency Dashboard for more information.\n\n---\n\n### Release Notes\n\n\npostHog/posthog-android (com.posthog:posthog-android)
\n\n### [`v3.1.16`](https://togithub.com/postHog/posthog-android/blob/HEAD/CHANGELOG.md#3116---2024-03-27)\n\n[Compare Source](https://togithub.com/postHog/posthog-android/compare/3.1.15...3.1.16)\n\nfix: add replay props only if replay is enabled ([#112](https://togithub.com/PostHog/posthog-android/pull/112))\n\n \n\n---\n\n### Configuration\n\n📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).\n\n🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.\n\n♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.\n\n🔕 **Ignore**: Close this PR and you won't be reminded about this update again.\n\n---\n\n - [ ] If you want to rebase/retry this PR, check this box\n\n---\n\nThis PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/element-hq/element-x-android).\n\n","created_at":"2024-03-27T14:04:27Z","updated_at":"2024-03-27T15:46:26Z","closed_at":null,"merged_at":null,"merge_commit_sha":"43c6414a362f2acb4853e9595c7593a0474ecfd7","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[{"id":5178625567,"node_id":"LA_kwDOIJNDks8AAAABNKuOHw","url":"https://api.github.com/repos/element-hq/element-x-android/labels/dependencies","name":"dependencies","color":"0366d6","default":false,"description":"Pull requests that update a dependency file"}],"milestone":null,"draft":false,"commits_url":"https://api.github.com/repos/element-hq/element-x-android/pulls/2610/commits","review_comments_url":"https://api.github.com/repos/element-hq/element-x-android/pulls/2610/comments","review_comment_url":"https://api.github.com/repos/element-hq/element-x-android/pulls/comments{/number}","comments_url":"https://api.github.com/repos/element-hq/element-x-android/issues/2610/comments","statuses_url":"https://api.github.com/repos/element-hq/element-x-android/statuses/4162c888ca15a18079aa17378d278b22c77e274e","head":{"label":"element-hq:renovate/com.posthog-posthog-android-3.x","ref":"renovate/com.posthog-posthog-android-3.x","sha":"4162c888ca15a18079aa17378d278b22c77e274e","user":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"repo":{"id":546522002,"node_id":"R_kgDOIJNDkg","name":"element-x-android","full_name":"element-hq/element-x-android","private":false,"owner":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/element-hq/element-x-android","description":"Android Matrix messenger application using the Matrix Rust Sdk and Jetpack Compose","fork":false,"url":"https://api.github.com/repos/element-hq/element-x-android","forks_url":"https://api.github.com/repos/element-hq/element-x-android/forks","keys_url":"https://api.github.com/repos/element-hq/element-x-android/keys{/key_id}","collaborators_url":"https://api.github.com/repos/element-hq/element-x-android/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/element-hq/element-x-android/teams","hooks_url":"https://api.github.com/repos/element-hq/element-x-android/hooks","issue_events_url":"https://api.github.com/repos/element-hq/element-x-android/issues/events{/number}","events_url":"https://api.github.com/repos/element-hq/element-x-android/events","assignees_url":"https://api.github.com/repos/element-hq/element-x-android/assignees{/user}","branches_url":"https://api.github.com/repos/element-hq/element-x-android/branches{/branch}","tags_url":"https://api.github.com/repos/element-hq/element-x-android/tags","blobs_url":"https://api.github.com/repos/element-hq/element-x-android/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/element-hq/element-x-android/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/element-hq/element-x-android/git/refs{/sha}","trees_url":"https://api.github.com/repos/element-hq/element-x-android/git/trees{/sha}","statuses_url":"https://api.github.com/repos/element-hq/element-x-android/statuses/{sha}","languages_url":"https://api.github.com/repos/element-hq/element-x-android/languages","stargazers_url":"https://api.github.com/repos/element-hq/element-x-android/stargazers","contributors_url":"https://api.github.com/repos/element-hq/element-x-android/contributors","subscribers_url":"https://api.github.com/repos/element-hq/element-x-android/subscribers","subscription_url":"https://api.github.com/repos/element-hq/element-x-android/subscription","commits_url":"https://api.github.com/repos/element-hq/element-x-android/commits{/sha}","git_commits_url":"https://api.github.com/repos/element-hq/element-x-android/git/commits{/sha}","comments_url":"https://api.github.com/repos/element-hq/element-x-android/comments{/number}","issue_comment_url":"https://api.github.com/repos/element-hq/element-x-android/issues/comments{/number}","contents_url":"https://api.github.com/repos/element-hq/element-x-android/contents/{+path}","compare_url":"https://api.github.com/repos/element-hq/element-x-android/compare/{base}...{head}","merges_url":"https://api.github.com/repos/element-hq/element-x-android/merges","archive_url":"https://api.github.com/repos/element-hq/element-x-android/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/element-hq/element-x-android/downloads","issues_url":"https://api.github.com/repos/element-hq/element-x-android/issues{/number}","pulls_url":"https://api.github.com/repos/element-hq/element-x-android/pulls{/number}","milestones_url":"https://api.github.com/repos/element-hq/element-x-android/milestones{/number}","notifications_url":"https://api.github.com/repos/element-hq/element-x-android/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/element-hq/element-x-android/labels{/name}","releases_url":"https://api.github.com/repos/element-hq/element-x-android/releases{/id}","deployments_url":"https://api.github.com/repos/element-hq/element-x-android/deployments","created_at":"2022-10-06T07:59:24Z","updated_at":"2024-03-27T11:56:47Z","pushed_at":"2024-03-27T15:22:29Z","git_url":"git://github.com/element-hq/element-x-android.git","ssh_url":"git@github.com:element-hq/element-x-android.git","clone_url":"https://github.com/element-hq/element-x-android.git","svn_url":"https://github.com/element-hq/element-x-android","homepage":"","size":433913,"stargazers_count":743,"watchers_count":743,"language":"Kotlin","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"has_discussions":false,"forks_count":92,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":208,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":["hacktoberfest","matrix"],"visibility":"public","forks":92,"open_issues":208,"watchers":743,"default_branch":"develop"}},"base":{"label":"element-hq:develop","ref":"develop","sha":"347da7bcdb0e528718d64449f3211fe408f16b00","user":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"repo":{"id":546522002,"node_id":"R_kgDOIJNDkg","name":"element-x-android","full_name":"element-hq/element-x-android","private":false,"owner":{"login":"element-hq","id":13446337,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNDQ2MzM3","avatar_url":"https://avatars.githubusercontent.com/u/13446337?v=4","gravatar_id":"","url":"https://api.github.com/users/element-hq","html_url":"https://github.com/element-hq","followers_url":"https://api.github.com/users/element-hq/followers","following_url":"https://api.github.com/users/element-hq/following{/other_user}","gists_url":"https://api.github.com/users/element-hq/gists{/gist_id}","starred_url":"https://api.github.com/users/element-hq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/element-hq/subscriptions","organizations_url":"https://api.github.com/users/element-hq/orgs","repos_url":"https://api.github.com/users/element-hq/repos","events_url":"https://api.github.com/users/element-hq/events{/privacy}","received_events_url":"https://api.github.com/users/element-hq/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/element-hq/element-x-android","description":"Android Matrix messenger application using the Matrix Rust Sdk and Jetpack Compose","fork":false,"url":"https://api.github.com/repos/element-hq/element-x-android","forks_url":"https://api.github.com/repos/element-hq/element-x-android/forks","keys_url":"https://api.github.com/repos/element-hq/element-x-android/keys{/key_id}","collaborators_url":"https://api.github.com/repos/element-hq/element-x-android/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/element-hq/element-x-android/teams","hooks_url":"https://api.github.com/repos/element-hq/element-x-android/hooks","issue_events_url":"https://api.github.com/repos/element-hq/element-x-android/issues/events{/number}","events_url":"https://api.github.com/repos/element-hq/element-x-android/events","assignees_url":"https://api.github.com/repos/element-hq/element-x-android/assignees{/user}","branches_url":"https://api.github.com/repos/element-hq/element-x-android/branches{/branch}","tags_url":"https://api.github.com/repos/element-hq/element-x-android/tags","blobs_url":"https://api.github.com/repos/element-hq/element-x-android/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/element-hq/element-x-android/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/element-hq/element-x-android/git/refs{/sha}","trees_url":"https://api.github.com/repos/element-hq/element-x-android/git/trees{/sha}","statuses_url":"https://api.github.com/repos/element-hq/element-x-android/statuses/{sha}","languages_url":"https://api.github.com/repos/element-hq/element-x-android/languages","stargazers_url":"https://api.github.com/repos/element-hq/element-x-android/stargazers","contributors_url":"https://api.github.com/repos/element-hq/element-x-android/contributors","subscribers_url":"https://api.github.com/repos/element-hq/element-x-android/subscribers","subscription_url":"https://api.github.com/repos/element-hq/element-x-android/subscription","commits_url":"https://api.github.com/repos/element-hq/element-x-android/commits{/sha}","git_commits_url":"https://api.github.com/repos/element-hq/element-x-android/git/commits{/sha}","comments_url":"https://api.github.com/repos/element-hq/element-x-android/comments{/number}","issue_comment_url":"https://api.github.com/repos/element-hq/element-x-android/issues/comments{/number}","contents_url":"https://api.github.com/repos/element-hq/element-x-android/contents/{+path}","compare_url":"https://api.github.com/repos/element-hq/element-x-android/compare/{base}...{head}","merges_url":"https://api.github.com/repos/element-hq/element-x-android/merges","archive_url":"https://api.github.com/repos/element-hq/element-x-android/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/element-hq/element-x-android/downloads","issues_url":"https://api.github.com/repos/element-hq/element-x-android/issues{/number}","pulls_url":"https://api.github.com/repos/element-hq/element-x-android/pulls{/number}","milestones_url":"https://api.github.com/repos/element-hq/element-x-android/milestones{/number}","notifications_url":"https://api.github.com/repos/element-hq/element-x-android/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/element-hq/element-x-android/labels{/name}","releases_url":"https://api.github.com/repos/element-hq/element-x-android/releases{/id}","deployments_url":"https://api.github.com/repos/element-hq/element-x-android/deployments","created_at":"2022-10-06T07:59:24Z","updated_at":"2024-03-27T11:56:47Z","pushed_at":"2024-03-27T15:22:29Z","git_url":"git://github.com/element-hq/element-x-android.git","ssh_url":"git@github.com:element-hq/element-x-android.git","clone_url":"https://github.com/element-hq/element-x-android.git","svn_url":"https://github.com/element-hq/element-x-android","homepage":"","size":433913,"stargazers_count":743,"watchers_count":743,"language":"Kotlin","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"has_discussions":false,"forks_count":92,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":208,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":["hacktoberfest","matrix"],"visibility":"public","forks":92,"open_issues":208,"watchers":743,"default_branch":"develop"}},"_links":{"self":{"href":"https://api.github.com/repos/element-hq/element-x-android/pulls/2610"},"html":{"href":"https://github.com/element-hq/element-x-android/pull/2610"},"issue":{"href":"https://api.github.com/repos/element-hq/element-x-android/issues/2610"},"comments":{"href":"https://api.github.com/repos/element-hq/element-x-android/issues/2610/comments"},"review_comments":{"href":"https://api.github.com/repos/element-hq/element-x-android/pulls/2610/comments"},"review_comment":{"href":"https://api.github.com/repos/element-hq/element-x-android/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/element-hq/element-x-android/pulls/2610/commits"},"statuses":{"href":"https://api.github.com/repos/element-hq/element-x-android/statuses/4162c888ca15a18079aa17378d278b22c77e274e"}},"author_association":"CONTRIBUTOR","auto_merge":null,"active_lock_reason":null}},"public":true,"created_at":"2024-03-27T15:46:27Z","org":{"id":13446337,"login":"element-hq","gravatar_id":"","url":"https://api.github.com/orgs/element-hq","avatar_url":"https://avatars.githubusercontent.com/u/13446337?"}}]