<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-basic-utils/Cargo.toml, branch arti-v1.0.0</title>
<subtitle>mirror of https://gitlab.torproject.org/tpo/core/arti
</subtitle>
<id>http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v1.0.0</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v1.0.0'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2022-09-01T12:59:49Z</updated>
<entry>
<title>Bump crate versions in preparation for Arti 1.0.0 release.</title>
<updated>2022-09-01T12:59:49Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-09-01T12:52:51Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=96875ea20875e3a5cfc9f348365f19a158578190'/>
<id>urn:sha1:96875ea20875e3a5cfc9f348365f19a158578190</id>
<content type='text'>
Because we want to work more on ensuring that our semver stability
story is solid, we are _not_ bumping arti-client to 1.0.0 right now.

Here are the bumps we _are_ doing.  Crates with "minor" bumps have
had API breaks; crates with "patch" bumps have had new APIs added.

Note that `tor-congestion` is not bumped here: it's a new crate, and
hasn't been published before.

```
tor-basic-utils         minor
fs-mistrust             minor
tor-config              minor
tor-rtcompat            minor
tor-rtmock              minor
tor-llcrypto            patch
tor-bytes               patch
tor-linkspec            minor
tor-cell                minor
tor-proto               minor
tor-netdoc              patch
tor-netdir              minor
tor-persist             patch
tor-chanmgr             minor
tor-guardmgr            minor
tor-circmgr             minor
tor-dirmgr              minor
arti-client             minor
arti-hyper              minor
arti                    major
arti-bench              minor
arti-testing            minor
```
</content>
</entry>
<entry>
<title>tor-basic-utils: Provide IoErrorExt is_not_a_directory()</title>
<updated>2022-08-25T14:58:29Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2022-08-18T14:16:24Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=2fa75be6606301d59ef5c48f5b7abdaefefd620e'/>
<id>urn:sha1:2fa75be6606301d59ef5c48f5b7abdaefefd620e</id>
<content type='text'>
We're going to want this functionality, which isn't in the stable
stdlib.
</content>
</entry>
<entry>
<title>enable doc_auto_cfg feature on every crate when documenting for docs.rs</title>
<updated>2022-08-24T16:22:41Z</updated>
<author>
<name>trinity-1686a</name>
<email>trinity@deuxfleurs.fr</email>
</author>
<published>2022-08-17T19:13:13Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=7f939fa4804b3c934343141b79e8e2ded5fe0b0d'/>
<id>urn:sha1:7f939fa4804b3c934343141b79e8e2ded5fe0b0d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Bump patch versions on crates that have new APIs.</title>
<updated>2022-08-01T13:56:29Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-08-01T13:56:29Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=859ae4acd00dc63ee3d903b21eb34f9267377185'/>
<id>urn:sha1:859ae4acd00dc63ee3d903b21eb34f9267377185</id>
<content type='text'>
Do _not_ bump the dependency versions on crates that have had no
changes since arti 0.0.5, since those crates do not depend on the
new APIs.

```
cargo set-version -p tor-basic-utils   --bump patch
cargo set-version -p tor-llcrypto      --bump patch
git restore crates/tor-checkable
git restore crates/tor-consdiff
git restore crates/tor-rtmock
```
</content>
</entry>
<entry>
<title>Provide maybe_send on postage::watch::Sender, via extension trait</title>
<updated>2022-07-18T17:13:13Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2022-07-18T11:04:49Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=7acdd217507c1020e52d2146a013d0fe4e8f964e'/>
<id>urn:sha1:7acdd217507c1020e52d2146a013d0fe4e8f964e</id>
<content type='text'>
We need to replace the AtomicBool for dormant mode with something that
can wake up tasks.  postage::watch is the right shape.

But we want to be able to update it but suppress no-op updates.
(There is going to be a call site where no-op updates can occur.)

In the absence of a suitable upstream method as requested here
  https://github.com/austinjones/postage-rs/issues/56
we introduce this facility via an extension trait.
</content>
</entry>
<entry>
<title>Bump crate and dependency versions.</title>
<updated>2022-06-24T16:00:22Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-06-24T16:00:22Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=20435aea751331817709acde8d4b65b5fb8d8f12'/>
<id>urn:sha1:20435aea751331817709acde8d4b65b5fb8d8f12</id>
<content type='text'>
These were done with the following commands:

