{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":216301431,"defaultBranch":"master","name":"pvxs","ownerLogin":"epics-base","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2019-10-20T03:21:19.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/10711129?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1722582872.0","currentOid":""},"activityList":{"items":[{"before":"cf3dc32fe31cd898c46012de9288be4c79b18dce","after":"3204eecb45e563d6be9f0511ad668cd8eca39906","ref":"refs/heads/gh-pages","pushedAt":"2024-08-21T23:41:19.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"mdavidsaver","name":null,"path":"/mdavidsaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4429215?s=80&v=4"},"commit":{"message":"1.3.1-21-g647775ef","shortMessageHtmlLink":"1.3.1-21-g647775ef"}},{"before":"a3a685ba2b331ae27f305bace76aabeb5b56f22a","after":"647775efec7bf3cbaaef79e03881cfa23662598b","ref":"refs/heads/master","pushedAt":"2024-08-21T23:41:19.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mdavidsaver","name":null,"path":"/mdavidsaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4429215?s=80&v=4"},"commit":{"message":"1.3.2a2","shortMessageHtmlLink":"1.3.2a2"}},{"before":"5fa743d4c87377859953012af3c0fbcd1b063129","after":"a3a685ba2b331ae27f305bace76aabeb5b56f22a","ref":"refs/heads/master","pushedAt":"2024-08-21T23:19:34.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mdavidsaver","name":null,"path":"/mdavidsaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4429215?s=80&v=4"},"commit":{"message":"server: correctly adjudicate collision bind() of specific port\n\nOn Linux (at least) SO_REUSEADDR, which allows a new listener to\nbind while an existing sock is in FIN-WAIT. Apparently this allows\nany number of sockets to bind(), but only when listen() to succeed.\n\nFurther, on Linux there is a known documented race condition which\ncan result in all listen() failing. It isn't clear how to handle\nthis case without a potentially infinite loop, so ignore it.\nIf this happens, then eg. no PVA server will get port 5075.\n\nSo when probing for another listener, it is necessary to enter the\nlistening state. When this fails, the socket is no longer usable\nfor another bind(), so it is necessary to allocate another for the\nnext attempt.","shortMessageHtmlLink":"server: correctly adjudicate collision bind() of specific port"}},{"before":"330097b7d455fbae689c890e5b5fef1a59d885e7","after":"5fa743d4c87377859953012af3c0fbcd1b063129","ref":"refs/heads/master","pushedAt":"2024-08-04T16:57:00.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"mdavidsaver","name":null,"path":"/mdavidsaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4429215?s=80&v=4"},"commit":{"message":"Release 1.3.2a1","shortMessageHtmlLink":"Release 1.3.2a1"}},{"before":"1ca7600a2b5322a4163491546f5497cb6e541109","after":"330097b7d455fbae689c890e5b5fef1a59d885e7","ref":"refs/heads/master","pushedAt":"2024-08-04T16:53:22.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mdavidsaver","name":null,"path":"/mdavidsaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4429215?s=80&v=4"},"commit":{"message":"cache_sync() copy Any/Union\n\nDelta may be later be changed by user code,\nso copy to ensure cache is not modified.\n\ncf. 92fb0a4afa5054b6cc3e8eb395facaa337d1c454","shortMessageHtmlLink":"cache_sync() copy Any/Union"}},{"before":"f7a1c682b3b6d3e9c3b41691ddb953bb5180c269","after":null,"ref":"refs/heads/Release-1.3.2a1","pushedAt":"2024-08-02T07:14:32.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"OCopping","name":"Ollie Copping","path":"/OCopping","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42144984?s=80&v=4"}},{"before":"079eeeb5f6456b3f27d2af6da1feccca98ac8b59","after":null,"ref":"refs/heads/Release-1.4.0a1","pushedAt":"2024-08-02T07:14:31.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"OCopping","name":"Ollie Copping","path":"/OCopping","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42144984?s=80&v=4"}},{"before":"766ddcad4f1e827398c2203eb95cd5a0cf802183","after":null,"ref":"refs/heads/1.3.2a1","pushedAt":"2024-08-02T07:10:56.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"OCopping","name":"Ollie Copping","path":"/OCopping","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42144984?s=80&v=4"}},{"before":null,"after":"766ddcad4f1e827398c2203eb95cd5a0cf802183","ref":"refs/heads/1.3.2a1","pushedAt":"2024-08-02T07:10:25.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"OCopping","name":"Ollie Copping","path":"/OCopping","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42144984?s=80&v=4"},"commit":{"message":"Release 1.3.2a1","shortMessageHtmlLink":"Release 1.3.2a1"}},{"before":"e05ee2b2abd7606e548549b094c62786ea082a20","after":"1ca7600a2b5322a4163491546f5497cb6e541109","ref":"refs/heads/master","pushedAt":"2024-08-01T22:47:30.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mdavidsaver","name":null,"path":"/mdavidsaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4429215?s=80&v=4"},"commit":{"message":"Test value casts which are Undefined Behavior\n\nMark as TODO since UB is not consistent across all supported platforms.","shortMessageHtmlLink":"Test value casts which are Undefined Behavior"}},{"before":"dab0bce3d7e9e50623ede9fdae259d6d7aa5d60c","after":"079eeeb5f6456b3f27d2af6da1feccca98ac8b59","ref":"refs/heads/Release-1.4.0a1","pushedAt":"2024-08-01T10:56:37.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"OCopping","name":"Ollie Copping","path":"/OCopping","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42144984?s=80&v=4"},"commit":{"message":"Release 1.4.0a1","shortMessageHtmlLink":"Release 1.4.0a1"}},{"before":null,"after":"f7a1c682b3b6d3e9c3b41691ddb953bb5180c269","ref":"refs/heads/Release-1.3.2a1","pushedAt":"2024-08-01T09:54:20.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"OCopping","name":"Ollie Copping","path":"/OCopping","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42144984?s=80&v=4"},"commit":{"message":"Release 1.3.2a1","shortMessageHtmlLink":"Release 1.3.2a1"}},{"before":"e05ee2b2abd7606e548549b094c62786ea082a20","after":"dab0bce3d7e9e50623ede9fdae259d6d7aa5d60c","ref":"refs/heads/Release-1.4.0a1","pushedAt":"2024-08-01T09:24:40.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"OCopping","name":"Ollie Copping","path":"/OCopping","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42144984?s=80&v=4"},"commit":{"message":"Release 1.4.0a1","shortMessageHtmlLink":"Release 1.4.0a1"}},{"before":null,"after":"e05ee2b2abd7606e548549b094c62786ea082a20","ref":"refs/heads/Release-1.4.0a1","pushedAt":"2024-08-01T09:23:34.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"OCopping","name":"Ollie Copping","path":"/OCopping","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42144984?s=80&v=4"},"commit":{"message":"Merge pull request #73 from OCopping/master\n\nAdd Python 3.12 Support","shortMessageHtmlLink":"Merge pull request #73 from OCopping/master"}},{"before":"bc6d3cc6b569e53fa33d1a55c7f1a59bfffad475","after":"e05ee2b2abd7606e548549b094c62786ea082a20","ref":"refs/heads/master","pushedAt":"2024-08-01T08:59:26.000Z","pushType":"pr_merge","commitsCount":7,"pusher":{"login":"OCopping","name":"Ollie Copping","path":"/OCopping","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42144984?s=80&v=4"},"commit":{"message":"Merge pull request #73 from OCopping/master\n\nAdd Python 3.12 Support","shortMessageHtmlLink":"Merge pull request #73 from OCopping/master"}},{"before":"6bb071d8428d0bd1f1725b1949b1192be43d59ef","after":"cf3dc32fe31cd898c46012de9288be4c79b18dce","ref":"refs/heads/gh-pages","pushedAt":"2024-08-01T05:05:28.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"mdavidsaver","name":null,"path":"/mdavidsaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4429215?s=80&v=4"},"commit":{"message":"1.3.1-9-gbc6d3cc6","shortMessageHtmlLink":"1.3.1-9-gbc6d3cc6"}},{"before":"bb8eb054b5457fa126f92504769ad973ed2483f5","after":"6bb071d8428d0bd1f1725b1949b1192be43d59ef","ref":"refs/heads/gh-pages","pushedAt":"2024-08-01T04:49:56.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"mdavidsaver","name":null,"path":"/mdavidsaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4429215?s=80&v=4"},"commit":{"message":"1.3.1-9-gbc6d3cc6","shortMessageHtmlLink":"1.3.1-9-gbc6d3cc6"}},{"before":"46ee1a6917c15faaa1e8bbdcd5ee4b256514a69d","after":"bc6d3cc6b569e53fa33d1a55c7f1a59bfffad475","ref":"refs/heads/master","pushedAt":"2024-08-01T04:49:56.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mdavidsaver","name":null,"path":"/mdavidsaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4429215?s=80&v=4"},"commit":{"message":"doc","shortMessageHtmlLink":"doc"}},{"before":"d18e2d7e3532c545b13c88be9aa2b7be80500860","after":"46ee1a6917c15faaa1e8bbdcd5ee4b256514a69d","ref":"refs/heads/master","pushedAt":"2024-07-08T18:20:47.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mdavidsaver","name":null,"path":"/mdavidsaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4429215?s=80&v=4"},"commit":{"message":"ioc: ACF fix write permit when groups are present\n\nAllow operation if any credential is acceptable.","shortMessageHtmlLink":"ioc: ACF fix write permit when groups are present"}},{"before":"a4dd6c63dfdfa3dde5c2e3e6756dd59846ff2401","after":"707e6b10c0c7063522b8fe12b25b2b30ca56f2e6","ref":"refs/heads/tls","pushedAt":"2024-06-25T23:12:31.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"mdavidsaver","name":null,"path":"/mdavidsaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4429215?s=80&v=4"},"commit":{"message":"py build w/ openssl","shortMessageHtmlLink":"py build w/ openssl"}},{"before":"57f79ce747f062a32eede1a630d33a5234e0808f","after":"d18e2d7e3532c545b13c88be9aa2b7be80500860","ref":"refs/heads/master","pushedAt":"2024-06-18T03:45:50.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"mdavidsaver","name":null,"path":"/mdavidsaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4429215?s=80&v=4"},"commit":{"message":"rpc_server/client example error handling","shortMessageHtmlLink":"rpc_server/client example error handling"}},{"before":"4bd884719ef6e38cc5569b49ac22a8d9be0a833d","after":"57f79ce747f062a32eede1a630d33a5234e0808f","ref":"refs/heads/master","pushedAt":"2024-04-18T17:40:36.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mdavidsaver","name":null,"path":"/mdavidsaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4429215?s=80&v=4"},"commit":{"message":"workaround asTrapWrite clobbering dbChannel\n\nBase asTrapWrite API unintentionally permits plugins to clobber\nthe dbChannel* passed by eg. calling some RSET callbacks directly.","shortMessageHtmlLink":"workaround asTrapWrite clobbering dbChannel"}},{"before":"c2e5fdca551a701e238ff34d76bddc7766254f2e","after":"4bd884719ef6e38cc5569b49ac22a8d9be0a833d","ref":"refs/heads/master","pushedAt":"2024-03-29T22:32:04.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"mdavidsaver","name":null,"path":"/mdavidsaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4429215?s=80&v=4"},"commit":{"message":"Workaround TCP_NODELAY error on winsock\n\nApparently winsock does not like setsockopt()\nconcurrently to async connect(). So delay\nNODELAY until after connected.","shortMessageHtmlLink":"Workaround TCP_NODELAY error on winsock"}},{"before":"93ab81c1532b7078aa261d8608db713898b545b6","after":"c2e5fdca551a701e238ff34d76bddc7766254f2e","ref":"refs/heads/master","pushedAt":"2024-02-23T15:46:14.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mdavidsaver","name":null,"path":"/mdavidsaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4429215?s=80&v=4"},"commit":{"message":"client: avoid FD leak on failed connect()\n\nAsync connect() can fail immediately in some cases.","shortMessageHtmlLink":"client: avoid FD leak on failed connect()"}},{"before":"b3f4b67ad8e62922d695dbb9faa91913456691da","after":"bb8eb054b5457fa126f92504769ad973ed2483f5","ref":"refs/heads/gh-pages","pushedAt":"2023-12-14T18:17:03.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"mdavidsaver","name":null,"path":"/mdavidsaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4429215?s=80&v=4"},"commit":{"message":"1.3.1","shortMessageHtmlLink":"1.3.1"}},{"before":"d958364acad91afcb93160d4b9591e3ee9537bcc","after":"93ab81c1532b7078aa261d8608db713898b545b6","ref":"refs/heads/master","pushedAt":"2023-12-14T18:16:02.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"mdavidsaver","name":null,"path":"/mdavidsaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4429215?s=80&v=4"},"commit":{"message":"1.3.1","shortMessageHtmlLink":"1.3.1"}},{"before":"0e6edc6e0c559b97e3a6255c1e0f5c68e9077d08","after":"d958364acad91afcb93160d4b9591e3ee9537bcc","ref":"refs/heads/master","pushedAt":"2023-12-14T06:16:01.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mdavidsaver","name":null,"path":"/mdavidsaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4429215?s=80&v=4"},"commit":{"message":"pacify codespell\n\nwould be nice if it was aware of markdown links...","shortMessageHtmlLink":"pacify codespell"}},{"before":"bf29d1a7ccc7e688e41e1212d9d4ef62b1339a40","after":"0e6edc6e0c559b97e3a6255c1e0f5c68e9077d08","ref":"refs/heads/master","pushedAt":"2023-12-12T23:54:06.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"mdavidsaver","name":null,"path":"/mdavidsaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4429215?s=80&v=4"},"commit":{"message":"doc","shortMessageHtmlLink":"doc"}},{"before":"d183a66cec9624d6b24c2f9e42284ba9b237f51d","after":"b3f4b67ad8e62922d695dbb9faa91913456691da","ref":"refs/heads/gh-pages","pushedAt":"2023-12-12T23:54:06.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"mdavidsaver","name":null,"path":"/mdavidsaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4429215?s=80&v=4"},"commit":{"message":"1.3.0-1-g0e6edc6","shortMessageHtmlLink":"1.3.0-1-g0e6edc6"}},{"before":"f1a8d4ea63832704886fa2ba3a484f22b4f96fe8","after":"bf29d1a7ccc7e688e41e1212d9d4ef62b1339a40","ref":"refs/heads/master","pushedAt":"2023-12-06T18:06:47.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mdavidsaver","name":null,"path":"/mdavidsaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4429215?s=80&v=4"},"commit":{"message":"1.3.0a1","shortMessageHtmlLink":"1.3.0a1"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"startCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOC0yMVQyMzo0MToxOS4wMDAwMDBazwAAAASguYmM","endCursor":"Y3Vyc29yOnYyOpK7MjAyMy0xMi0wNlQxODowNjo0Ny4wMDAwMDBazwAAAAPDBCFC"}},"title":"Activity ยท epics-base/pvxs"}