<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/arti/src/reload_cfg.rs, branch arti-v1.1.13</title>
<subtitle>mirror of https://gitlab.torproject.org/tpo/core/arti
</subtitle>
<id>http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v1.1.13</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v1.1.13'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2024-01-25T13:58:49Z</updated>
<entry>
<title>arti: Only exit if all the modules have been dropped.</title>
<updated>2024-01-25T13:58:49Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2024-01-25T13:58:49Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=fa7a9440d4978f2348bfe1bd6620b3c084322c98'/>
<id>urn:sha1:fa7a9440d4978f2348bfe1bd6620b3c084322c98</id>
<content type='text'>
Prompted by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1917#note_2988815
</content>
</entry>
<entry>
<title>arti: Use Weak references for the reconfigurable modules.</title>
<updated>2024-01-25T12:25:45Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2024-01-25T11:47:18Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=81c0dccf8f38b7d7fe77d683d7210f88fb4161db'/>
<id>urn:sha1:81c0dccf8f38b7d7fe77d683d7210f88fb4161db</id>
<content type='text'>
Previously, the `ProxySet` (and all the other `reconfigurable_modules`)
were kept alive by the `watch_for_config_changes` background thread,
which was preventing them from being dropped when `run()` exited. IOW,
onion services never received the shutdown signal.

Now `watch_for_config_changes` takes `Weak` references, and the only
strong references to the modules are kept in the
`reconfigurable_modules` local variable in `run()`, which is dropped
when `run()` exits (e.g. on SIGINT). This allows onion services to
execute their shutdown logic on CTRL-C.

Part of #1244
</content>
</entry>
<entry>
<title>arti: Generalize a TODO HSS about reconfiguration.</title>
<updated>2023-12-12T19:50:26Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-12-11T16:28:39Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=58d11981035d4e359109ef8fb0b1101f1f867736'/>
<id>urn:sha1:58d11981035d4e359109ef8fb0b1101f1f867736</id>
<content type='text'>
It's correct that we'd like someday for the `arti` crate APIs to
allow all the different modes supported by `Reconfigure` enum;
this is #1156, and it does not block an HSS release.
</content>
</entry>
<entry>
<title>arti: Make reconfiguration slightly more abstract</title>
<updated>2023-12-05T17:45:51Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-12-05T17:45:51Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=1ac515c183bf8c1d7e07bccd0fdbd3644041b250'/>
<id>urn:sha1:1ac515c183bf8c1d7e07bccd0fdbd3644041b250</id>
<content type='text'>
Now instead of having a hardwired list of of things to reconfigure,
the watch_cfg module now has a vector of ReconfigurableModule.

As noted in the documentation, I don't intend that this should be
our final API here: It is deliberately not exposed.  When we revisit
the structure of `arti` more, we should probably do this
differently.
</content>
</entry>
<entry>
<title>Add cognitive-complexity exceptions for clippy.</title>
<updated>2023-09-06T02:34:56Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-08-30T18:43:38Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=8b8faacd1cbcdd841a02cd0273f75377d5a91b3f'/>
<id>urn:sha1:8b8faacd1cbcdd841a02cd0273f75377d5a91b3f</id>
<content type='text'>
I have no idea why these became necessary.
</content>
</entry>
<entry>
<title>Throughout: Use *_report!() macros for reporting Errors.</title>
<updated>2023-07-07T17:00:21Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-07-07T13:54:27Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=25c6fe61e4cf230210dffdac2d3c281fcb31c5a9'/>
<id>urn:sha1:25c6fe61e4cf230210dffdac2d3c281fcb31c5a9</id>
<content type='text'>
I identified the cases to replace by searching for the string
`.report()`.  There are a few that I didn't change:

  * A couple of cases that used anyhow::Error,
  * One case that reported two Errors.
  * Two cases in `tor_hsclient::err` that just did
    `error!("Bug: {}")`.

I have also not audited the cases in `tor-hsclient` where we're using
`tor_error::Report` manually.

Nonetheless, closes #949.
</content>
</entry>
<entry>
<title>Corrected the order of imports in order to make the 'rust-checks' job complete successfully.</title>
<updated>2023-06-22T23:25:28Z</updated>
<author>
<name>Andy</name>
<email>andy@andy.codes</email>
</author>
<published>2023-06-22T23:25:28Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=3105f99a9905c445f31040d9dcdb3ac5bd999edf'/>
<id>urn:sha1:3105f99a9905c445f31040d9dcdb3ac5bd999edf</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Provided a fix for #831 - 'Unused import' warnings on Windows</title>
<updated>2023-06-22T23:11:20Z</updated>
<author>
<name>Andy</name>
<email>andy@andy.codes</email>
</author>
<published>2023-06-22T23:11:20Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=bec24f792050186bddd63ec837bca12c956c7a71'/>
<id>urn:sha1:bec24f792050186bddd63ec837bca12c956c7a71</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Use tor_error::Report for remaining errors in error! in arti</title>
<updated>2023-01-30T18:52:32Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2023-01-30T18:37:42Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=22016f233b5a8e277c15e1512f8f22a81f4ab537'/>
<id>urn:sha1:22016f233b5a8e277c15e1512f8f22a81f4ab537</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Use ErrorReport/Report for errors in warn! in arti</title>
<updated>2023-01-30T18:52:32Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2023-01-30T18:10:00Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=36ebf7d23adcf727972abd97d0a768be86c0e5a5'/>
<id>urn:sha1:36ebf7d23adcf727972abd97d0a768be86c0e5a5</id>
<content type='text'>
</content>
</entry>
</feed>
