{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":654814112,"defaultBranch":"main","name":"retro-aim-server","ownerLogin":"mk6i","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2023-06-17T03:16:14.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/2894330?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1717644878.0","currentOid":""},"activityList":{"items":[{"before":null,"after":"b79b091d7ad7b4baf551f7aa0fb1831f2168bfdf","ref":"refs/heads/refactor-oservice","pushedAt":"2024-06-06T03:34:38.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"mk6i","name":"Mike","path":"/mk6i","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2894330?s=80&v=4"},"commit":{"message":"clean up OServiceService","shortMessageHtmlLink":"clean up OServiceService"}},{"before":"331b64f5192aad2170a62f96d5f1378b997404b2","after":null,"ref":"refs/heads/refactoring-buddy-arrived","pushedAt":"2024-06-06T03:15:11.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"mk6i","name":"Mike","path":"/mk6i","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2894330?s=80&v=4"}},{"before":"77bf07d34987b827b24ba817811c3a15ab62a025","after":"331b64f5192aad2170a62f96d5f1378b997404b2","ref":"refs/heads/main","pushedAt":"2024-06-06T01:45:16.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mk6i","name":"Mike","path":"/mk6i","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2894330?s=80&v=4"},"commit":{"message":"converted buddy arrival/departure funcs to methods\n\nThis commit converts the following functions into methods on the Buddy\nservice:\n\n- broadcastArrival\n- broadcastDeparture\n- unicastArrival\n- unicastDeparture\n\nThese functions required extensive mocking of the MessageRelayer,\nFeedbagManager, and LegacyBuddyListManager for each call.\n\nNow that these functions are methods, it's easier to mock them rather\nthan mock all of their dependencies. This reduces a lot of effort needed\nto write unit tests for functions that send buddy arrival/departure\nnotifications.","shortMessageHtmlLink":"converted buddy arrival/departure funcs to methods"}},{"before":"5c6365114a8d5ae3517bd0b83c9adfbd438ca978","after":"331b64f5192aad2170a62f96d5f1378b997404b2","ref":"refs/heads/refactoring-buddy-arrived","pushedAt":"2024-06-06T01:40:45.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"mk6i","name":"Mike","path":"/mk6i","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2894330?s=80&v=4"},"commit":{"message":"converted buddy arrival/departure funcs to methods\n\nThis commit converts the following functions into methods on the Buddy\nservice:\n\n- broadcastArrival\n- broadcastDeparture\n- unicastArrival\n- unicastDeparture\n\nThese functions required extensive mocking of the MessageRelayer,\nFeedbagManager, and LegacyBuddyListManager for each call.\n\nNow that these functions are methods, it's easier to mock them rather\nthan mock all of their dependencies. This reduces a lot of effort needed\nto write unit tests for functions that send buddy arrival/departure\nnotifications.","shortMessageHtmlLink":"converted buddy arrival/departure funcs to methods"}},{"before":"90c67dbffa4b528fd50421508f6bfb83e8a04591","after":"5c6365114a8d5ae3517bd0b83c9adfbd438ca978","ref":"refs/heads/refactoring-buddy-arrived","pushedAt":"2024-06-06T01:31:53.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"mk6i","name":"Mike","path":"/mk6i","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2894330?s=80&v=4"},"commit":{"message":"refactoring","shortMessageHtmlLink":"refactoring"}},{"before":"a04489e78ea77dd036ac92847978e889a37b30df","after":"90c67dbffa4b528fd50421508f6bfb83e8a04591","ref":"refs/heads/refactoring-buddy-arrived","pushedAt":"2024-06-06T01:19:05.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"mk6i","name":"Mike","path":"/mk6i","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2894330?s=80&v=4"},"commit":{"message":"refactoring","shortMessageHtmlLink":"refactoring"}},{"before":"f618c44f983659fc0365d73c65dd888c4c657a48","after":"a04489e78ea77dd036ac92847978e889a37b30df","ref":"refs/heads/refactoring-buddy-arrived","pushedAt":"2024-06-05T03:34:17.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mk6i","name":"Mike","path":"/mk6i","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2894330?s=80&v=4"},"commit":{"message":"refactoring","shortMessageHtmlLink":"refactoring"}},{"before":"4819a393ec21d8f9013e38484d745e74ec7e5aff","after":"f618c44f983659fc0365d73c65dd888c4c657a48","ref":"refs/heads/refactoring-buddy-arrived","pushedAt":"2024-06-05T03:22:16.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mk6i","name":"Mike","path":"/mk6i","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2894330?s=80&v=4"},"commit":{"message":"refactoring","shortMessageHtmlLink":"refactoring"}},{"before":"9334faeb21272824f334d94a479fad233450fc99","after":"4819a393ec21d8f9013e38484d745e74ec7e5aff","ref":"refs/heads/refactoring-buddy-arrived","pushedAt":"2024-06-05T03:02:49.000Z","pushType":"push","commitsCount":6,"pusher":{"login":"mk6i","name":"Mike","path":"/mk6i","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2894330?s=80&v=4"},"commit":{"message":"refactoring","shortMessageHtmlLink":"refactoring"}},{"before":"a2c7c5e7e0ec498d4df556cc56930e2665112062","after":"9334faeb21272824f334d94a479fad233450fc99","ref":"refs/heads/refactoring-buddy-arrived","pushedAt":"2024-06-05T02:17:15.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"mk6i","name":"Mike","path":"/mk6i","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2894330?s=80&v=4"},"commit":{"message":"refactoring","shortMessageHtmlLink":"refactoring"}},{"before":null,"after":"a2c7c5e7e0ec498d4df556cc56930e2665112062","ref":"refs/heads/refactoring-buddy-arrived","pushedAt":"2024-06-05T00:50:52.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"mk6i","name":"Mike","path":"/mk6i","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2894330?s=80&v=4"},"commit":{"message":"refactoring","shortMessageHtmlLink":"refactoring"}},{"before":"7dc2057ee96b3e7277f55e5dfc83a5249cfc419a","after":"77bf07d34987b827b24ba817811c3a15ab62a025","ref":"refs/heads/main","pushedAt":"2024-06-02T14:57:14.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mk6i","name":"Mike","path":"/mk6i","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2894330?s=80&v=4"},"commit":{"message":"decouple auth service from bos service","shortMessageHtmlLink":"decouple auth service from bos service"}},{"before":"d03adfcd8f94c1dd6d6ff300da84f5ffa0239905","after":"7dc2057ee96b3e7277f55e5dfc83a5249cfc419a","ref":"refs/heads/main","pushedAt":"2024-06-02T14:41:54.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"mk6i","name":"Mike","path":"/mk6i","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2894330?s=80&v=4"},"commit":{"message":"Merge pull request #40 from jgknight/add-evil-offline-unittest\n\nAdd unit tests for warning offline user","shortMessageHtmlLink":"Merge pull request #40 from jgknight/add-evil-offline-unittest"}},{"before":"e78cfc3ecc9f22c424a7479e3898a2369b631b61","after":"d03adfcd8f94c1dd6d6ff300da84f5ffa0239905","ref":"refs/heads/main","pushedAt":"2024-06-01T16:00:31.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"mk6i","name":"Mike","path":"/mk6i","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2894330?s=80&v=4"},"commit":{"message":"Merge pull request #39 from jgknight/jgknight/fix-38-warn-crash\n\nFix crash when warning offline user","shortMessageHtmlLink":"Merge pull request #39 from jgknight/jgknight/fix-38-warn-crash"}},{"before":"643b26edcb69363a79437a38c01dc1286a83a50b","after":"e78cfc3ecc9f22c424a7479e3898a2369b631b61","ref":"refs/heads/main","pushedAt":"2024-06-01T13:38:35.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"mk6i","name":"Mike","path":"/mk6i","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2894330?s=80&v=4"},"commit":{"message":"make chat work for AIM 2.x-3.5\n\n- implement SNAC(0x0D,0x03) RequestExchangeInfo\n- rearrange TLV ordering in SNAC(0x0E,0x05) ChatChannelMsgToHost so\n that screen names appear correctly in chat window.","shortMessageHtmlLink":"make chat work for AIM 2.x-3.5"}},{"before":"f05b0c1b05f39d5a07612b4f31e424c722bb86df","after":"643b26edcb69363a79437a38c01dc1286a83a50b","ref":"refs/heads/main","pushedAt":"2024-05-29T00:46:25.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"mk6i","name":"Mike","path":"/mk6i","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2894330?s=80&v=4"},"commit":{"message":"Merge pull request #36 from ukozi/main\n\nUpdate WINDOWS.md","shortMessageHtmlLink":"Merge pull request #36 from ukozi/main"}},{"before":"9654b64a3acf076adf02c411dba88c13713cd8eb","after":"f05b0c1b05f39d5a07612b4f31e424c722bb86df","ref":"refs/heads/main","pushedAt":"2024-05-28T03:30:42.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mk6i","name":"Mike","path":"/mk6i","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2894330?s=80&v=4"},"commit":{"message":"implement DELETE http://localhost:8080/user","shortMessageHtmlLink":"implement DELETE http://localhost:8080/user"}},{"before":"463d9f44e61a3a32f321ae414a98574998cc70fc","after":"9654b64a3acf076adf02c411dba88c13713cd8eb","ref":"refs/heads/main","pushedAt":"2024-05-28T02:20:05.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mk6i","name":"Mike","path":"/mk6i","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2894330?s=80&v=4"},"commit":{"message":"remove redundant write byte count assertion","shortMessageHtmlLink":"remove redundant write byte count assertion"}},{"before":"751585284f56e6a060272c8b2e6d9f33c9a67c09","after":"463d9f44e61a3a32f321ae414a98574998cc70fc","ref":"refs/heads/main","pushedAt":"2024-05-28T02:01:31.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mk6i","name":"Mike","path":"/mk6i","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2894330?s=80&v=4"},"commit":{"message":"fix incorrect user idle duration in UserInfo\n\nWinAIM clients report idle duration that exceeds online time by hours.\nPidgin displays all users as idle when they are not idle.\n\nFix here is to set the correct duration for user info TLV 0x04 in\nminutes, not seconds.\n\nIn addition, we should not send TLV 0x04 if idle duration is 0. Pidgin\nincorrectly interprets the presence of TLV 0x04 as the user being idle,\nregardless if the value is 0.","shortMessageHtmlLink":"fix incorrect user idle duration in UserInfo"}},{"before":"a372557260d57ef4bac29d43d9bb2a981d148f3b","after":"751585284f56e6a060272c8b2e6d9f33c9a67c09","ref":"refs/heads/main","pushedAt":"2024-05-27T18:15:51.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"mk6i","name":"Mike","path":"/mk6i","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2894330?s=80&v=4"},"commit":{"message":"fix tests","shortMessageHtmlLink":"fix tests"}},{"before":"9c2857fd460c5657321990f76fff707a625ef740","after":"a372557260d57ef4bac29d43d9bb2a981d148f3b","ref":"refs/heads/main","pushedAt":"2024-05-27T18:10:20.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"mk6i","name":"Mike","path":"/mk6i","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2894330?s=80&v=4"},"commit":{"message":"implement temporary credentials validation endpoint","shortMessageHtmlLink":"implement temporary credentials validation endpoint"}},{"before":"a4d8d7203b0f441115d186a5ea91b3afdd3fb149","after":"9c2857fd460c5657321990f76fff707a625ef740","ref":"refs/heads/main","pushedAt":"2024-05-25T18:41:22.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mk6i","name":"Mike","path":"/mk6i","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2894330?s=80&v=4"},"commit":{"message":"fix return err in ReceiveFLAP()","shortMessageHtmlLink":"fix return err in ReceiveFLAP()"}},{"before":"72b9121129e5afb71156738758c82de11973f8c3","after":"a4d8d7203b0f441115d186a5ea91b3afdd3fb149","ref":"refs/heads/main","pushedAt":"2024-05-25T18:23:53.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"mk6i","name":"Mike","path":"/mk6i","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2894330?s=80&v=4"},"commit":{"message":"add helpers for dealing with ICBM message text","shortMessageHtmlLink":"add helpers for dealing with ICBM message text"}},{"before":"e7eb9ce662079df9f667e964807a1bc50f93d0fa","after":"72b9121129e5afb71156738758c82de11973f8c3","ref":"refs/heads/main","pushedAt":"2024-05-21T12:44:54.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"mk6i","name":"Mike","path":"/mk6i","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2894330?s=80&v=4"},"commit":{"message":"Add ApiHost configuration","shortMessageHtmlLink":"Add ApiHost configuration"}},{"before":"678a80a71826bb3f6fb5922809da2cc54b8a0c87","after":null,"ref":"refs/heads/issue-29-separate-bind-addr","pushedAt":"2024-05-21T09:54:05.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"mk6i","name":"Mike","path":"/mk6i","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2894330?s=80&v=4"}},{"before":"98fb2ae51ee0dc54c5992b5926aefa75b30853ae","after":"678a80a71826bb3f6fb5922809da2cc54b8a0c87","ref":"refs/heads/issue-29-separate-bind-addr","pushedAt":"2024-05-21T03:29:35.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mk6i","name":"Mike","path":"/mk6i","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2894330?s=80&v=4"},"commit":{"message":"update systemd config","shortMessageHtmlLink":"update systemd config"}},{"before":"15d2aff5cea503281d2066c5e2de3e2a66cc5d0f","after":"98fb2ae51ee0dc54c5992b5926aefa75b30853ae","ref":"refs/heads/issue-29-separate-bind-addr","pushedAt":"2024-05-21T03:27:14.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mk6i","name":"Mike","path":"/mk6i","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2894330?s=80&v=4"},"commit":{"message":"add listener hostname config","shortMessageHtmlLink":"add listener hostname config"}},{"before":"b6add08735240940c57ea264e3636d9fc5cf0b51","after":"15d2aff5cea503281d2066c5e2de3e2a66cc5d0f","ref":"refs/heads/issue-29-separate-bind-addr","pushedAt":"2024-05-21T03:19:58.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mk6i","name":"Mike","path":"/mk6i","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2894330?s=80&v=4"},"commit":{"message":"add bind config for mgmt api","shortMessageHtmlLink":"add bind config for mgmt api"}},{"before":"d47d73d1f017710e5e3e25f4bfd08e59b7672bfa","after":"b6add08735240940c57ea264e3636d9fc5cf0b51","ref":"refs/heads/issue-29-separate-bind-addr","pushedAt":"2024-05-21T02:39:16.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"mk6i","name":"Mike","path":"/mk6i","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2894330?s=80&v=4"},"commit":{"message":"add listener hostname config","shortMessageHtmlLink":"add listener hostname config"}},{"before":null,"after":"d47d73d1f017710e5e3e25f4bfd08e59b7672bfa","ref":"refs/heads/issue-29-separate-bind-addr","pushedAt":"2024-05-21T02:38:23.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"mk6i","name":"Mike","path":"/mk6i","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2894330?s=80&v=4"},"commit":{"message":"add listener hostname config","shortMessageHtmlLink":"add listener hostname config"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEXcAe8AA","startCursor":null,"endCursor":null}},"title":"Activity ยท mk6i/retro-aim-server"}