{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":23967971,"defaultBranch":"master","name":"psiphon-tunnel-core","ownerLogin":"Psiphon-Labs","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2014-09-12T16:23:51.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/5760090?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1718113368.0","currentOid":""},"activityList":{"items":[{"before":"a250068b84e51d770f71ce59d07b289e8dfb992a","after":"e9a9b00a25708b94947769d0f155f032afadf330","ref":"refs/heads/master","pushedAt":"2024-09-09T17:44:49.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"rod-hynes","name":"Rod Hynes","path":"/rod-hynes","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/488643?s=80&v=4"},"commit":{"message":"server_test checkExpectedServerTunnelLogFields fixes\n\n- Always use the actual tunnel protocol, taking the demux into account, in all\n conditional checks\n- Check tls_profile/tls_version log fields in all TLS/HTTPS cases\n- Check meek_tls_padding log field","shortMessageHtmlLink":"server_test checkExpectedServerTunnelLogFields fixes"}},{"before":"3f4b530d886c5ae542aba2ba0df94ad66f530aba","after":"a250068b84e51d770f71ce59d07b289e8dfb992a","ref":"refs/heads/master","pushedAt":"2024-09-06T16:35:38.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"rod-hynes","name":"Rod Hynes","path":"/rod-hynes","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/488643?s=80&v=4"},"commit":{"message":"Fixes for PR 679","shortMessageHtmlLink":"Fixes for PR 679"}},{"before":"a30c42ad91a64fe06729898c6e2509e9a0de66f7","after":"3f4b530d886c5ae542aba2ba0df94ad66f530aba","ref":"refs/heads/master","pushedAt":"2024-09-06T15:28:11.000Z","pushType":"pr_merge","commitsCount":57,"pusher":{"login":"rod-hynes","name":"Rod Hynes","path":"/rod-hynes","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/488643?s=80&v=4"},"commit":{"message":"Merge pull request #679 from adotkhan/zero-rtt+utls\n\nQUIC 0-RTT + real PSKs + uTLS","shortMessageHtmlLink":"Merge pull request #679 from adotkhan/zero-rtt+utls"}},{"before":"4a92fcdb13f821c2ff512865c3da082e3a2eec2f","after":"a30c42ad91a64fe06729898c6e2509e9a0de66f7","ref":"refs/heads/master","pushedAt":"2024-09-06T15:02:44.000Z","pushType":"pr_merge","commitsCount":8,"pusher":{"login":"rod-hynes","name":"Rod Hynes","path":"/rod-hynes","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/488643?s=80&v=4"},"commit":{"message":"Merge pull request #693 from rod-hynes/master\n\nAdd code vetting CI checks and fixes","shortMessageHtmlLink":"Merge pull request #693 from rod-hynes/master"}},{"before":"96d0a82b776779d4bfeabba05026538fdb921065","after":"f5ba094b8427f053aa431bb8ca87ee2ef352b667","ref":"refs/heads/staging-client","pushedAt":"2024-09-04T18:46:02.000Z","pushType":"push","commitsCount":18,"pusher":{"login":"rod-hynes","name":"Rod Hynes","path":"/rod-hynes","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/488643?s=80&v=4"},"commit":{"message":"Merge branch 'master' into staging-client","shortMessageHtmlLink":"Merge branch 'master' into staging-client"}},{"before":"03e91e536c7e9f546a9c338ba0caf47db1776b5b","after":"4a92fcdb13f821c2ff512865c3da082e3a2eec2f","ref":"refs/heads/master","pushedAt":"2024-09-04T18:12:06.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"rod-hynes","name":"Rod Hynes","path":"/rod-hynes","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/488643?s=80&v=4"},"commit":{"message":"inproxy WaitForNetworkConnectivity changes\n\n- Remove fatal start up check for running on incompatible network\n- Add incompatible network check to WaitForNetworkConnectivity, so that proxy\n announcing both pauses and restarts dynamically\n\n- Other: document known limitations with inproxy dial rate limiting and\n InproxyAllowProxy","shortMessageHtmlLink":"inproxy WaitForNetworkConnectivity changes"}},{"before":"a8413df90d399e20818e328a2d5cc2ce7fdff948","after":"03e91e536c7e9f546a9c338ba0caf47db1776b5b","ref":"refs/heads/master","pushedAt":"2024-08-30T12:17:40.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"rod-hynes","name":"Rod Hynes","path":"/rod-hynes","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/488643?s=80&v=4"},"commit":{"message":"Fix: don't block on full ScanServerEntries for InitialLimitTunnelProtocols\n\n- With 1000s of servers, the scan often delayed dialing tunnels by 10s of\n seconds.\n- Also applies to TunnelPoolSize > 1.","shortMessageHtmlLink":"Fix: don't block on full ScanServerEntries for InitialLimitTunnelProt…"}},{"before":"13b56aa541b00041273611f04255200049640b18","after":"1738bc5933ec923c54eb81516022d19132d2e5a0","ref":"refs/heads/staging-server","pushedAt":"2024-08-26T18:24:26.000Z","pushType":"push","commitsCount":13,"pusher":{"login":"rod-hynes","name":"Rod Hynes","path":"/rod-hynes","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/488643?s=80&v=4"},"commit":{"message":"Merge branch 'master' into staging-server","shortMessageHtmlLink":"Merge branch 'master' into staging-server"}},{"before":"e91aa5a9b41675b577015004f18beaf31641189b","after":"a8413df90d399e20818e328a2d5cc2ce7fdff948","ref":"refs/heads/master","pushedAt":"2024-08-26T17:58:12.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"rod-hynes","name":"Rod Hynes","path":"/rod-hynes","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/488643?s=80&v=4"},"commit":{"message":"Fix expected error message in test","shortMessageHtmlLink":"Fix expected error message in test"}},{"before":"e700604de4e08bc6bdaaf38a7d9752609a7a9ebf","after":"e91aa5a9b41675b577015004f18beaf31641189b","ref":"refs/heads/master","pushedAt":"2024-08-26T16:17:13.000Z","pushType":"pr_merge","commitsCount":10,"pusher":{"login":"rod-hynes","name":"Rod Hynes","path":"/rod-hynes","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/488643?s=80&v=4"},"commit":{"message":"Merge pull request #692 from rod-hynes/inproxy-enhancements\n\nInproxy enhancements","shortMessageHtmlLink":"Merge pull request #692 from rod-hynes/inproxy-enhancements"}},{"before":"d46c5ce1760063da98a142048f9fc0bdf622e3f5","after":"13b56aa541b00041273611f04255200049640b18","ref":"refs/heads/staging-server","pushedAt":"2024-08-23T16:00:00.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"rod-hynes","name":"Rod Hynes","path":"/rod-hynes","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/488643?s=80&v=4"},"commit":{"message":"Merge branch 'master' into staging-server","shortMessageHtmlLink":"Merge branch 'master' into staging-server"}},{"before":"5c1c8605752ec8e81d05b092461178b4c08439ed","after":"e700604de4e08bc6bdaaf38a7d9752609a7a9ebf","ref":"refs/heads/master","pushedAt":"2024-08-23T15:45:43.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"rod-hynes","name":"Rod Hynes","path":"/rod-hynes","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/488643?s=80&v=4"},"commit":{"message":"Fix handling of in-proxy clients in getLoadStats\n\n- Avoid potential panic when regionStats[client.peerGeoIPData.Country] is nil\n- Skip proximate established count for None/Unknown client region\n- Document potential off-by-one proximate count","shortMessageHtmlLink":"Fix handling of in-proxy clients in getLoadStats"}},{"before":"eea9ace08cd1a5fa9e181acf2a929e62dda80515","after":"96d0a82b776779d4bfeabba05026538fdb921065","ref":"refs/heads/staging-client","pushedAt":"2024-08-20T18:07:54.000Z","pushType":"push","commitsCount":110,"pusher":{"login":"rod-hynes","name":"Rod Hynes","path":"/rod-hynes","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/488643?s=80&v=4"},"commit":{"message":"Merge branch 'master' into staging-client","shortMessageHtmlLink":"Merge branch 'master' into staging-client"}},{"before":"5777cd6b6a45a47d31658f005f5d7f1e5a16c9ab","after":"d46c5ce1760063da98a142048f9fc0bdf622e3f5","ref":"refs/heads/staging-server","pushedAt":"2024-08-20T18:00:22.000Z","pushType":"push","commitsCount":114,"pusher":{"login":"rod-hynes","name":"Rod Hynes","path":"/rod-hynes","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/488643?s=80&v=4"},"commit":{"message":"Merge branch 'master' into staging-server","shortMessageHtmlLink":"Merge branch 'master' into staging-server"}},{"before":"3726924d4df87c993eff94ed9ebe7a452e3119b2","after":"5c1c8605752ec8e81d05b092461178b4c08439ed","ref":"refs/heads/master","pushedAt":"2024-08-20T17:31:43.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"rod-hynes","name":"Rod Hynes","path":"/rod-hynes","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/488643?s=80&v=4"},"commit":{"message":"Copy temporary workaround from bddc482a\n\n- Add temporary [client_]session_id workaround for compatibility with the\n current network.","shortMessageHtmlLink":"Copy temporary workaround from bddc482"}},{"before":"e029252998ed24ecf0491d98feacde3756c0a521","after":"3726924d4df87c993eff94ed9ebe7a452e3119b2","ref":"refs/heads/master","pushedAt":"2024-08-20T16:19:44.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"rod-hynes","name":"Rod Hynes","path":"/rod-hynes","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/488643?s=80&v=4"},"commit":{"message":"Merge pull request #691 from rod-hynes/server-fixes\n\nServer fixes","shortMessageHtmlLink":"Merge pull request #691 from rod-hynes/server-fixes"}},{"before":"2b08bf80a3247c339d126c59e32d570adbc510c0","after":"e029252998ed24ecf0491d98feacde3756c0a521","ref":"refs/heads/master","pushedAt":"2024-07-16T13:06:52.000Z","pushType":"pr_merge","commitsCount":5,"pusher":{"login":"rod-hynes","name":"Rod Hynes","path":"/rod-hynes","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/488643?s=80&v=4"},"commit":{"message":"Merge pull request #690 from mirokuratczyk/master\n\nExtend SkipVerify support to TransferURLs","shortMessageHtmlLink":"Merge pull request #690 from mirokuratczyk/master"}},{"before":"445148a6f67a591d3faec8c89a0aa6f782d9a72c","after":"2b08bf80a3247c339d126c59e32d570adbc510c0","ref":"refs/heads/master","pushedAt":"2024-07-05T20:43:53.000Z","pushType":"pr_merge","commitsCount":9,"pusher":{"login":"rod-hynes","name":"Rod Hynes","path":"/rod-hynes","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/488643?s=80&v=4"},"commit":{"message":"Merge pull request #689 from rod-hynes/master\n\nIn-proxy enhancements","shortMessageHtmlLink":"Merge pull request #689 from rod-hynes/master"}},{"before":"03cade11f64755b84b21d1fe7a2eabbc8cfbfe45","after":"eea9ace08cd1a5fa9e181acf2a929e62dda80515","ref":"refs/heads/staging-client","pushedAt":"2024-07-05T16:35:48.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"rod-hynes","name":"Rod Hynes","path":"/rod-hynes","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/488643?s=80&v=4"},"commit":{"message":"Replace juju/ratelimit with golang.org/x/time/rate\n\n- Manual, partial cherry-pick of dde8c33dc9d3669e45fab0eb19bccd3683f49f84","shortMessageHtmlLink":"Replace juju/ratelimit with golang.org/x/time/rate"}},{"before":"1c05ff9f6f4f685820dee953b140ac68cbd5c051","after":"445148a6f67a591d3faec8c89a0aa6f782d9a72c","ref":"refs/heads/master","pushedAt":"2024-07-04T14:41:08.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"rod-hynes","name":"Rod Hynes","path":"/rod-hynes","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/488643?s=80&v=4"},"commit":{"message":"Remove github.com/hashicorp/golang-lru","shortMessageHtmlLink":"Remove github.com/hashicorp/golang-lru"}},{"before":"6b60b628d8dcc691dec5253ee6df101010165e2e","after":"1c05ff9f6f4f685820dee953b140ac68cbd5c051","ref":"refs/heads/master","pushedAt":"2024-07-03T19:28:33.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"rod-hynes","name":"Rod Hynes","path":"/rod-hynes","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/488643?s=80&v=4"},"commit":{"message":"Merge pull request #688 from mirokuratczyk/master\n\nAdd comments on potential race","shortMessageHtmlLink":"Merge pull request #688 from mirokuratczyk/master"}},{"before":"ffbed1c32bf1c297b77edabc804fc978eedf6565","after":"6b60b628d8dcc691dec5253ee6df101010165e2e","ref":"refs/heads/master","pushedAt":"2024-06-28T13:31:42.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"rod-hynes","name":"Rod Hynes","path":"/rod-hynes","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/488643?s=80&v=4"},"commit":{"message":"In-proxy broker GeoIP fixes\n\n- Always log client GeoIP, even when request validation fails\n- Log unexpected ICE candidate GeoIP information","shortMessageHtmlLink":"In-proxy broker GeoIP fixes"}},{"before":"a9632594e9b0242bd586df8166923310e544b459","after":"ffbed1c32bf1c297b77edabc804fc978eedf6565","ref":"refs/heads/master","pushedAt":"2024-06-19T18:20:01.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"rod-hynes","name":"Rod Hynes","path":"/rod-hynes","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/488643?s=80&v=4"},"commit":{"message":"Remove TargetAPIEncoding test workaround","shortMessageHtmlLink":"Remove TargetAPIEncoding test workaround"}},{"before":"be2427e798f05fb3585befa95e5c87f11f0407b5","after":"03cade11f64755b84b21d1fe7a2eabbc8cfbfe45","ref":"refs/heads/staging-client","pushedAt":"2024-06-19T17:36:05.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"rod-hynes","name":"Rod Hynes","path":"/rod-hynes","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/488643?s=80&v=4"},"commit":{"message":"Merge pull request #687 from adam-p/clientlib-notices\n\nclientlib fixes: StartTunnel re-entry, early stderr notices, clearing notice writer\n\n(cherry picked from commit a9632594e9b0242bd586df8166923310e544b459)","shortMessageHtmlLink":"Merge pull request #687 from adam-p/clientlib-notices"}},{"before":"3b012448e24e4bf5518bee6f56ea53f4e02f0c14","after":"a9632594e9b0242bd586df8166923310e544b459","ref":"refs/heads/master","pushedAt":"2024-06-19T17:09:00.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"rod-hynes","name":"Rod Hynes","path":"/rod-hynes","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/488643?s=80&v=4"},"commit":{"message":"Merge pull request #687 from adam-p/clientlib-notices\n\nclientlib fixes: StartTunnel re-entry, early stderr notices, clearing notice writer","shortMessageHtmlLink":"Merge pull request #687 from adam-p/clientlib-notices"}},{"before":"7929fd6ee94cd975ccc45046936130ff4983366e","after":"3b012448e24e4bf5518bee6f56ea53f4e02f0c14","ref":"refs/heads/master","pushedAt":"2024-06-18T15:12:17.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"rod-hynes","name":"Rod Hynes","path":"/rod-hynes","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/488643?s=80&v=4"},"commit":{"message":"Fix: DialConfig.ResolveIP is called even when the destination is an IP address","shortMessageHtmlLink":"Fix: DialConfig.ResolveIP is called even when the destination is an I…"}},{"before":"ba6e7df991e193453c26bc00b17472d0f80f09fd","after":"be2427e798f05fb3585befa95e5c87f11f0407b5","ref":"refs/heads/staging-client","pushedAt":"2024-06-14T15:53:45.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"rod-hynes","name":"Rod Hynes","path":"/rod-hynes","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/488643?s=80&v=4"},"commit":{"message":"Remove TargetAPIEncoding test workaround\n\n- Not currently required in staging-client, which doesn't yet include inproxy\n branch.\n- Workaround depends on symbols defined in inproxy branch.","shortMessageHtmlLink":"Remove TargetAPIEncoding test workaround"}},{"before":"c1011b0e0261403b7ca1ae70bf15f0dd303b5824","after":"ba6e7df991e193453c26bc00b17472d0f80f09fd","ref":"refs/heads/staging-client","pushedAt":"2024-06-14T15:25:27.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"rod-hynes","name":"Rod Hynes","path":"/rod-hynes","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/488643?s=80&v=4"},"commit":{"message":"Bug fixes\n\n- Always use concurrency-safe `constraints` in serverEntriesReporter.\n\n- Don't try to parse empty SteeringIP in handshake response; log when an\n unexpected steering IP is received; change info notices to warnings.\n\n- Add TargetAPIEncoding workaround to new clientlib test cases.\n\n(cherry picked from commit 7929fd6ee94cd975ccc45046936130ff4983366e)","shortMessageHtmlLink":"Bug fixes"}},{"before":"1150f1258eff5dee275155d90c806b6d3c6df0d8","after":"7929fd6ee94cd975ccc45046936130ff4983366e","ref":"refs/heads/master","pushedAt":"2024-06-14T15:00:34.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"rod-hynes","name":"Rod Hynes","path":"/rod-hynes","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/488643?s=80&v=4"},"commit":{"message":"Bug fixes\n\n- Always use concurrency-safe `constraints` in serverEntriesReporter.\n\n- Don't try to parse empty SteeringIP in handshake response; log when an\n unexpected steering IP is received; change info notices to warnings.\n\n- Add TargetAPIEncoding workaround to new clientlib test cases.","shortMessageHtmlLink":"Bug fixes"}},{"before":"6ce89cd2fe95fee17fdecc71cb9f41e0bf5d4bc2","after":"1150f1258eff5dee275155d90c806b6d3c6df0d8","ref":"refs/heads/master","pushedAt":"2024-06-13T21:59:52.000Z","pushType":"pr_merge","commitsCount":8,"pusher":{"login":"rod-hynes","name":"Rod Hynes","path":"/rod-hynes","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/488643?s=80&v=4"},"commit":{"message":"Merge pull request #686 from adam-p/clientlib-dial\n\nAdd Dial method","shortMessageHtmlLink":"Merge pull request #686 from adam-p/clientlib-dial"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0wOVQxNzo0NDo0OS4wMDAwMDBazwAAAASxMiAZ","startCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0wOVQxNzo0NDo0OS4wMDAwMDBazwAAAASxMiAZ","endCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wNi0xM1QyMTo1OTo1Mi4wMDAwMDBazwAAAARk4lOr"}},"title":"Activity · Psiphon-Labs/psiphon-tunnel-core"}