<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/arti/src/watch_cfg.rs, branch derive-traits</title>
<subtitle>mirror of https://gitlab.torproject.org/tpo/core/arti
</subtitle>
<id>http://git.dilluti0n.com/mirrors/arti.git/atom?h=derive-traits</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=derive-traits'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2022-02-25T14:20:48Z</updated>
<entry>
<title>Upgrade to newer version of config crate.</title>
<updated>2022-02-25T14:20:48Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-02-25T14:17:37Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=a3bc59918d5cca780f87a12cfc30a4cd209a6cfc'/>
<id>urn:sha1:a3bc59918d5cca780f87a12cfc30a4cd209a6cfc</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Properly linkify two doc comment xrefs to issues</title>
<updated>2022-02-04T15:11:44Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2022-02-04T15:11:44Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=a49889f11668f21ff47fdba4ab9eb451970ee0c2'/>
<id>urn:sha1:a49889f11668f21ff47fdba4ab9eb451970ee0c2</id>
<content type='text'>
Fixes these messages:

  warning: this URL is not a hyperlink
   --&gt; crates/arti/src/watch_cfg.rs:115:5
    |
115 | /// https://github.com/notify-rs/notify/issues/165 and
    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use an automatic link instead: `&lt;https://github.com/notify-rs/notify/issues/165&gt;`
    |
    = note: `#[warn(rustdoc::bare_urls)]` on by default
    = note: bare URLs are not automatically turned into clickable links

warning: this URL is not a hyperlink
   --&gt; crates/arti/src/watch_cfg.rs:116:5
    |
116 | /// https://github.com/notify-rs/notify/pull/166 .
    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use an automatic link instead: `&lt;https://github.com/notify-rs/notify/pull/166&gt;`
    |
    = note: bare URLs are not automatically turned into clickable links
</content>
</entry>
<entry>
<title>Document that `notify` behavior is strange with symlinks</title>
<updated>2022-02-03T16:11:21Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-02-03T14:52:07Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=49431f54420db007ef940e481445c5c29ee30e45'/>
<id>urn:sha1:49431f54420db007ef940e481445c5c29ee30e45</id>
<content type='text'>
(More specifically, `notify` behaves differently on different
platforms.  On some, it can watch specific directory objects on the
filesystem, and so it only notices when _those_ directories change.
If you change a symlink so that the canonical configuration file
location is now in some other directory, `notify` won't notice.  But
on other platforms, notify just does "stat()" in a loop. On those,
it _will_ notice if the configuration file changes.)
</content>
</entry>
<entry>
<title>Avoid a potential infinite loop in configuration-watching</title>
<updated>2022-02-03T14:38:58Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-02-03T14:38:58Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=656ad08d6586f363bf8d9cb0bd1a6925300f0d7c'/>
<id>urn:sha1:656ad08d6586f363bf8d9cb0bd1a6925300f0d7c</id>
<content type='text'>
Since the user can put their logfiles and configuration files in the
same directory, writing to the log can trigger an event from
`notify`.  If we log every non-interesting event from `notify`, then
we'll trigger the logs every time we log, and fill up the disk.

This commit removes the offending log and adds a comment about why.
If we someday decide we do need to log here, maybe we can rate-limit
the messages or something.
</content>
</entry>
<entry>
<title>Treat rescan events as meaning "reload configuration".</title>
<updated>2022-02-03T14:36:12Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-02-03T14:36:12Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=d90bc353ba3c87abb32c86858343994aad2396e5'/>
<id>urn:sha1:d90bc353ba3c87abb32c86858343994aad2396e5</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add a couple of TODOs about configuration-watching.</title>
<updated>2022-02-02T20:43:42Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-02-02T20:41:46Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=ea6458c9bd24a01f75ec80b3f6c11ac622b48ca5'/>
<id>urn:sha1:ea6458c9bd24a01f75ec80b3f6c11ac622b48ca5</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Before reloading configuration, drain all pending file changes</title>
<updated>2022-02-02T20:43:42Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-02-02T20:36:14Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=42ce00091f3fb768cdca1444111338d502ce2614'/>
<id>urn:sha1:42ce00091f3fb768cdca1444111338d502ce2614</id>
<content type='text'>
This way, if there are a bunch of changes at once, we only reload
one time.
</content>
</entry>
<entry>
<title>Refactor file-watching code to watch parent directories.</title>
<updated>2022-02-02T20:43:39Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-02-02T20:26:49Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=fd53c9ddb56148b8c1fae628efc12ba0e8e2d58f'/>
<id>urn:sha1:fd53c9ddb56148b8c1fae628efc12ba0e8e2d58f</id>
<content type='text'>
Due to limitations in notify and the OS APIs it uses, it isn't
actually so useful to watch a single file.  Instead, we have to
watch the directories that contain the files, and filter out any
events that aren't about the specific files we care about.

I've put the logic here into a new type, but I've left the type
un-exported: its API is pretty ugly, inasmuch as the caller needs to
jump through hoops to only get the events that they want.  That's
not too bad so long as the API is private, but we'd want better if
we were exposing this.
</content>
</entry>
<entry>
<title>Detect changes in non-client configuration sections too</title>
<updated>2022-02-01T21:04:59Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-02-01T21:02:51Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=bf7f7dfbbf4bc0c921695d2f4b30707e9fa5e348'/>
<id>urn:sha1:bf7f7dfbbf4bc0c921695d2f4b30707e9fa5e348</id>
<content type='text'>
We don't yet do much with these, but we can avoid discarding them.
</content>
</entry>
<entry>
<title>Reload configuration when our configuration files change.</title>
<updated>2022-02-01T21:04:53Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-02-01T18:30:31Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=b4c3aaf362243459b4951a9a5fb4b95d839b0f62'/>
<id>urn:sha1:b4c3aaf362243459b4951a9a5fb4b95d839b0f62</id>
<content type='text'>
Closes #270
</content>
</entry>
</feed>
