aboutsummaryrefslogtreecommitdiff
path: root/crates/tor-netdoc
Commit message (Collapse)AuthorAgeFilesLines
...
| * tor-netdoc: Deprecate the netdoc "builder pattern"Ian Jackson2025-10-071-3/+5
| | | | | | | | | | | | | | | | | | We're going to eventually implement the traits in `src/build.rs` for the network document types. But, this feature mainly covers `doc/*build*`. That (a) isn't used in-tree (b) isn't really needed now that the fields are all pub (c) is currently marked experimental.
| * tor-netdoc: Document the `hs-client` and `hs-service` featuresIan Jackson2025-10-071-0/+7
| | | | | | | | And mention that there are experimental and undocumented features.
* | tor-netdoc: Add semver.md for parsing/printing changesIan Jackson2025-10-081-0/+4
| |
* | tor-netdoc: Explain that Ignored can't be used as an argumentIan Jackson2025-10-081-2/+5
| | | | | | | | | | | | | | | | It is FromStr (which is fine). Which emant it was ItemArgumentParseable but but it can't be Display so it can't be NormalItemArgument. This illuminates the fact that it shouldn't really be ItemArgumentParseable since we're going to want all types that are in netdoc structs to be both parseable and printable.
* | tor-netdoc: replace impl_item_argument_as_display with NormalItemArgumentIan Jackson2025-10-081-26/+8
| |
* | tor-netdoc: Narrow ItemArgument impl on `&_` to just `&str`Ian Jackson2025-10-081-2/+2
| | | | | | | | | | | | | | | | We're going to indirect the impls of `ItemArgument` in terms of `FromStr` via a blanket on `impl NormalItemArgument`. For trait coherence reasons we can't have an blanket impl on `&impl ItemArgument` any more.
* | tor-netdoc: Introduce `NormalItemArgument` impl-enabler traitIan Jackson2025-10-087-2/+43
| | | | | | | | | | This is currently used to enable `parse2::ItemArgumentParseable`. In a moment it will enable `build::ItemArgument` too.
* | tor-netdoc: parse2 poc: impl Display for several typesIan Jackson2025-10-084-3/+9
| |
* | tor-netdoc: parse2 poc: break out some constantsIan Jackson2025-10-081-3/+8
| | | | | | | | | | We'll want this for both types eventually, when we do printing at the very least.
* | tor-netdoc: impl Display for Fingerprint and Base64FingerprintIan Jackson2025-10-082-1/+17
| | | | | | | | | | | | | | | | I'm going to want this as preparation for making these things properly suitable for item arguments. One test case in parse2::poc was relying on Display of the Deref to RsaIdentity.
* | tor-netdoc: Add a test case for Base64Fingerprint parsingIan Jackson2025-10-081-0/+4
| | | | | | | | Somehow there wasn't one of these.
* | tor-netdoc: impl From<Base64Fingerprint> for RsaIdentityIan Jackson2025-10-081-1/+1
| | | | | | | | This orthogonally necessary impl seems to have been overlooked.
* | Merge branch 'parse2-prep-more' into 'main'opara2025-10-075-4/+21
|\ \ | | | | | | | | | | | | tor-netdoc: parse2: Three minor fixes and a new function See merge request tpo/core/arti!3326
| * | tor-netdoc: parse2: Make NetdocParseableFields work out of-moduleIan Jackson2025-10-061-0/+9
| | |
| * | tor-netdoc: parse2: Break out check_no_objectIan Jackson2025-10-062-1/+9
| | | | | | | | | | | | This will be useful for impls of ItemValueParseable.
| * | tor-netdoc: parse2: Fix variety ordering in a doc commentIan Jackson2025-10-061-1/+1
| | | | | | | | | | | | | | | We changed the ordering at some point. This comment seems to have been overlooked.
| * | tor-netdoc: parse2: Fix ItemValueParseable field attribute `with`Ian Jackson2025-10-062-2/+2
| | | | | | | | | | | | | | | According to the docs this is supposed to name the module, not the function. (This will be necessary when we do netdoc generation.)
* | | Merge branch '5225225/fix-fuzzing' into 'main'opara2025-10-074-28/+24
|\ \ \ | |_|/ |/| | | | | | | | fuzzing: fix up targets to compile See merge request tpo/core/arti!3284
| * | Undo change to use ns_consensus feature, fix target to not need it52252252025-10-072-3/+3
| | |
| * | fuzzing: fix up targets to compile52252252025-10-075-28/+24
| | |
* | | Merge branch 'orport-addrs' into 'main'Ian Jackson2025-10-073-10/+6
|\ \ \ | | | | | | | | | | | | | | | | Unify and tidy addrs methods from tor-linkspec and routerdescs See merge request tpo/core/arti!3300
| * | | tor-netdoc: Remove obsolete commentIan Jackson2025-10-061-2/+0
| | | | | | | | | | | | | | | | There is no longer a trait.
| * | | tor-netdoc: RouterStatus: unify `orport_addrs` and `addrs` methodsIan Jackson2025-10-063-8/+6
| |/ / | | | | | | | | | | | | | | | | | | We had two functions with different return types but identical semantics. Replace them with one function returning `impl Iterator`. Make it return owned addresses. These are small.
* | | tor-netdoc: Make rs `identity` field a Base64FingerprintIan Jackson2025-10-064-3/+4
| | | | | | | | | | | | | | | | | | | | | This will allow type-driven parsing. Don't change the type in the (now-mostly-obsolete) builder and accessors; that would seem like pointless churn.
* | | tor-netdoc: Provide Base64FingerprintIan Jackson2025-10-063-8/+24
| | | | | | | | | | | | | | | | | | | | | | | | The three other formats (!) used for representing RSA key fingerprints in netdocs were all provided with helper types, but this one was omitted. I'm going to want it.
* | | tor-netdoc: Use derive_more to derive some From implsIan Jackson2025-10-061-21/+3
|/ /
* | Merge branch 'release-1.6.0-remove-semver-md' into 'main'Ian Jackson2025-10-061-2/+0
|\ \ | | | | | | | | | | | | release: Remove old semver.md files. See merge request tpo/core/arti!3323
| * | release: Remove old semver.md files.Wesley Aptekar-Cassels2025-10-021-2/+0
| |/
* / release: Bump versions.Wesley Aptekar-Cassels2025-10-021-13/+13
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Because we've updated our MSRV, we must bump the minor version for every package. This was done as follows: cargo set-version -p arti 1.6.0 cargo set-version -p oneshot-fused-workaround 0.4.0 cargo set-version -p slotmap-careful 0.4.0 cargo set-version -p test-temp-dir 0.5.0 cargo set-version -p fslock-guard 0.4.0 cargo set-version -p hashx 0.5.0 cargo set-version -p equix 0.4.0 cargo set-version -p caret 0.7.0 cargo set-version -p fs-mistrust 0.12.0 cargo set-version -p safelog 0.6.0 cargo set-version -p retry-error 0.8.0 xargs -I P <<END cargo set-version -p P 0.35.0 tor-basic-utils tor-error tor-general-addr tor-geoip tor-rtcompat tor-rtmock tor-async-utils tor-config tor-config-path tor-rpc-connect tor-log-ratelim tor-rpcbase tor-memquota tor-units tor-llcrypto tor-bytes tor-protover tor-checkable tor-cert tor-key-forge tor-hscrypto tor-socksproto tor-linkspec tor-cell tor-proto tor-netdoc tor-consdiff tor-netdir tor-relay-selection tor-persist tor-keymgr tor-chanmgr tor-ptmgr tor-dircommon tor-guardmgr tor-circmgr tor-dirclient tor-dirmgr tor-dirserver tor-hsclient tor-hsservice tor-hsrproxy tor-relay-crypto arti-client arti-relay arti-rpcserver arti-ureq arti-rpc-client-core END
* tor-netdoc: Abolish `dangerous-expose-struct-fields`; always expose, insteadIan Jackson2025-10-018-254/+97
| | | | Fixes #2192
* Remove "doc_auto_cfg" incantation from all crates.Nick Mathewson2025-09-291-1/+1
| | | | This feature has been removed from nightly, in favor of doc_cfg.
* netdoc parse2 tests: Avoid <String as TryFrom<Vec<u8>>> (3)Ian Jackson2025-09-291-1/+1
|
* netdoc parse2 tests: Avoid <String as TryFrom<Vec<u8>>> (2) (fmt)Ian Jackson2025-09-291-2/+1
|
* netdoc parse2 tests: Avoid <String as TryFrom<Vec<u8>>> (2)Ian Jackson2025-09-291-2/+1
| | | | Should fix the minimal versions test?
* netdoc parse2 tests: Avoid <String as TryFrom<Vec<u8>>>Ian Jackson2025-09-291-1/+1
| | | | Should fix the minimal versions test?
* netdoc parse2: Remove some unneeded allowsIan Jackson2025-09-291-2/+0
|
* netdoc parse2: Fix two clippy lintsIan Jackson2025-09-292-1/+1
|
* neteoc parse2: Provide Ignored valueIan Jackson2025-09-293-1/+41
| | | | | This will be used for some bits of netdocs where dummy values now appear.
* netdoc parse2: NetdocParseableFields: suppress errors for empty typesIan Jackson2025-09-291-2/+10
|
* neteoc parse2: Import earlierIan Jackson2025-09-291-2/+3
| | | | | This is needed if we want to use these macros in `doc`, which we're going to.
* netdoc parse2: support `with` for rest arguemnts, and testIan Jackson2025-09-292-2/+18
|
* netdoc parse2: support `with` for normal arguemnts, and testIan Jackson2025-09-292-7/+11
|
* netdoc parse2: ArgumentSetMethods: take a parser functionIan Jackson2025-09-292-13/+65
| | | | We need this to support `with`.
* netdoc parse2: Support with for Item parsing, comprehensive testsIan Jackson2025-09-291-0/+64
|
* netdoc parse2: tests: NeedsWith typeIan Jackson2025-09-291-3/+55
| | | | This type will be used to test `with` attributes.
* netdoc parse2: Support with for Item parsingIan Jackson2025-09-291-2/+23
| | | | Tests will come in a moment.
* netdoc parse2: New single_item attribute, testsIan Jackson2025-09-291-6/+55
|
* netdoc parse2: New single_item attributeIan Jackson2025-09-292-2/+30
| | | | | | Many of the existing netdoc structs have items that are just the single argument. We don't want to turn them all into singleton tuples. Provide a macro feature for this instead.
* netdoc parse2: Break out ITEM_VALUE_FROM_UNPARSEDIan Jackson2025-09-291-2/+6
| | | | This is going to get more complicated.
* netdoc parse2: NetdocParseableFields: Fix default, and testIan Jackson2025-09-292-2/+9
|