| Commit message (Collapse) | Author | Age | Files | Lines |
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
| |
Rust 1.52 just came out, and there are new clippy lints to deal
with:
* It spots more cases when we could use Option::map
* It spots more cases when we could use Iterator::flatten
* When we build a struct instance, it wants us to list the fields
in the same order that the struct declares them.
|
| |
|
|
|
|
|
|
| |
These lints force us to declare our exported enums and
exhaustive-looking structs as non-exhaustive (so that we can add to
them in the future without breaking our API) or to explicitly
disable the warning for a given enum/struct (to say that we _intend_
for additions to be a breaking change).
|
| | |
|
| |
|
|
| |
Signed-off-by: David Goulet <[email protected]>
|
| |
|
|
|
|
|
|
| |
The major types are:
* You implemented Into when you should have implemented From.
* You sliced a slice when you didn't have to.
* You said Ok(x?) when you could have said x.
* You said Vec::new(); push(); push(); when you could have said vec![].
|
| |
|
|
| |
This is painful, but we shouldn't have to do it again.
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
| |
"M3" is for "milestone 3" -- my target to fix the technical debt
that I think will be bad if we ship even a pre-alpha with it.
These aren't necessarily _all_ must-resolve, but they're all
must-look-at.
Closes #15
|
| |
|
|
|
|
|
|
| |
Most of the fixes here are just removing comments that said "this
isn't technically required but I'm going to pretend it is".
I also made the "protocols" field in microdescs out of its Option<>,
since we're now requiring that.
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously our "read a bunch of this kind of document" functions had
a common problem, where they could get into an infinite loop if the
underlying "read this kind of document" function failed without
consuming any tokens.
I _think_ that this error case was unreachable (or else fuzzing
would have found it, right?), but proving that it was unreachable
was a bit fiddly, and I couldn't follow my own arguments about it.
Instead, we just store the position of the reader before we start
reading, and make sure that it has consumed at least some data. If
it hasn't, then we consume and drop a token before advancing to the
next document.
|
| | |
|
|
|
This change just gives them a more logical breakdown into parsing,
documents, and misc other types.
|