<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-circmgr/src/lib.rs, branch arti-v2.5.0</title>
<subtitle>mirror of https://gitlab.torproject.org/tpo/core/arti
</subtitle>
<id>http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v2.5.0</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v2.5.0'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2026-06-09T15:36:01Z</updated>
<entry>
<title>maint: Run maint/add_warning to deny string slices</title>
<updated>2026-06-09T15:36:01Z</updated>
<author>
<name>Clara Engler</name>
<email>cve@cve.cx</email>
</author>
<published>2026-06-09T15:36:01Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=9f5752a77fb57052c06ead0eeae606831f1e8e97'/>
<id>urn:sha1:9f5752a77fb57052c06ead0eeae606831f1e8e97</id>
<content type='text'>
This commit executes maint/add_warning with the just added change to
deny string slices except in tests.

I recommend auditing this by checking out the previous commit followed
by running the script yourself and then verifying that the diff is
identical to this commit.

This commit makes cargo clippy fail.  We will add exceptions in the next
commit.
</content>
</entry>
<entry>
<title>Log tunnel and circuit IDs</title>
<updated>2026-04-08T23:09:20Z</updated>
<author>
<name>Jim Newsome</name>
<email>jnewsome@torproject.org</email>
</author>
<published>2026-04-08T23:08:15Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=21ae83fc8a7c3c349a9ab79977e0ac51c0ce6770'/>
<id>urn:sha1:21ae83fc8a7c3c349a9ab79977e0ac51c0ce6770</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix log typo Preeemptive</title>
<updated>2026-04-08T23:09:20Z</updated>
<author>
<name>Jim Newsome</name>
<email>jnewsome@torproject.org</email>
</author>
<published>2026-04-08T22:34:29Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=d06a5067c4f6347154cdb4b534b19c9cc56ffc70'/>
<id>urn:sha1:d06a5067c4f6347154cdb4b534b19c9cc56ffc70</id>
<content type='text'>
</content>
</entry>
<entry>
<title>circmgr: Use runtime.now() in place of Instant/SystemTime::get().</title>
<updated>2026-03-31T18:46:32Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2026-03-31T18:02:16Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=219907d45697d2d50ffc3793598d19d84f19818b'/>
<id>urn:sha1:219907d45697d2d50ffc3793598d19d84f19818b</id>
<content type='text'>
Part of #2428.
</content>
</entry>
<entry>
<title>circmgr: Port to web-time-compat.</title>
<updated>2026-03-26T19:20:17Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2026-03-26T15:23:06Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=e423630e1c890ee96279c522e327e5f4313594c3'/>
<id>urn:sha1:e423630e1c890ee96279c522e327e5f4313594c3</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Allow clippy::collapsible_if to trigger</title>
<updated>2026-02-16T15:22:24Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-02-09T11:49:02Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=ade1d59e8e44c93b6ee447b72a2948a9652ec44e'/>
<id>urn:sha1:ade1d59e8e44c93b6ee447b72a2948a9652ec44e</id>
<content type='text'>
`clippy::collapsible_if` started triggering after bumping the MSRV to
1.88.

Since this triggers from a lot of places, and since there even are a
couple of instances where we explicitly allow `clippy::collapsible_ifs`,
I've opened #2342 for deciding what to do about it.
</content>
</entry>
<entry>
<title>maint/add_warning: Run script to add new warning</title>
<updated>2026-01-27T18:05:36Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-01-27T18:05:36Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=a98faf72eb06b47700faeeac5a8a0dd0fc29b584'/>
<id>urn:sha1:a98faf72eb06b47700faeeac5a8a0dd0fc29b584</id>
<content type='text'>
This adds the lint to all our crates.
</content>
</entry>
<entry>
<title>Remove unnecessary `doc(cfg(...))` attributes</title>
<updated>2025-12-05T02:40:50Z</updated>
<author>
<name>Neel Chauhan</name>
<email>neel@neelc.org</email>
</author>
<published>2025-11-01T23:25:20Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=26b40cb08b6b715ee80e2b9084810e07512a85c6'/>
<id>urn:sha1:26b40cb08b6b715ee80e2b9084810e07512a85c6</id>
<content type='text'>
Fixes part of #2193.

(Edits from nickm: I selected the cases here that I could verify
were correct from immediate context.)

Edited-by: Nick Mathewson &lt;nickm@torproject.org&gt;
</content>
</entry>
<entry>
<title>opentelemetry: Instrument a bunch of functions.</title>
<updated>2025-11-24T16:28:07Z</updated>
<author>
<name>Wesley Aptekar-Cassels</name>
<email>me@wesleyac.com</email>
</author>
<published>2025-11-24T16:28:07Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=a4db6a7495b13dd7b00416dd1660a5ad82b60919'/>
<id>urn:sha1:a4db6a7495b13dd7b00416dd1660a5ad82b60919</id>
<content type='text'>
These are all aimed at figuring out in more detail what's going on
in #2079 and related issues.
</content>
</entry>
<entry>
<title>circmgr: Implement expiration for long-lived tunnels.</title>
<updated>2025-11-12T15:00:55Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-10-30T21:09:24Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=b7be042e020cb38ee817524f4a9d9f9187bed8f0'/>
<id>urn:sha1:b7be042e020cb38ee817524f4a9d9f9187bed8f0</id>
<content type='text'>
This code uses the algorithm of prop368: When a tunnel is
sufficiently isolated, we want to expire it after it has been
disused for a certain amount of time.

The implementation is a little tricky, since we need to call an
async function on ClientTunnel to look up the disused_since() check.
We don't want to call async functions while holding locks, so
we need to drop the TunnelList lock before we do the disused_since()
calls, and the grab it again.

As part of this change, I've had made expiration functions return
the earliest time at which any tunnel might expire.  We can use
this in the future to spawn fewer expiration tasks, and scan the
list of tunnels less often.
</content>
</entry>
</feed>