```
cargo set-version -p tor-basic-utils   --bump patch
cargo set-version -p fs-mistrust       --bump minor
cargo set-version -p tor-error         --bump patch
cargo set-version -p tor-config        --bump patch
cargo set-version -p tor-units         --bump patch
cargo set-version -p tor-rtcompat      --bump minor
cargo set-version -p tor-llcrypto      --bump patch
cargo set-version -p tor-bytes         --bump minor
cargo set-version -p tor-socksproto    --bump minor
cargo set-version -p tor-cert          --bump minor
cargo set-version -p tor-cell          --bump minor
cargo set-version -p tor-proto         --bump minor
cargo set-version -p tor-netdoc        --bump patch
cargo set-version -p tor-netdir        --bump minor
cargo set-version -p tor-persist       --bump patch
cargo set-version -p tor-chanmgr       --bump minor
cargo set-version -p tor-guardmgr      --bump minor
cargo set-version -p tor-circmgr       --bump patch
cargo set-version -p tor-dirclient     --bump patch
cargo set-version -p tor-dirmgr        --bump minor
cargo set-version -p arti-client       --bump patch
cargo set-version -p arti              --bump minor
cargo set-version -p arti-bench        --bump minor
cargo set-version -p arti-testing      --bump minor
```
</content>
</entry>
<entry>
<title>New facility for deterministic and reproducible test PRNGs.</title>
<updated>2022-06-02T18:51:51Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-05-31T21:43:55Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=69d352a7c7cd297756940cb34d63728adf88231c'/>
<id>urn:sha1:69d352a7c7cd297756940cb34d63728adf88231c</id>
<content type='text'>
The new `testing_rng()` function is meant as a replacement for
thread_rng() for use in unit tests.  By default, it uses a randomly
seeded RNG, but prints the seed before the test so that you can
reproduce any failures that occur.  You can override this via the
environment to use a previous seed, or by using a deterministic
seed for all your tests.

Backend for #486.
</content>
</entry>
<entry>
<title>Lexically sort Cargo.toml dependencies</title>
<updated>2022-05-28T17:05:51Z</updated>
<author>
<name>Orhun Parmaksız</name>
<email>orhunparmaksiz@gmail.com</email>
</author>
<published>2022-05-28T16:41:39Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=bfd41ddb5fefe8808c33669c508dde4325808e35'/>
<id>urn:sha1:bfd41ddb5fefe8808c33669c508dde4325808e35</id>
<content type='text'>
Utilize cargo-sort: https://github.com/DevinR528/cargo-sort

Signed-off-by: Orhun Parmaksız &lt;orhunparmaksiz@gmail.com&gt;
</content>
</entry>
<entry>
<title>Semantic version changes for Arti 0.4.0 release</title>
<updated>2022-05-27T13:01:20Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-05-27T13:01:20Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=b232365a75249d6f767127feb2a47286f9ece762'/>
<id>urn:sha1:b232365a75249d6f767127feb2a47286f9ece762</id>
<content type='text'>
I followed the following procedure to make these changes:

* I used maint/changed_crates to find out which crates had changed
  since 0.3.0.
* I used grep and maint/list_crates to sort those crates in
  topological (dependency) order.
* I looked through semver_status to find which crates were listed as
  having semver-relevant changes (new APIs and breaking changes).
* I scanned through the git logs of the crates with no
  semver-relevant changes listed to confirm that, indeed, they had
  no changes.  For those crates, I incremented their patch-level
  version _without_ changing the version that other crates depend on.
* I scanned through the git logs of the crates with no
  semver-relevant changes listed to confirm that, indeed, they had
  no obvious breaking changes.
* I treated all crates that depend on `arti` and/or `arti-client` as
  having breaking changes.
* I identified crates that depend on crates that have changed, even
  if they have not changed themselves, and identified them as having
  a non-breaking change.
* For all of the crates, I used `cargo set-version -p $CRATE --bump
  $STATUS` (where `STATUS` is `patch` or `minor`) to update the
  versions, and the depended-upon versions.
</content>
</entry>
<entry>
<title>channel: Provide and use Sink::prepare_send_from</title>
<updated>2022-05-23T10:28:05Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2022-05-18T15:02:52Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=793782acc80c05e2d2e125c65721c7a0b967d113'/>
<id>urn:sha1:793782acc80c05e2d2e125c65721c7a0b967d113</id>
<content type='text'>
This is a general-purpose implementation of the ad-hoc approach
currently taken in (eg) crates/tor-proto/src/channel/reactor.rs,
with an API intended to defned against the more obvious mistakes.

This allows us to separate the two concerns: the channel reactor can
focus on handling channel cells and control messages and is over 2.5x
shorter.

The complexity of the manual sink implementation, and the machinery
needed to avoid having to suspend while holding an item, are dealt
with separately.  That separate implemenation now has proper
documentation.  (Tests are in the nest commit to avoid this one being
even more unwieldy.)

We use `extend` to define this as an extension trait.  A competitor is
`ext` but in my personal projects I have found `extend` slightly
better.
</content>
</entry>
</feed>
