aboutsummaryrefslogtreecommitdiff
path: root/crates/tor-netdoc/semver.md
Commit message (Collapse)AuthorAgeFilesLines
...
* tor-netdoc: Eq for NicknameClara Engler2026-04-221-0/+1
| | | | | This derives Eq for Nickname because we will need it for unit tests that will be added later on.
* tor-netdoc: Add OverloadGeneral typeClara Engler2026-04-221-0/+2
| | | | | | This type comes from the specification and indicates overload information about a relay. We will use it in router descriptors at one point, hence why we are adding it already.
* tor-netdoc: Add NumericBooleanClara Engler2026-04-221-0/+1
| | | | | | | | | | | | | | This commit adds a new type, NumericBoolean, which implements NormalItemArgument in order to be parseable with parse2. It works very simple, namely it can be used to decode/encode a boolean as a `0` (false) or `1` (true) which is found in a few places around tor-netdoc. The reason why this is its own type instead of implementing NormalItemValue for the bool primitive is, that booleans are special numerical types and to be future-proof against other oddities, a separate wrapper type makes most sense.
* tor-netdoc: ns Premable: add missing field known_flagsIan Jackson2026-04-211-0/+1
|
* tor-netdoc: DocRelayFlags: add convenience constructorIan Jackson2026-04-211-0/+1
|
* tor-netdoc: ns Preamble: derive NetdocEncodableFieldsIan Jackson2026-04-211-0/+1
|
* tor-netdoc: ns Preamble: Use ConstructorIan Jackson2026-04-211-0/+1
|
* tor-netdoc: DocRelayFlags: rename VoteRepr to NoImplicitReprIan Jackson2026-04-211-0/+1
|
* tor-netdoc: impl NetdocEncodableFields for ProtoStatusesIan Jackson2026-04-211-0/+1
| | | | We don't need the helper struct for this.
* tor-netdoc: impl ItemValueEncodable for tor_protover::ProtocolsIan Jackson2026-04-211-0/+1
|
* tor-netdoc: impl ItemValueEncodable for NetParams<i32>Ian Jackson2026-04-211-0/+1
| | | | | | Start a new encode_impls module. The pub(super) will be used in a moment.
* tor-netdoc: ns Lifetime: derive NetdocEncodableFieldsIan Jackson2026-04-211-0/+1
|
* tor-netdoc: ns Lifetime: Use ConstructorIan Jackson2026-04-211-0/+1
|
* tor-netdoc: ConsensusMethods: derive ItemValueEncodableIan Jackson2026-04-211-0/+1
|
* tor-netdoc: Fix type of NotPresent items in ns PreambleIan Jackson2026-04-211-0/+1
|
* tor-netdoc: Implement encoding traits for Arc<T>Ian Jackson2026-04-211-0/+1
|
* tor-netdoc: Support `#[deftly(netdoc(skip))]` in itemsIan Jackson2026-04-201-0/+1
| | | | Ie for "arguments" that don't actually appear.
* tor-netdoc: Make Nickname have its own parsing error typeIan Jackson2026-04-201-0/+1
| | | | | | | | This will let us use it in more places, more sensibly. Sadly it means a lot of syntactic vinegar at many of the call sites in the old parser, which has very janky ideas about how errors should work.
* tor-netdoc: semver.md for InternetHost and HostnameIan Jackson2026-04-201-0/+1
|
* tor-netdoc: Fix slip in semver.mdIan Jackson2026-04-141-1/+1
|
* tor-netdoc: Use Transparent and derive Hash for RsaIdentity wrappersIan Jackson2026-04-141-0/+1
|
* tor-netdoc: Use Transparent for SystemTime wrappersIan Jackson2026-04-141-0/+1
|
* tor-netdoc: Use Transparent for Curve25519PublicIan Jackson2026-04-141-0/+1
|
* tor-netdoc: Provide B16U for printing hex uppercaseIan Jackson2026-04-141-1/+1
| | | | | | | Test the parsing and printing success cases. Given that the parsing implementation is just a wrapper around B16's, we don't need explicit tests for that.
* tor-netdoc: Make B16 pub and improve its APIIan Jackson2026-04-141-0/+1
| | | | | Make this a public BytesTransparent newtype like B64, implementing all the same traits etc.
* tor-netdoc: Adjust API of B64Ian Jackson2026-04-141-0/+2
| | | | | | | | Firstly, make its field pub. Secondly, make the into_array method crate-private. It has a crate-specific (albeit public) error type, The same basic effect can be achieved with methods from std on arrays and slices.
* tor-netdoc: Use BytesTransparent for FixedB64, and make it pubIan Jackson2026-04-141-0/+1
| | | | | | Make this type public. The new macro call means this type now implements many more traits.
* tor-netdoc: impl many more traits for B64, by improving Bytes TransparentIan Jackson2026-04-141-0/+1
| | | | | I think these are all the traits that a parsing/printing newtype adapter ought to implement.
* tor-netdoc: ContactInfo: semver entryIan Jackson2026-04-081-0/+1
|
* tor-netdoc: Private fields in PortRangeClara Engler2026-04-021-0/+1
| | | | Callers now have to use PortRange::new which checks the input.
* tor-netdoc: Use Curve25519Public for parsingClara Engler2026-04-021-0/+1
| | | | | | This commit removes the implementation of ItemArgumentParseable for curve25519::PublicKey in favor of using the already existing Curve25519Public, which also got beefed up slightly.
* tor-netdoc: Properly parse mutliple family-idsClara Engler2026-04-021-0/+1
| | | | | | | | | | | | | This commit fixes a bug in the microdescriptor parser to properly parse multiple family-ids. Previously, we interpreted the spec to simply contain multiple `family-ids` lines. This is wrong however. Instead, there may only be a single such line with multiple values. To fix this issues, we itnroduce a `RelayFamilyIds` type, similar to `RelayFamily`, that stores multiple `RelayFamilyId` entires in a `Vec`. Then, we just derive `ItemValueParseable` on it and win.
* tor-netdoc: Derive NetdocParseable for MicrodescClara Engler2026-04-021-0/+1
| | | | | | | | | | | | This makes it possible to parse2 micro descriptors, which will be very useful later on. For this, it makes a few changes. Most notably, it introduces a (private) field called `onion_key`, which stores an optional RSA onion key, as it serves as the introduction line for this netdoc document type. Besides, it also changes the `ed25519_id` type to the `Ed25519IdentityLine` wrapper type, although the signature of the respective getter remains the same.
* tor-netdoc: Provide ItemEncoder::text_sofar()Ian Jackson2026-04-011-0/+1
|
* tor-netdoc: Provide ItemEncoder::object() taking an ItemObjectEncodableIan Jackson2026-04-011-0/+1
|
* tor-netdoc: impl From<RsaIdentity> for the fingerprint typesIan Jackson2026-04-011-0/+1
|
* tor-netdoc: Rename `AuthCertUnverified::verify_self_signed`Ian Jackson2026-03-311-0/+1
| | | | | | | | | | | This method verifies all the signatures, and checks that the signing authority is in the provided list. Anyway, authcerts aren't really self-signed: they're a signature by KS_auth_id_rsa on KP_auth_sign_rsa. Note that there is also a `verify_selfcert` method which does only some of the checks, and has some code duplication. That will be cleaned up later.
* tor-netdoc: encoder: Rename .object() method to .object_bytesIan Jackson2026-03-311-0/+1
| | | | | | | | | | | With the introduction of the derives for document encoding, we now have a trait ItemObjectEncodable. We will want a method on ItemEncoder that takes an ItemObjectEncodable, and that should be called `object` since it's a better approach than working ad-hoc with tor_bytes::Writeable. (For example, an ItemObjectEncodable knows its own label.) So, rename `object` to `object_bytes`.
* Remove semver.md files after releaseIan Jackson2026-03-301-1/+0
|
* tor-netdoc: Fix typo in docsIan Jackson2026-03-041-1/+1
|
* tor-netdoc: Rename *Signed to *UnverifiedIan Jackson2026-03-031-0/+1
| | | | | | | | | | This was a weird name, and while working in this area it all seemed to make the docs strange. Rename it. This is quite invasive! In theory we could have the macros generate compatibility aliases, but that seems quite complex.
* release: Remove semver.md files from 2.0.0 release.Wesley Aptekar-Cassels2026-02-021-5/+0
|
* tor-netdoc: EncodedAuthCert: implementIan Jackson2026-01-151-0/+1
| | | | As per doc/dev/notes/authcert-in-consensus.md.
* tor-netdoc: Expose whole input stringIan Jackson2026-01-151-0/+1
| | | | | | | | The string so far is exposed already via whole_for_signatures. It is unusual for a doc parser to need this, but embedded documents can use this plus byte_position to get the original input text for their part of the outer document.
* tor-netdoc: Improve Keyword API slightlyIan Jackson2026-01-151-0/+1
|
* meta: Remove all semver.md files post-releaseClara Engler2026-01-131-7/+0
| | | | | Fix the conflict in tor-netdoc/semver.md by hand, including the new entries already landed since v1.9.0.
* tor-netdoc: Deprecate AuthCertBuilderIan Jackson2026-01-131-0/+1
|
* tor-netdoc: Provide AuthCertConstructorIan Jackson2026-01-131-0/+1
|
* tor-netdoc: authcert: Abolish AuthCert::sk_fingerprintIan Jackson2026-01-061-0/+1
| | | | There are no in-tree callers.
* tor-netdoc: authcert: Make key_ids return owned AuthCertKeyIdsIan Jackson2026-01-061-0/+1
| | | | | AuthCert is about to lose its copy of H(KP_auth_sign_rsa) so it needs to return an owned value.