<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html lang="en" style='--code-editor-font: var(--default-mono-font, "Menlo"), DejaVu Sans Mono, Liberation Mono, Consolas, Ubuntu Mono, Courier New, andale mono, lucida console, monospace;'>
<head>
<meta content="text/html; charset=US-ASCII" http-equiv="Content-Type">
<title>
GitLab
</title>
<style data-premailer="ignore" type="text/css">
a { color: #1068bf; }
</style>
<style>img {
max-width: 100%; height: auto;
}
body {
font-size: 0.875rem;
}
body {
-webkit-text-shadow: rgba(255,255,255,0.01) 0 0 1px;
}
body {
font-family: var(--default-regular-font, -apple-system),BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans",Ubuntu,Cantarell,"Helvetica Neue",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"; font-size: inherit;
}
</style>
</head>
<body style='font-size: inherit; -webkit-text-shadow: rgba(255,255,255,0.01) 0 0 1px; font-family: var(--default-regular-font, -apple-system),BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans",Ubuntu,Cantarell,"Helvetica Neue",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";'>
<div class="content">
<h3 style="margin-top: 20px; margin-bottom: 10px;">
meskio pushed to branch debian/sid at <a href="https://salsa.debian.org/pkg-privacy-team/snowflake">Privacy Maintainers / snowflake</a>
</h3>
<h4 style="margin-top: 10px; margin-bottom: 10px;">
Commits:
</h4>
<ul>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/a8829d49b7bd315db08713abd4bf7396466d8b59">a8829d49</a></strong>
<div>
<span> by Daniel Golle </span> <i> at 2022-09-26T10:37:29-04:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Fix proxy command line help output
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/9ce1de4eee4e23c918c7c5e96666ff5c6ddc654e">9ce1de4e</a></strong>
<div>
<span> by Tommaso Gragnato </span> <i> at 2022-09-26T08:52:23-07:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Use Pion's Setting Engine to reduce Multicast DNS noise
https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/issues/40123
The purpose of the patch is to prevent Pion from opening the mDNS port,
thus preventing snowflake from directly leaking .local candidates.
What this doesn't prevent is the resolution of .local candidates
once they are passed on to the system DNS.
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/5e564f36ff639eae2289be5a9e937e98ab62ee75">5e564f36</a></strong>
<div>
<span> by KokaKiwi </span> <i> at 2022-09-30T17:55:06+02:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>proxy: Add a SnowflakeProxy.makeWebRTCAPI() method
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/47f9392645da2018bdd96fd603c6378e641a1f30">47f93926</a></strong>
<div>
<span> by KokaKiwi </span> <i> at 2022-09-30T17:55:08+02:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>proxy: Add ICE ephemeral ports range setting CLI flag
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/068af0870370b5c1ae8690068088b2d8ed11bfa5">068af087</a></strong>
<div>
<span> by KokaKiwi </span> <i> at 2022-09-30T17:55:10+02:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Change how ephemeral-ports-range CLI flag is handled
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/5ef5142bb02b8d274f88b8457d2ef4272f11a181">5ef5142b</a></strong>
<div>
<span> by trinity-1686a </span> <i> at 2022-10-09T21:15:50+02:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>format using go-1.19
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/56063efbbaf2c5d4deccf0302706abf1d466eb87">56063efb</a></strong>
<div>
<span> by meskio </span> <i> at 2022-10-11T18:47:47+02:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Merge remote-tracking branch 'gitlab/mr/102'
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/c5b291b114752cd287a6bf1910f159be537f15fe">c5b291b1</a></strong>
<div>
<span> by KokaKiwi </span> <i> at 2022-10-12T16:33:09+02:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>proxy: Fix build with golang 1.13
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/986fc8269a804f5b7f223b71ae1c28f718bbf8f1">986fc826</a></strong>
<div>
<span> by KokaKiwi </span> <i> at 2022-10-12T16:51:39+02:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>proxy: Correctly handle argument parsing error
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/31b958302e93457aa9188c7ae5f5977dad1929bf">31b95830</a></strong>
<div>
<span> by Cecylia Bocovich </span> <i> at 2022-10-12T11:03:06-04:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Bump minimum go version to 1.15
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/8b1970a3ce85436e87a9ac868652c3fc3d8c4b58">8b1970a3</a></strong>
<div>
<span> by Cecylia Bocovich </span> <i> at 2022-10-12T11:30:47-04:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Update CI tests to include latest and min go versions
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/10c8173120cd205b54f446c9d0671572e8acc20b">10c81731</a></strong>
<div>
<span> by KokaKiwi </span> <i> at 2022-10-12T19:48:24+02:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>proxy: Fix ephemeral ports range CLI flag (again)
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/21d74498518a600f9ad2124cb4da23d721b7fb41">21d74498</a></strong>
<div>
<span> by KokaKiwi </span> <i> at 2022-10-14T21:40:07+02:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>proxy: Check ephemeral port range ordering at flag parsing
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/39df9b36b5694c6afd88a363f7c2984f00d26cb5">39df9b36</a></strong>
<div>
<span> by David Fifield </span> <i> at 2022-10-16T23:14:38-06:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Fix uTLS issue number in ChangeLog.
The right issue number is #40054.
The #40095 it referred to was for load balancing on the broker.
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/ac8562803ab9621d037bd1b3710c59799c7aa6d5">ac856280</a></strong>
<div>
<span> by meskio </span> <i> at 2022-10-17T12:36:19+02:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Merge remote-tracking branch 'gitlab/mr/107'
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/3185487aea4efcdfd70812222b1bd005e270242b">3185487a</a></strong>
<div>
<span> by luciole </span> <i> at 2022-11-10T15:12:46+01:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>update formatTraffic so that bandwidth unit is always KB
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/12e8de8b24e0a35e4c4bcc8de8a7a062efd7c35e">12e8de8b</a></strong>
<div>
<span> by David Fifield </span> <i> at 2022-11-15T17:21:33-07:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Update github.com/gorilla/websocket to v1.5.0.
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/2f55581098ee45a2e19e8272f0130a6447a5f2d0">2f555810</a></strong>
<div>
<span> by David Fifield </span> <i> at 2022-11-16T18:48:14+01:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Reduce the smux KeepAliveTimeout on the server from 10 to 4 minutes.
To save memory, we want to more aggressively close stale connections.
https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/issues/40175
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/768b80dbdfba8733a614770c93fdbea4d48c7c52">768b80db</a></strong>
<div>
<span> by itchyonion </span> <i> at 2022-11-16T10:08:10-08:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Use event logger for proxy starting message and NAT info
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/9d72b30603e644b8cf0645ab8da189814c093650">9d72b306</a></strong>
<div>
<span> by itchyonion </span> <i> at 2022-11-16T10:08:11-08:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>proxy: Let verbose level act on file logging
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/0780f2e80947722ed38e4e700c20781fcc2ce9e7">0780f2e8</a></strong>
<div>
<span> by David Fifield </span> <i> at 2022-11-16T19:41:42+01:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Add a `orport-srcaddr` server transport option.
The option controls what source address to use when dialing the
(Ext)ORPort. Using a source address other than 127.0.0.1, or a range of
addresses, can help with localhost ephemeral port exhaustion.
https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/issues/40198
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/8cadcaee704053aedb42964ae143ef1597364020">8cadcaee</a></strong>
<div>
<span> by David Fifield </span> <i> at 2022-11-16T13:48:34-07:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Benchmark for websocketconn.Conn read/write.
Current output:
$ go test -bench=BenchmarkReadWrite -benchmem -benchtime=5s
BenchmarkReadWrite/c←s_150-4 451840 13904 ns/op 10.79 MB/s 34954 B/op 4 allocs/op
BenchmarkReadWrite/s←c_150-4 452560 16134 ns/op 9.30 MB/s 36378 B/op 4 allocs/op
BenchmarkReadWrite/c←s_3000-4 202950 40846 ns/op 73.45 MB/s 69833 B/op 8 allocs/op
BenchmarkReadWrite/s←c_3000-4 189262 37930 ns/op 79.09 MB/s 69768 B/op 8 allocs/op
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/3df514ae2961166088902dbd329b929983b6e002">3df514ae</a></strong>
<div>
<span> by David Fifield </span> <i> at 2022-11-16T13:48:34-07:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Call WriteMessage directly in websocketconn.Conn.Write.
In the client←server direction, this hits a fast path that avoids
allocating a messageWriter.
https://github.com/gorilla/websocket/blob/v1.5.0/conn.go#L760
Cuts the number of allocations in half in the client←server direction:
$ go test -bench=BenchmarkReadWrite -benchmem -benchtime=5s
BenchmarkReadWrite/c←s_150-4 597511 13358 ns/op 11.23 MB/s 33709 B/op 2 allocs/op
BenchmarkReadWrite/s←c_150-4 474176 13756 ns/op 10.90 MB/s 34968 B/op 4 allocs/op
BenchmarkReadWrite/c←s_3000-4 156488 36290 ns/op 82.67 MB/s 68673 B/op 5 allocs/op
BenchmarkReadWrite/s←c_3000-4 190897 34719 ns/op 86.41 MB/s 69730 B/op 8 allocs/op
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/264425a488edbbfad80deb59aefcb3c40ad9a72d">264425a4</a></strong>
<div>
<span> by David Fifield </span> <i> at 2022-11-16T13:48:34-07:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Use io.CopyBuffer in websocketconn.readLoop.
This avoids io.Copy allocating a 32 KB buffer on every call.
https://cs.opensource.google/go/go/+/refs/tags/go1.19.1:src/io/io.go;l=416
$ go test -bench=BenchmarkReadWrite -benchmem -benchtime=5s
BenchmarkReadWrite/c←s_150-4 385740 15114 ns/op 9.92 MB/s 4104 B/op 3 allocs/op
BenchmarkReadWrite/s←c_150-4 347070 16824 ns/op 8.92 MB/s 4152 B/op 4 allocs/op
BenchmarkReadWrite/c←s_3000-4 190257 31581 ns/op 94.99 MB/s 8208 B/op 6 allocs/op
BenchmarkReadWrite/s←c_3000-4 163233 34821 ns/op 86.16 MB/s 8304 B/op 8 allocs/op
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/2321642f3cf6d6371f638126d713e645311994ed">2321642f</a></strong>
<div>
<span> by David Fifield </span> <i> at 2022-11-16T13:48:34-07:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Hoist temporary buffers outside the loop.
Otherwise the buffers are re-allocated on every iteration, which is a
surprise to me. I thought the compiler would do this transformation
itself.
Now there is just one allocation per client←server read (one
messageReader) and two allocations per server←client read (one
messageReader and one messageWriter).
$ go test -bench=BenchmarkReadWrite -benchmem -benchtime=5s
BenchmarkReadWrite/c←s_150-4 481054 12849 ns/op 11.67 MB/s 8 B/op 1 allocs/op
BenchmarkReadWrite/s←c_150-4 421809 14095 ns/op 10.64 MB/s 56 B/op 2 allocs/op
BenchmarkReadWrite/c←s_3000-4 208564 28003 ns/op 107.13 MB/s 16 B/op 2 allocs/op
BenchmarkReadWrite/s←c_3000-4 186320 30576 ns/op 98.12 MB/s 112 B/op 4 allocs/op
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/4ae63eccabb8cdbcb8c1f22a91c3bbf27e87076d">4ae63ecc</a></strong>
<div>
<span> by David Fifield </span> <i> at 2022-11-16T13:48:34-07:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Benchmark websocket.Conn Upgrade creation.
I had thought to set a buffer size of 2048, half the websocket package
default of 4096. But it turns out when you don't set a buffer size, the
websocket package reuses the HTTP server's read/write buffers, which
empirically already have a size of 2048.
$ go test -bench=BenchmarkUpgradeBufferSize -benchmem -benchtime=5s
BenchmarkUpgradeBufferSize/0-4 25669 234566 ns/op 32604 B/op 113 allocs/op
BenchmarkUpgradeBufferSize/128-4 24739 238283 ns/op 24325 B/op 117 allocs/op
BenchmarkUpgradeBufferSize/1024-4 25352 238885 ns/op 28087 B/op 116 allocs/op
BenchmarkUpgradeBufferSize/2048-4 22660 234890 ns/op 32444 B/op 116 allocs/op
BenchmarkUpgradeBufferSize/4096-4 25668 232591 ns/op 41672 B/op 116 allocs/op
BenchmarkUpgradeBufferSize/8192-4 24908 240755 ns/op 59103 B/op 116 allocs/op
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/a579c969e62a4727b4173b31ed54d338dbe1a4db">a579c969</a></strong>
<div>
<span> by David Fifield </span> <i> at 2022-11-16T13:48:34-07:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>encapsulation.paddingBuffer can be statically allocated.
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/e851861e686520435e456b7ee39ef19097daa60b">e851861e</a></strong>
<div>
<span> by David Fifield </span> <i> at 2022-11-16T13:48:34-07:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Benchmark for encapsulation.ReadData.
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/115ba6a745b877904f5f4b6a4c852c3f2d5a87b8">115ba6a7</a></strong>
<div>
<span> by Cecylia Bocovich </span> <i> at 2022-11-17T11:07:48-05:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Add gofmt output to CI test before calling test -z
We use a call to test -z together with go fmt because it doesn't output
a non-zero exit status (triggering CI test failure). However, we lose
useful debugging output from the go fmt call because test -z swallows
it. This adds very verbose formatting output to the CI test.
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/2c599f88274b37f743996ed9f4ff0744b84c119d">2c599f88</a></strong>
<div>
<span> by luciole </span> <i> at 2022-11-21T10:33:21-05:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>change bandwidth type from int to int64 to prevent overflow
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/33248f3dec5594c985cfd11e6c6143ddaa5613c0">33248f3d</a></strong>
<div>
<span> by Shelikhoo </span> <i> at 2022-11-23T12:29:51+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Add Version Output Support to Snowflake
>From now on, there will be a file at common/version/version.go that includes current version number.
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/4ebd85e5d181182a5a3c1e61bdef8abaa92afee0">4ebd85e5</a></strong>
<div>
<span> by Shelikhoo </span> <i> at 2022-11-23T12:29:55+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>add version output to log
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/90d1a5671964564c27f95afbab22dbc031135516">90d1a567</a></strong>
<div>
<span> by luciole </span> <i> at 2022-11-28T15:56:35-05:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>change regexes for ipv6 addresses to catch url-encoded addresses
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/6007d5e08e981b739e5dab23ce5597fc086ca1c2">6007d5e0</a></strong>
<div>
<span> by Cecylia Bocovich </span> <i> at 2022-11-28T17:10:49-05:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Refactor creation of webRTCConn in proxy
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/5c23fcf14ab7342be57244731b80937c0dad27f3">5c23fcf1</a></strong>
<div>
<span> by Cecylia Bocovich </span> <i> at 2022-11-28T17:11:18-05:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Add timeout for webRTCConn
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/b010de5abb89aba37da73e50eb5c7dbe054c4362">b010de5a</a></strong>
<div>
<span> by Cecylia Bocovich </span> <i> at 2022-11-28T17:11:20-05:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Terminate timeoutLoop when conn is closed
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/b547d449cb3f7710ecb70f55a3cbe3a2fe8382d3">b547d449</a></strong>
<div>
<span> by Cecylia Bocovich </span> <i> at 2022-11-28T17:30:05-05:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Refactor timeout loop to use a context and reuse timers
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/56f15a5db703a9079bcc3585c3dad0f0caf48d67">56f15a5d</a></strong>
<div>
<span> by Cecylia Bocovich </span> <i> at 2022-11-29T09:52:09-05:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Update ChangeLog for v2.4.0
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/d8d3e538f1fe2c60369876970900fe00a7958aca">d8d3e538</a></strong>
<div>
<span> by Shelikhoo </span> <i> at 2022-11-29T15:41:49+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Fix uTLS RoundTripper Inconsistent Key for host:port
This commit fixes an issue described at:
https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/issues/40224
This bug has been fixed, with test case describing this bug added.
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/788e3ae95604ea1ae21491e6ab3682cfbd4753ec">788e3ae9</a></strong>
<div>
<span> by Shelikhoo </span> <i> at 2022-11-29T15:41:49+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Refactor utls roundtripper_test to deduplicate
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/7c154e5fd06693ddc4feb5962cab4a13aeebd405">7c154e5f</a></strong>
<div>
<span> by Cecylia Bocovich </span> <i> at 2022-12-01T11:38:22-05:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Bump version to v2.4.1
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/cebe4a0af6777a157aea0ed6351471ea70826584">cebe4a0a</a></strong>
<div>
<span> by Flo418 </span> <i> at 2022-12-02T13:37:17-08:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>enhance help for capacity flag, fix #40208
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/cbc50592d83455ecaaa78850d90b0fdee22344a5">cbc50592</a></strong>
<div>
<span> by Flo418 </span> <i> at 2022-12-02T13:37:17-08:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>update README.md help output, fix #40232
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/8e5af50bdb43b2626832b022eeceee7ef4e3c953">8e5af50b</a></strong>
<div>
<span> by David Fifield </span> <i> at 2022-12-03T13:39:56-07:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Increase clientIDAddrMapCapacity to 98304.
Recent increases in usage have exhausted the capacity of the map.
https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/issues/40173
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/64491466ceffcbfd66422ec2e375c35935da2e46">64491466</a></strong>
<div>
<span> by David Fifield </span> <i> at 2022-12-08T08:03:54-07:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Manually unlock the mutex in ClientMap.SendQueue.
Rather than use defer. It is only a tiny amount faster, but this
function is frequently called.
Before:
$ go test -bench=BenchmarkSendQueue -benchtime=2s
BenchmarkSendQueue-4 15901834 151 ns/op
After:
$ go test -bench=BenchmarkSendQueue -benchtime=2s
BenchmarkSendQueue-4 15859948 147 ns/op
https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/issues/40177
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/77b186ae6eb7f61ff4e51494c238388b88f68194">77b186ae</a></strong>
<div>
<span> by David Fifield </span> <i> at 2022-12-08T08:03:54-07:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Have SnowflakeClientConn implement io.WriterTo.
By forwarding the method to the inner smux.Stream. This is to prevent
io.Copy in the top-level proxy function from allocating a buffer per
client.
The smux.Stream WriteTo method returns io.EOF on success, contrary to
the contract of io.Copy that says it should return nil. Ignore io.EOF in
the proxy loop to avoid a log message.
/anti-censorship/pluggable-transports/snowflake/-/issues/40177
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/d4749d2c1dd5d9e59d8994d5b84102f7b0afd0ef">d4749d2c</a></strong>
<div>
<span> by David Fifield </span> <i> at 2022-12-08T08:03:54-07:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Reduce turbotunnel queueSize from 2048 to 512.
This is to reduce heap usage.
https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/issues/40179
Past discussion of queueSize:
https://lists.torproject.org/pipermail/anti-censorship-team/2021-July/000188.html
https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/merge_requests/48#note_2744619
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/839d2218837dfbd1682ff39b375f45660b3974b5">839d2218</a></strong>
<div>
<span> by David Fifield </span> <i> at 2022-12-08T08:03:54-07:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Take ownership of buffer in QueuePacketConn QueueIncoming/WriteTo.
This design is easier to misuse, because it allows the caller to modify
the contents of the slice after queueing it, but it avoids an extra
allocation + memmove per incoming packet.
Before:
$ go test -bench='Benchmark(QueueIncoming|WriteTo)' -benchtime=2s -benchmem
BenchmarkQueueIncoming-4 7001494 342.4 ns/op 1024 B/op 2 allocs/op
BenchmarkWriteTo-4 3777459 627 ns/op 1024 B/op 2 allocs/op
After:
$ go test -bench=BenchmarkWriteTo -benchtime 2s -benchmem
BenchmarkQueueIncoming-4 13361600 170.1 ns/op 512 B/op 1 allocs/op
BenchmarkWriteTo-4 6702324 373 ns/op 512 B/op 1 allocs/op
Despite the benchmark results, the change in QueueIncoming turns out not
to have an effect in practice. It appears that the compiler had already
been optimizing out the allocation and copy in QueueIncoming.
https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/issues/40187
The WriteTo change, on the other hand, in practice reduces the frequency
of garbage collection.
https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/issues/40199
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/11c33338568863edb70b044c4bef3567873d2608">11c33338</a></strong>
<div>
<span> by Flo418 </span> <i> at 2022-12-12T19:56:59+01:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>add some more test for URL encoded IPs (safelog)
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/53e381e45d63b0d0ccebbeece71b2471900c7b6a">53e381e4</a></strong>
<div>
<span> by itchyonion </span> <i> at 2022-12-13T09:23:34-08:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Fix server flag name
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/c6fabb212d7eff3f58021eb0f806376772c2bd4d">c6fabb21</a></strong>
<div>
<span> by David Fifield </span> <i> at 2022-12-14T23:02:26-07:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Use multiple parallel KCP state machines in the server.
To distribute CPU load.
https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/issues/40200
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/936a1f81382c95950c4659afec1b3fe875c681d9">936a1f81</a></strong>
<div>
<span> by David Fifield </span> <i> at 2022-12-14T23:02:26-07:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Add a num-turbotunnel server transport option.
Replaces the hardcoded numKCPInstances.
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/f6fa51d7491b2925ff46607455a5a60235cbd9f5">f6fa51d7</a></strong>
<div>
<span> by Cecylia Bocovich </span> <i> at 2022-12-31T12:23:27-05:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Switch default proxy STUN server to stun.l.google.com
This is the same default that the web-based proxies use. Proxies do not
need RFC 5780 compatible STUN servers.
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/8c775562c151c527264c2737f568516d33522600">8c775562</a></strong>
<div>
<span> by Cecylia Bocovich </span> <i> at 2022-12-31T12:23:29-05:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Remove two suggested STUN servers from client docs
Removed stun.stunprotocol.org after a discussion with the operator, and
stun.altar.com.pl after noticing it has gone offline.
https://lists.torproject.org/pipermail/anti-censorship-team/2022-December/000272.html
https://lists.torproject.org/pipermail/anti-censorship-team/2022-December/000276.html
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/7db2568448fed6d883b33db11e3a497c69f1748f">7db25684</a></strong>
<div>
<span> by Cecylia Bocovich </span> <i> at 2023-01-03T10:32:03-05:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Remove duplicate stun.sonetel.net entry
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/086bbb4a63f29e7ac7df00df00084658330461b7">086bbb4a</a></strong>
<div>
<span> by Cecylia Bocovich </span> <i> at 2023-01-13T13:45:17-05:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Bump version to v2.4.2
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/4895a32fd3c2f1d6918c934be6ffe623b1bec702">4895a32f</a></strong>
<div>
<span> by Cecylia Bocovich </span> <i> at 2023-01-16T11:55:31-05:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Bump version to v2.4.3
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/10fd00068528fd6309bbb49f9dd0fea38f1ac5ef">10fd0006</a></strong>
<div>
<span> by Shelikhoo </span> <i> at 2023-01-17T12:47:32+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Apply Skip Hello Verify Migration
Backported from https://gitlab.torproject.org/shelikhoo/snowflake/-/tree/dev-skiphelloverify-backup
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/daa9b535c876ec4df836bf8e2f3edb86fd3b28be">daa9b535</a></strong>
<div>
<span> by Shelikhoo </span> <i> at 2023-01-18T11:27:31+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Update Version to v2.5.0
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/44c76ce3ad705a6f0d14bc44215f82f443e646a4">44c76ce3</a></strong>
<div>
<span> by Shelikhoo </span> <i> at 2023-01-18T14:36:18+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Fix helloverify remove patch not applied
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/7b77001eaa90e09d41172a2b170dabd3f1922b4a">7b77001e</a></strong>
<div>
<span> by Shelikhoo </span> <i> at 2023-01-18T14:37:05+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Update version to v2.5.1
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/f36135edef9df6fcd9c7002324c34b14ea048eea">f36135ed</a></strong>
<div>
<span> by meskio </span> <i> at 2023-02-24T13:56:17+01:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Update upstream source from tag 'upstream/2.5.1'
Update to upstream version '2.5.1'
with Debian dir 050abeb2ab0fbac629af6ab2dd4c912ed507bd6e</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/commit/db16115ada535e6c2e43cd20fa32a61e7aeab499">db16115a</a></strong>
<div>
<span> by meskio </span> <i> at 2023-02-24T16:55:11+01:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.875rem; color: #333238; position: relative; font-family: var(--default-mono-font, "Menlo"),"DejaVu Sans Mono","Liberation Mono","Consolas","Ubuntu Mono","Courier New","andale mono","lucida console",monospace; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>New upstream release
</pre>
</li>
</ul>
<h4 style="margin-top: 10px; margin-bottom: 10px;">
30 changed files:
</h4>
<ul>
<li class="file-stats">
<a href="#587d266bb27a4dc3022bbed44dfa19849df3044c">
.gitlab-ci.yml
</a>
</li>
<li class="file-stats">
<a href="#00fe7828d56d7a3ee4030d6cea057cf13f50e70c">
ChangeLog
</a>
</li>
<li class="file-stats">
<a href="#31751a40848e21a3ce2e507e324ffd46e5b7b710">
client/README.md
</a>
</li>
<li class="file-stats">
<a href="#84512855b84c76cfea5801420d3c0f0998de0828">
client/lib/snowflake.go
</a>
</li>
<li class="file-stats">
<a href="#32b3c58917646b1341172196c25a238f54314abe">
client/lib/util.go
</a>
</li>
<li class="file-stats">
<a href="#f29769643d0f510550b42e7b91446bbb901b6991">
client/lib/webrtc.go
</a>
</li>
<li class="file-stats">
<a href="#3ac66531f630cc2a1397ee582d05764100401fbf">
client/snowflake.go
</a>
</li>
<li class="file-stats">
<a href="#a1bd1dad400c8b95cc7ec785a279cdc931b87ac3">
client/torrc
</a>
</li>
<li class="file-stats">
<a href="#4c5851d1b02d81ecb1c483e482e7d379f2c139cf">
common/amp/doc.go
</a>
</li>
<li class="file-stats">
<a href="#ad9ab308b012363a7a42585656a4a159e10e94fc">
common/encapsulation/encapsulation.go
</a>
</li>
<li class="file-stats">
<a href="#70d502b63517ddda4644f45851920d95df7100d8">
common/encapsulation/encapsulation_test.go
</a>
</li>
<li class="file-stats">
<a href="#66bc0574b10f6c9146376450edefc9e0a42d62c0">
common/event/interface.go
</a>
</li>
<li class="file-stats">
<a href="#23525065565aa8a201ce59574c82e542d77f733c">
common/messages/client.go
</a>
</li>
<li class="file-stats">
<a href="#80cc3b22a72656c96ec914832ed44b6ad16696ad">
common/messages/proxy.go
</a>
</li>
<li class="file-stats">
<a href="#2c9210bfeddd28b22e465986279c8b7fbbd8928c">
common/safelog/log.go
</a>
</li>
<li class="file-stats">
<a href="#cc7a19d5ec8975e7165b37a32044fbac4f18e1a1">
common/safelog/log_test.go
</a>
</li>
<li class="file-stats">
<a href="#2a3a974cd8cc4e6f0c79d5e6d2b37a8651c48b1d">
common/turbotunnel/clientmap.go
</a>
</li>
<li class="file-stats">
<a href="#d2607da48a6f54b1a7fa442922116003bdf02667">
<span class="new-file">
+
common/turbotunnel/clientmap_test.go
</span>
</a>
</li>
<li class="file-stats">
<a href="#46987cac5e92239ad9a67eb13ea83c99784d76c6">
common/turbotunnel/consts.go
</a>
</li>
<li class="file-stats">
<a href="#47038db7051eeb292a719f0ff86f0067572d930b">
common/turbotunnel/queuepacketconn.go
</a>
</li>
<li class="file-stats">
<a href="#31c733f25fc1d6fd066ff861d1bcfad72308cef0">
<span class="new-file">
+
common/turbotunnel/queuepacketconn_test.go
</span>
</a>
</li>
<li class="file-stats">
<a href="#91114e5a23c38a79fcd0576089451bdad6690f94">
common/utls/client_hello_id.go
</a>
</li>
<li class="file-stats">
<a href="#83126631f1852e7a6437f50cac10b0934609c9f5">
<span class="new-file">
+
common/utls/client_hello_id_version.go
</span>
</a>
</li>
<li class="file-stats">
<a href="#872c32e6825ab9fe0ea21b307640b967e13ae378">
common/utls/roundtripper.go
</a>
</li>
<li class="file-stats">
<a href="#d4432cbe375a5b6ea536d55a7314fbc2da2367b2">
common/utls/roundtripper_test.go
</a>
</li>
<li class="file-stats">
<a href="#aad7e7112ca50c18ff73210119e91103e0cdfcf8">
<span class="new-file">
+
common/version/combined.go
</span>
</a>
</li>
<li class="file-stats">
<a href="#9517a5813f228bb1c4b487181ed71dd342850e27">
<span class="new-file">
+
common/version/detail.go
</span>
</a>
</li>
<li class="file-stats">
<a href="#364ff3143f51d9f0651bc762c26501a1ef86f172">
<span class="new-file">
+
common/version/version.go
</span>
</a>
</li>
<li class="file-stats">
<a href="#ef5274b38f4d3af7fb6679ec72f477f0db21a540">
common/websocketconn/websocketconn.go
</a>
</li>
<li class="file-stats">
<a href="#be3d99a2223d6605bffe81403e4ccbd978f581d4">
common/websocketconn/websocketconn_test.go
</a>
</li>
</ul>
<h5 style="margin-top: 10px; margin-bottom: 10px; font-size: 0.875rem;">
The diff was not included because it is too large.
</h5>
</div>
<div class="footer" style="margin-top: 10px;">
<p style="font-size: small; color: #737278;">
—
<br>
<a href="https://salsa.debian.org/pkg-privacy-team/snowflake/-/compare/15aaf49e50a5afb51abb83d54330fdb4bb43aac4...db16115ada535e6c2e43cd20fa32a61e7aeab499">View it on GitLab</a>.
<br>
You're receiving this email because of your account on <a target="_blank" rel="noopener noreferrer" href="https://salsa.debian.org">salsa.debian.org</a>. <a href="https://salsa.debian.org/-/profile/notifications" target="_blank" rel="noopener noreferrer" class="mng-notif-link">Manage all notifications</a> · <a href="https://salsa.debian.org/help" target="_blank" rel="noopener noreferrer" class="help-link">Help</a>
</p>
</div>
</body>
</html>