summaryrefslogtreecommitdiff
path: root/crates/tor-basic-utils/src/lib.rs
Commit message (Collapse)AuthorAgeFilesLines
* Fix name of clippy lint to unchecked_time_subtraction (2)Ian Jackson2025-11-061-2/+2
| | | | Run maint/add_warning
* tor-basic-utils: New function to generate random hostname.Nick Mathewson2025-10-071-0/+1
| | | | | | We'll be using this for x509 certificates in #2197. We might also use it for SNI/ESNI as in !198.
* 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.
* Fix a comment about Result::flattenNick Mathewson2025-08-071-2/+3
| | | | Previously this API was nightly-only; now it's in 1.89.
* tor-basic-utils: add `assert_val_impl_trait!` macroSteven Engler2025-07-171-0/+19
|
* Temporarily suppress mismatched_lifetime_syntaxes.Gabriela Moldovan2025-07-071-0/+1
| | | | See #2060.
* tor-basic-utils: standardized MSRV TODOshashcatHitman2025-04-161-1/+1
| | | | | - Part of a series of commits aimed at replacing all MSRV-related TODOs with a standardized format, which should be easier to find when the MSRV is bumped.
* tor-basic-utils: move `flatten` from tor-protoSteven Engler2025-03-251-0/+14
| | | | I also added an additional non-doc TODO comment.
* squash! Upgrade rand dependency to 0.9.Nick Mathewson2025-03-181-1/+5
| | | | - `Rng::gen_range()` has been renamed to `Rng::random_range()`
* squash! Upgrade rand dependency to 0.9.Nick Mathewson2025-03-181-6/+6
| | | | - The rand::distributions module has been renamed to rand::distr
* squash! Upgrade rand dependency to 0.9.Nick Mathewson2025-03-181-2/+2
| | | | - `rand::thread_rng()` has been deprecated and renamed to `rand::rng()`
* Always use full path to rand::thread_rng().Nick Mathewson2025-03-181-4/+2
| | | | | This is partly for consistency, and partly to facilitate a global search-and-replace.
* clippy: deny `mod_module_files`Steven Engler2025-01-061-0/+1
| | | | | | Denies 'mod.rs' files for consistency. https://rust-lang.github.io/rust-clippy/master/index.html#mod_module_files
* add_warnings, *: Allow clippy::needless_lifetimesNick Mathewson2024-12-031-0/+1
| | | | | | | | In 1.83, this warning triggers on many of our crates. We're thinking of fixing them all, but for now, we're going to disable the warning. This is part of #1765.
* tor-basic-utils: add `n_key_list` macroSteven Engler2024-09-231-0/+1
| | | | | This is based off of the `n_key_set` macro, but lets you store multiple items per key.
* byte_qty: Move to tor-basic-utilsIan Jackson2024-08-271-0/+3
| | | | Code motion of byte_qty.rs, and minimal necessary supporting changes.
* Re-run maint/add_warning.Nick Mathewson2024-05-061-2/+2
| | | | This commit is automatically generated.
* Run maint/add_warning.Nick Mathewson2024-03-131-0/+1
|
* tor-basic-utils: Provide PathExt with display_lossy() methodIan Jackson2024-03-051-0/+25
|
* deny clippy::unchecked_duration_subtractiontrinity-1686a2024-02-291-0/+1
|
* tor-basic-utils: Seal IoErrorExtIan Jackson2023-10-101-1/+9
|
* Run maint/add_warning to add lint block everywhereIan Jackson2023-08-231-0/+1
|
* Run add_warnings on all files.Nick Mathewson2023-08-041-2/+2
|
* Merge branch 'clippy-allow' into 'main'Ian Jackson2023-07-111-0/+2
|\ | | | | | | | | clippy: Allow some of our existing code patterns See merge request tpo/core/arti!1396
| * Run maint/add_warning to actually apply new lint allowsIan Jackson2023-07-101-0/+2
| |
* | rng docs: Fix two linksIan Jackson2023-07-101-2/+2
| |
* | rng ranges: Provide examples (doctests)Ian Jackson2023-07-101-0/+42
| |
* | rng ranges: Forbid use of panicky Rng::gen_rangeIan Jackson2023-07-101-0/+1
| | | | | | | | Fixes #920
* | rng ranges: Introduce gen_range_infallibleIan Jackson2023-07-101-0/+47
| | | | | | | | | | | | | | | | | | | | | | | | There are a number of places where we generate random Durations in a range which starts at zero. These call sites currently (i) have to write out Duration::ZERO or equivalent, and (ii) would have to use gen_range_checked and expect the result, even though it can be statically proven to be OK. To make this slightly smoother, provide `GenRangeInfallible` and `gen_range_infallible`.
* | rng ranges: Introduce RngExt and gen_range_checkedIan Jackson2023-07-101-0/+27
|/ | | | We will use this in many places instead of gen_range.
* Run add_warning to remove `missing_panics_doc` deny.Nick Mathewson2023-07-061-1/+0
| | | | Closes #950.
* lints: Run maint/add_warning to actually apply new lintsIan Jackson2023-06-211-0/+2
|
* tor-basic-utils: Add RangeBoundsExt trait.Gabriela Moldovan2023-05-131-0/+1
| | | | Signed-off-by: Gabriela Moldovan <[email protected]>
* impl_debug_hex: Fix syntax error in usage templateIan Jackson2023-04-111-1/+1
| | | | Corrects the doc and fixes a rustdoc warning.
* tor-basic-utils: Provide impl_debug_hexIan Jackson2023-03-311-0/+82
|
* Move functionality from tor_basic_utils to tor_async_utilsNick Mathewson2023-03-291-1/+0
| | | | | This commit is mostly code movement; I'd recommend reviewing it with git's `--color-moved` option.
* Introduce and use ends_with_ignore_ascii_caseIan Jackson2023-03-081-1/+6
| | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1056#note_2884428
* tor-basic-utils: Provide str.strip_suffix_ignore_ascii_caseIan Jackson2023-03-081-0/+44
| | | | We're going to want this for cheaply stripping ".onion" from things.
* Disable clippy::unlinlined-format-argsNick Mathewson2023-01-271-0/+1
| | | | | | | | This warning kind of snuck up on us! (See #748) For now, let's disable it. (I've cleaned it up in a couple of examples, since those are meant to be more idiomatic and user-facing.) Closes #748.
* tor-basic-utils: Provide helper for serde flexible parsingIan Jackson2022-11-211-0/+89
|
* define_accessor_trait: Allow specification of other itemsIan Jackson2022-11-031-1/+10
|
* define_accessor_trait: Allow specification of supertraitsIan Jackson2022-11-031-4/+8
|
* Run add_warnings.Nick Mathewson2022-11-031-0/+1
|
* tor-basic-utils: Provide an implementation of BinaryHeap::retainIan Jackson2022-10-271-0/+22
| | | | | | This is currently nightly-only and is blocked on an unresolved API question: https://github.com/rust-lang/rust/issues/71503
* cargo fmt to remove blank linesIan Jackson2022-10-121-1/+0
| | | | | | | Apparently cargo fmt doesn't like these, which my perl rune didn't delete. This commit is precisely the result of `cargo fmt`.
* Replace all README copies in src/lib.rs with includesIan Jackson2022-10-121-10/+1
| | | | | | | | The feature we want is `#[doc = include_str!("README.md")]`, which is stable since 1.54 and our MSRV is now 1.56. This commit is precisely the result of the following Perl rune: perl -i~ -0777 -pe 's{(^//!(?!.*\@\@).*\n)+}{#![doc = include_str!("../README.md")]\n}m' crates/*/src/lib.rs
* Include a HashSet variant that can be keyed on multiple keys.Nick Mathewson2022-10-031-0/+1
| | | | | | | | | | | Every element in the set has up to N keys, each of which may have differnt types. No value for any key may correspond to more than one element in the set. These properties can be provided, via a macro, for values of N between 1 and $BIG_ENOUGH. We'll use this to implement a type that holds HasRelayIds.
* tor-basic-utils: Provide IoErrorExt is_not_a_directory()Ian Jackson2022-08-251-0/+27
| | | | | We're going to want this functionality, which isn't in the stable stdlib.
* enable doc_auto_cfg feature on every crate when documenting for docs.rstrinity-1686a2022-08-241-0/+1
|
* New "counting filter" iterator helper in tor-basic-utils.Nick Mathewson2022-07-061-0/+1
| | | | | | | This is going to make it simpler to write the code in guardmgr (and later in circmgr) that keeps track of how many relays were rejected for what reason. The latter, in turn, should improve error messages when we're unable to pick a guard or a path.