summaryrefslogtreecommitdiff
path: root/crates/tor-netdoc/src
Commit message (Collapse)AuthorAgeFilesLines
* tor-netdoc: parse2: multiplicity: Remove now-obsolete trait itemsIan Jackson2025-08-261-12/+0
|
* tor-netdoc: parse2: Know that we always accumulate into Option<Field>Ian Jackson2025-08-262-2/+2
|
* tor-netdoc: parse2: Always accumulate into Option<Field> (fmt)Ian Jackson2025-08-261-1/+5
|
* tor-netdoc: parse2: Always accumulate into Option<Field>Ian Jackson2025-08-261-13/+22
|
* tor-netdoc: parse2: Break out F_EFFECTIVE_TYPEIan Jackson2025-08-261-7/+13
| | | | We're going to want to reuse this.
* tor-netdoc: parse2: Use selector_ rather than open-codingIan Jackson2025-08-261-1/+1
| | | | We're going to make this depend on $ftype differently.
* tor-netdoc: parse2: Report subdoc intro item keyword for missing itemIan Jackson2025-08-263-4/+19
| | | | This corrects the error message.
* tor-netdoc: parse2: More focused tests (error cases)Ian Jackson2025-08-261-0/+84
|
* tor-netdoc: parse2: More focused tests (success cases)Ian Jackson2025-08-262-0/+182
| | | | | The netstatus doc poc does test most of the functionality, but I want some tests of edge cases that that misses.
* tor-netdoc: parse2: Fix doctype_for_errorIan Jackson2025-08-261-3/+4
| | | | Actually report the intro item, as the docs state.
* tor-netdoc: No longer impl Sealed for RouterStatus (fmt)Ian Jackson2025-08-261-1/+1
|
* tor-netdoc: No longer impl Sealed for RouterStatusIan Jackson2025-08-263-4/+2
| | | | | We don't need this since RouterStatus no longer implements any sealed traits.
* tor-netdoc: Soften a TODOIan Jackson2025-08-261-1/+1
|
* tor-netdoc: Fix typoIan Jackson2025-08-261-1/+1
|
* tor-netdoc: Change an allow to an expectIan Jackson2025-08-261-1/+1
| | | | | (This will make the build more fragile, but it will also spot an unnecessary allow.)
* tor-netdoc: Fix some visibilitiesIan Jackson2025-08-261-6/+3
|
* tor-netdoc: Correct the headings of two modulesIan Jackson2025-08-262-2/+2
| | | | | each_variety includes votes, so is "network status documents"; each_flavor is just consensuses.
* tor-netdoc: Apply much rustfmt churnIan Jackson2025-08-265-16/+13
|
* tor-netdoc: Provide some Vote thingsIan Jackson2025-08-269-95/+109
| | | | And export *RouterStatus with the macro, and *Header.
* tor-netdoc: rs: centralise some includesIan Jackson2025-08-262-13/+8
| | | | This will allow them to be shared between each_flavor and each_variety.
* tor-netdoc: Introduce experimental ns-vote featureIan Jackson2025-08-265-2/+22
| | | | | | Now we can start actually having code to do with votes. This feature doesn't actually contain any new API surface yet.
* tor-netdoc: Move all each_variety code to each_flavorIan Jackson2025-08-269-1470/+1470
| | | | | | | The amount we're going to be able to reuse for votes is less than we might hope. This commit is just code motion.
* tor-netdoc: ns variety: Provide for flavour-only itemsIan Jackson2025-08-2610-26/+141
|
* tor-netdoc: Fix comments to refer to itemsIan Jackson2025-08-264-4/+4
| | | | It's not just types that can vary by variety.
* tor-netdoc: Fix some out-of-date commentsIan Jackson2025-08-264-4/+4
| | | | We rename the files from per_ to each_.
* tor-netdoc: Turn ConsensusHeader into VARIETY::HeaderIan Jackson2025-08-264-185/+185
| | | | It's going to need to vary when we do votes.
* tor-netdoc: Abolish ParseRouterStatus and make several things not pubIan Jackson2025-08-266-37/+13
| | | | | | | The methods in ParseRouterStatus can now be inherent. This starts a cascade of unused stuff, and stuff which doesn't need to be pub any more.
* tor-netdoc: De-duplicate RouterStatusBuilder::buildIan Jackson2025-08-264-38/+17
| | | | | This is now more obviously not needed. We should eventually remove this, or remove finish.
* tor-netdoc: Combine ConsensusRouterStatus and GenericRouterStatusIan Jackson2025-08-2611-91/+67
| | | | Now we only need one type.
* tor-netdoc: Abolish RouterStatus trait in favour of generic methodsIan Jackson2025-08-264-23/+9
| | | | | Our approach to sharing code between md and plain consensuses is now the new "variety" system, not generics.
* tor-netdoc: Remove generics from Consensus and its contentsIan Jackson2025-08-2610-70/+67
|
* tor-netdoc: No longer try to export trait FromRdStringIan Jackson2025-08-261-1/+0
| | | | | This doesn't appear in a tor-netdoc rustdoc build from arti 1.4.6. Shortly, clippy is about to start complaining that it's unreachable pub.
* tor-netdoc: netstatus: Move GenericRouterStatusIan Jackson2025-08-264-150/+151
| | | | | | More code motion. We're going to get rid of this type completely eventually.
* tor-netdoc: netstatus: Move everything variety-specificIan Jackson2025-08-2613-1059/+1087
| | | | | | | | | This is much code motion. This splits many types into two. For example, `Conensus` is now`plain::Consensus<RS>` and `md::Consensus<RS>`. We're going to get rid of the generics later in this branch.
* tor-netdoc: Make various types all pub(crate)Ian Jackson2025-08-262-25/+25
| | | | | | | | | Header and RouterStatus are going to move to a sibling module, `each_variety.rs`, and the build code has moved too. These modules will all need access to the various stuff. let's just use `pub(crate)` rather than messing about with `pub(super)` etc. It's generally just netdoc field.s
* tor-netdoc: Prepare variety modules for network status documentsIan Jackson2025-08-2612-0/+112
| | | | This is empty modules and scaffolding.
* tor-netdoc: varieties: Provide ns_use_this_varietyIan Jackson2025-08-261-0/+18
|
* tor-netdoc: Fold netstatus::CommonHeader into ConsensusHeaderIan Jackson2025-08-262-85/+50
| | | | | We're going to use ns_variety_definition_macros to support votes, rather than this.
* tor-netdoc: Provide some compatibility aliasesIan Jackson2025-08-181-0/+13
|
* tor-netdoc: Rename ns-consensus to plain-consensusIan Jackson2025-08-184-13/+13
| | | | | | ns-consensus doesn't seem to have ever been released. This is part of abolishing the use of "ns" to mean "plain".
* tor-netdoc: network status: Rename Ns* to Plain* in macro outputIan Jackson2025-08-183-17/+13
| | | | This is part of abolishing the use of "ns" to mean "plain".
* tor-netdoc: network status: Rename NS_* test data consts to PLAIN_*Ian Jackson2025-08-181-4/+4
| | | | This is part of abolishing the use of "ns" to mean "plain".
* tor-netdoc: Rename ConsensusFlavor::Ns to ConsensusFlavor::PlainIan Jackson2025-08-183-9/+9
| | | | This is part of abolishing the use of "ns" to mean "plain".
* tor-netdoc: netstatus: Replace NSCON with PLAIN in parsing rulesIan Jackson2025-08-181-5/+5
| | | | | | This is part of abolishing the use of "ns" to mean "plain". And edit a few docs lines.
* tor-netdoc: Run rustfmt againIan Jackson2025-08-182-2/+2
| | | | Not sure how this is needed now, after rebase, but whatever.
* tor-netdoc: Downgrade two TODOs re NsSomething -> PlainSomethingIan Jackson2025-08-181-2/+2
| | | | | Let's not entangle this MR with such an incompatible change. I will do this as a followup.
* tor-netdoc: varieties: Rename per_variety to each_varietyIan Jackson2025-08-183-28/+26
|
* tor-netdoc: varieties: Rename macro definition moduleIan Jackson2025-08-183-6/+5
|
* tor-netdoc: Rename "species" to "variety"Ian Jackson2025-08-186-63/+62
|
* tor-netdoc: varieties: Fix typo on doc commentIan Jackson2025-08-181-1/+1
|